Files
buildbroken-blog-archive/archive/wayback-html/cleancode2.html
T
2026-08-16 19:03:44 +02:00

863 lines
106 KiB
HTML
Vendored
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- saved from url=(0101)https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2 -->
<html xmlns="http://www.w3.org/1999/xhtml" class=" uisjcphy idc0_350"><head profile="http://gmpg.org/xfn/11"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script type="text/javascript" async="" src="./cleancode2_files/page.js.Download"></script><script src="./cleancode2_files/athena.js.Download" type="text/javascript"></script>
<script type="text/javascript">window.addEventListener('DOMContentLoaded',function(){var v=archive_analytics.values;v.service='wb';v.server_name='wwwb-app219.us.archive.org';v.server_ms=1203;archive_analytics.send_pageview({});});</script>
<script type="text/javascript" src="./cleancode2_files/bundle-playback.js.Download" charset="utf-8"></script>
<script type="text/javascript" src="./cleancode2_files/wombat.js.Download" charset="utf-8"></script>
<script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script>
<script type="text/javascript" src="./cleancode2_files/ruffle.js.Download"></script>
<script type="text/javascript">
__wm.init("https://web.archive.org/web");
__wm.wombat("http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2","20121009000749","https://web.archive.org/","web","/_static/",
"1349741269");
</script>
<link rel="stylesheet" type="text/css" href="./cleancode2_files/banner-styles.css">
<link rel="stylesheet" type="text/css" href="./cleancode2_files/iconochive.css">
<!-- End Wayback Rewrite JS Include -->
<title>build broken » Clean Code Teil 2</title>
<meta name="generator" content="WordPress 3.4.2">
<meta name="theme" content="Mandigo 1.41">
<link rel="stylesheet" href="./cleancode2_files/style.css" type="text/css" media="screen">
<style type="text/css">
body {
font-family: Arial, Sans-Serif;
background-color: #44484F;
}
a {
font-weight: bold;
}
.narrowcolumn .entry, .widecolumn .entry {
line-height: 1.4em;
}
.inline-widgets #wp-calendar caption, .blogname, .blogdesc {
font-family: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, Sans-Serif;
}
.blogname {
font-size: 4em;
margin-top: 15px;
}
.posttitle, #comments, #respond .title, #respond.pre27, #trackbacks {
font-family: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, Sans-Serif;
}
.commentlist li, #commentform input, #commentform textarea {
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
}
#commentform p {
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
}
.sidebars {
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
}
#page {
width: 987px;
}
#header {
background: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/header-1024.png);
height: 243px;
width: 987px;
}
#headerimg {
height: 226px;
width: 961px;
background: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/schemes/orange/images/head-1024.jpg) bottom center no-repeat;
}
#main {
background: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/bg-1024.png);
width: 957px;
}
#footer {
background: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/foot-1024.png);
}
.post {
text-align: justify;
background: #FAFAFA;
border: 1px solid #EEEEEE;
}
#footer {
width: 987px;
}
.sidebars {
background: #EEEEEE;
border: 1px solid #DDDDDD;
}
#sidebar1 .sidebars {
width: 210px;
}
#sidebar2 .sidebars {
width: 210px;
}
.entry img {
float: none;
}
.sidebars li {
list-style-image: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/schemes/orange/images/star.gif);
}
.commentlist {
}
.commentlist li {
list-style: none;
}
#wp-calendar {
margin: 0 !important; margin-top: -1.5em;
}
#wp-calendar caption {
margin-top: -1.4em;
}
/* dirty fix for the event calendar plugin */
div#wp-calendar .nav {
margin: 0;
}
/* end dirty fix */
.datestamp div {
font-family: 'Lucida Grande', 'Lucida Sans Unicode', Arial, Sans-Serif;
}
.cal3 {
}
.pages {
text-align: right;
}
.pages ul li.has_sub {
background: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/icons/bullet_arrow_right.png) no-repeat center right;
}
.head_overlay {
background: url(https://web.archive.org/web/20121009000749im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/head_overlay.png);
}
</style>
<link rel="stylesheet" href="./cleancode2_files/scheme.css" type="text/css" media="screen">
<link rel="alternate" type="application/rss+xml" title="build broken RSS Feed" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/feed/">
<link rel="pingback" href="https://blog.aztec-project.org/xmlrpc.php">
<link rel="alternate" type="application/rss+xml" title="build broken » Clean Code Teil 2 Kommentar-Feed" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/feed/">
<link rel="stylesheet" id="A2A_SHARE_SAVE-css" href="./cleancode2_files/addtoany.min.css" type="text/css" media="all">
<script type="text/javascript" src="./cleancode2_files/comment-reply.js.Download"></script>
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://blog.aztec-project.org/xmlrpc.php?rsd">
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="https://blog.aztec-project.org/wp-includes/wlwmanifest.xml">
<link rel="prev" title="scrumbut" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/03/scrumbut/">
<link rel="next" title="Design by Contract jetzt auch mit C# Teil 2" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/05/design-by-contract-teil-2/">
<link rel="canonical" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/">
<link rel="shortlink" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/?p=762">
<script type="text/javascript"><!--
var a2a_config=a2a_config||{},wpa2a={done:false,html_done:false,script_ready:false,script_load:function(){var a=document.createElement('script'),s=document.getElementsByTagName('script')[0];a.type='text/javascript';a.async=true;a.src='https://web.archive.org/web/20121009000749/http://static.addtoany.com/menu/page.js';s.parentNode.insertBefore(a,s);wpa2a.script_load=function(){};},script_onready:function(){if(a2a.type=='page'){wpa2a.script_ready=true;if(wpa2a.html_done)wpa2a.init();}},init:function(){for(var i=0,el,target,targets=wpa2a.targets,length=targets.length;i<length;i++){el=document.getElementById('wpa2a_'+(i+1));target=targets[i];a2a_config.linkname=target.title;a2a_config.linkurl=target.url;if(el)a2a.init('page',{target:el});wpa2a.done=true;}}};a2a_config.tracking_callback=['ready',wpa2a.script_onready];a2a_localize = {
Share: "Empfehlen",
Save: "Speichern",
Subscribe: "Abonnieren",
Email: "E-Mail",
Bookmark: "Bookmark",
ShowAll: "zeige alle",
ShowLess: "Zeige weniger",
FindServices: "Finden Dienstleistung(en)",
FindAnyServiceToAddTo: "Um weitere Dienste ergänzen",
PoweredBy: "Powered by",
ShareViaEmail: "per E-Mail empfehlen",
SubscribeViaEmail: "per E-Mail abonnieren",
BookmarkInYourBrowser: "Seite den Bookmarks hinzufügen",
BookmarkInstructions: "Press Ctrl+D or \u2318+D to bookmark this page",
AddToYourFavorites: "Zu Ihren Favoriten hinzufügen",
SendFromWebOrProgram: "Von E-Mail-Adresse oder E-Mail-Programm senden",
EmailProgram: "E-Mail-Programm"
};
a2a_color_main="FAFAFA";a2a_color_border="AECADB";a2a_color_link_text="FF9B2A";a2a_color_link_text_hover="FF9B2A";a2a_color_bg="FAFAFA";
//--></script>
<style type="text/css">
.ads {
position: relative;
text-align: center;
clear: both;
}
</style><meta property="og:site_name" content="build broken"><meta property="og:url" content="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2"><meta property="og:title" content="Clean Code Teil 2"><!--[if IE]>
<style type="text/css">
.addtoany_list a img{filter:alpha(opacity=70)}
.addtoany_list a:hover img,.addtoany_list a.addtoany_share_save img{filter:alpha(opacity=100)}
</style>
<![endif]-->
<script type="text/javascript" src="./cleancode2_files/jquery.js.Download"></script>
<script type="text/javascript" src="./cleancode2_files/jquery.ifixpng.js.Download"></script>
<script type="text/javascript">jQuery.noConflict();</script>
<style type="text/css">
.entry img, .entry embed, .entry object { max-width: 880px; width: expression(this.clientWidth > 880 ? 880 : true); }
.entry img { height: auto; }</style>
<meta property="fb:admins" content="1109299946">
<meta property="fb:app_id" content="134622216554391"><script charset="UTF-8" src="./cleancode2_files/de.js.Download"></script><style type="text/css">.a2a_menu, .a2a_menu *{float:none;margin:0;padding:0;height:auto;width:auto;}.a2a_menu{width: 300px;}.a2a_menu table{border-collapse:collapse;border-spacing:0;width:auto}.a2a_menu table,.a2a_menu tbody,.a2a_menu td,.a2a_menu tr{border:0;margin:0;padding:0;background-color:#FAFAFA} .a2a_menu td{vertical-align:top}.a2a_menu,.a2a_menu_inside{border-radius:16px;-webkit-border-radius:16px;-moz-border-radius:16px}.a2a_menu{display:none;z-index:9999999;position:absolute;direction:ltr;min-width:200px;background:#FAFAFA;background:rgba(250,250,250,.6);font:12px Arial,Helvetica,sans-serif;color:#000;line-height:12px;border:1px solid transparent;_border:1px solid #FAFAFA;padding:7px;vertical-align:baseline;overflow:hidden}.a2a_menu_inside{background-color:#FAFAFA;border: 1px solid #AECADB;padding:8px}.a2a_menu a span, .a2a_tabs .a2a_tab_selected span{color:#FF9B2A}.a2a_menu a:hover span, .a2a_tabs div span, .a2a_tabs a span{color:#FF9B2A}.a2a_menu a,#a2a_hist_list a,.a2a_tabs div{color:#FF9B2A;text-decoration:none;font:12px Arial,Helvetica,sans-serif;line-height:12px;height:auto;width:auto;outline:none;-moz-outline:none;border-radius:8px;-webkit-border-radius:8px;-moz-border-radius:8px}.a2a_menu a:visited,#a2a_hist_list a:visited{color:#FF9B2A}.a2a_menu a:hover,.a2a_menu a:active,.a2a_menu a.a2a_i:focus,.a2a_tabs div:hover{color:#FF9B2A;border:1px solid #AECADB;background-color:#FAFAFA;text-decoration:none}.a2a_menu span,.a2a_img{background:url(https://web.archive.org/web/20121008232106/http://static.addtoany.com/menu/icons_22.png) no-repeat;border:0;display:block;line-height:16px}.a2a_menu span.a2a_i_find{height:16px;left:5px;position:absolute;top:2px;width:16px}#a2a_menu_container{display:inline-block} #a2a_menu_container{_display:inline} .a2a_menu_title_container{margin-bottom:2px;padding:6px}.a2a_menu_find_container{position:relative;text-align:left;margin:4px 1px;padding:1px 24px 1px 0;border:1px solid #FF9B2A;border-radius:8px;-webkit-border-radius:8px;-moz-border-radius:8px}.a2a_cols_container{border-bottom-right-radius:8px;border-top-right-radius:8px}.a2a_cols_container .a2a_col1{overflow-x:hidden;overflow-y:auto;}.a2a_menu input, .a2a_menu input[type="text"]{display:block;background-image:none;box-shadow:none;line-height:100%;margin:0;overflow:hidden;padding:0;-moz-box-shadow:none;-webkit-box-shadow:none;-webkit-appearance:none} .a2a_menu_title_container input.a2a_menu_title{color:#FF9B2A;background-color:#FAFAFA;border:0;margin:0;padding:0;width:99%}.a2a_menu_find_container input.a2a_menu_find{position:relative;left:24px;color:#FF9B2A;font-size:12px;padding:2px 0;outline:0;border:0;background-color:transparent;_background-color:#FAFAFA;width:99%} .a2a_clear{clear:both} .a2a_default_style a{float:left;line-height:16px;padding:0 2px}.a2a_default_style .a2a_img{display:block;height:16px;line-height:16px;overflow:hidden;width:16px}.a2a_default_style .a2a_img, .a2a_default_style .a2a_dd{float:left}.a2a_default_style .a2a_img_text{margin-right:4px}.a2a_default_style .a2a_divider{border-left:1px solid #000;display:inline;float:left;height:16px;line-height:16px;margin:0 5px}.a2a_kit a{cursor:pointer}.a2a_nowrap{white-space:nowrap}.a2a_note{margin:0 auto;padding:9px;font-size:12px;text-align:center}.a2a_note .a2a_note_note{margin:0;color:#FF9B2A}.a2a_wide a{display:block;margin-top:3px;border:1px solid #FAFAFA;padding:3px;text-align:center}.a2a_tabs{float:left;margin:0 0 3px} .a2a_tabs a,.a2a_tabs div{margin:1px;background-color:#FAFAFA; border:1px solid #FAFAFA; font-size:11px; padding:6px 12px ; white-space:nowrap} .a2a_tabs a span, .a2a_tabs div span{display:inline-block;padding-left:20px;height:auto;width:auto} .a2a_tabs_default a span, .a2a_tabs_default div span{height:auto;max-width:99px;overflow:hidden;padding-left:20px;width:auto;_width:expression(this.clientWidth > 99? "97px" : "auto");}.a2a_tabs a, .a2a_tabs a:visited, .a2a_tabs a:hover, .a2a_tabs div, .a2a_tabs div:hover{cursor:pointer;border-bottom:1px solid #FAFAFA;color:#FF9B2A;border-bottom-left-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-right-radius:0;-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0}a.a2a_tab_selected, a.a2a_tab_selected:visited,a.a2a_tab_selected:hover,a.a2a_tab_selected:active,a.a2a_tab_selected:focus, div.a2a_tab_selected,div.a2a_tab_selected:hover{color:#FF9B2A;background-color:#FAFAFA;border:1px solid #AECADB;border-bottom:1px solid #FAFAFA}a.a2a_i{display:block;float:left;border:1px solid #FAFAFA;padding:4px 6px;text-align:left;white-space:nowrap;width:126px;}a.a2a_i span{padding-left:20px}.a2a_x_shorten a.a2a_i{width:116px}a.a2a_sss{font-weight:700}a.a2a_ind{display:inline;margin:0;padding:0} a.a2a_email_client span{display:inline-block;height:16px;line-height:16px;margin:0 2px;padding-left:0;width:16px;}a.a2a_menu_show_more_less{margin:4px 0 8px;padding:0}a.a2a_menu_show_more_less span{display:inline-block;height:14px;margin:0 auto;vertical-align:baseline;width:16px} div.a2a_menu_powered_by{background-color:#FAFAFA;font-size:9px;color:#FF9B2A;text-align:center;margin-top:4px;padding:3px;border-radius:8px;-webkit-border-radius:8px;-moz-border-radius:8px}div.a2a_menu_powered_by a,div.a2a_menu_powered_by a:visited{display:inline;font-size:9px;color:#FF9B2A}div.a2a_menu_powered_by a:hover{border:0;text-decoration:underline}iframe.a2a_shim{border:0;position:absolute;z-index:999999;}.a2a_dd img{border:0;}.a2a_ptz_notes a, .a2a_ptz_notes a:hover { background: none; border: 0; }.a2a_ptz_notes .a2a_ptz_stats { font-size: 13px; }.a2a_ptz_notes .a2a_ptz_stats span { background: none; display: inline; font-weight: bold; }.a2a_ptz_notes .a2a_ptz_desc { line-height: 14px; margin: 14px 0 21px; }.a2a_ptz_notes .a2a_ptz_claim a { background-color: #FAFAFA; border: 1px solid #FAFAFA; color: #FF9B2A; font-size: 13px; font-weight: bold; padding: 7px 21px; border-radius: 8px; }.a2a_ptz_notes .a2a_ptz_claim a:hover { background-color: #FAFAFA; border: 1px solid #AECADB; color: #FF9B2A; }.a2a_ptz_notes .a2a_ptz_login { line-height: 14px; margin: 21px 0 0; }.a2a_ptz_notes .a2a_ptz_login a:hover { text-decoration: underline; }.a2a_ptz_notes .a2a_i_lockerz { display: inline-block; margin: 20px 0 0; padding-left: 20px; height: auto; width:auto; }.a2a_i_a2a{background-position:0 0!important}.a2a_i_a2a_bw{background-position:0 -17px!important}.a2a_i_agregator{background-position:0 -34px!important}.a2a_i_aiderss{background-position:0 -51px!important}.a2a_i_aim{background-position:0 -68px!important}.a2a_i_allvoices{background-position:0 -85px!important}.a2a_i_amazon{background-position:0 -102px!important}.a2a_i_aol{background-position:0 -119px!important}.a2a_i_apple_mail{background-position:0 -136px!important}.a2a_i_arto{background-position:0 -153px!important}.a2a_i_ask{background-position:0 -170px!important}.a2a_i_backflip{background-position:0 -187px!important}.a2a_i_bebo{background-position:0 -204px!important}.a2a_i_bibsonomy{background-position:0 -221px!important}.a2a_i_bitty{background-position:0 -238px!important}.a2a_i_blinklist{background-position:0 -255px!important}.a2a_i_blogger{background-position:0 -272px!important}.a2a_i_bloglines{background-position:0 -289px!important}.a2a_i_blogmarks{background-position:0 -306px!important}.a2a_i_bookmark{background-position:0 -323px!important}.a2a_i_bookmarks_fr{background-position:0 -340px!important}.a2a_i_box{background-position:0 -357px!important}.a2a_i_buddymarks{background-position:0 -374px!important}.a2a_i_business_exchange{background-position:0 -391px!important}.a2a_i_care2{background-position:0 -408px!important}.a2a_i_chrome{background-position:0 -425px!important}.a2a_i_citeulike{background-position:0 -442px!important}.a2a_i_clear{background-position:0 -459px!important}.a2a_i_connotea{background-position:0 -476px!important}.a2a_i_current{background-position:0 -493px!important}.a2a_i_dailyme{background-position:0 -510px!important}.a2a_i_dailyrotation{background-position:0 -527px!important}.a2a_i_darr{background-position:0 -544px!important}.a2a_i_darr_wt{background-position:0 -561px!important}.a2a_i_default{background-position:0 -578px!important}.a2a_i_delicious{background-position:0 -595px!important}.a2a_i_designfloat{background-position:0 -612px!important}.a2a_i_digg{background-position:0 -629px!important}.a2a_i_diglog{background-position:0 -646px!important}.a2a_i_diigo{background-position:0 -663px!important}.a2a_i_dzone{background-position:0 -680px!important}.a2a_i_email{background-position:0 -697px!important}.a2a_i_email_bw{background-position:0 -714px!important}.a2a_i_evernote{background-position:0 -731px!important}.a2a_i_expression{background-position:0 -748px!important}.a2a_i_facebook{background-position:0 -765px!important}.a2a_i_fark{background-position:0 -782px!important}.a2a_i_faves{background-position:0 -799px!important}.a2a_i_feed{background-position:0 -816px!important}.a2a_i_feedblitz{background-position:0 -833px!important}.a2a_i_feedbucket{background-position:0 -850px!important}.a2a_i_feedmailer{background-position:0 -867px!important}.a2a_i_feedshow{background-position:0 -884px!important}.a2a_i_find{background-position:0 -901px!important}.a2a_i_fireant{background-position:0 -918px!important}.a2a_i_firefox{background-position:0 -935px!important}.a2a_i_folkd{background-position:0 -952px!important}.a2a_i_formspring{background-position:0 -969px!important}.a2a_i_friendfeed{background-position:0 -986px!important}.a2a_i_funp{background-position:0 -1003px!important}.a2a_i_furl{background-position:0 -1020px!important}.a2a_i_fwicki{background-position:0 -1036px!important}.a2a_i_gabbr{background-position:0 -1053px!important}.a2a_i_global_grind{background-position:0 -1070px!important}.a2a_i_gmail{background-position:0 -1087px!important}.a2a_i_google{background-position:0 -1104px!important}.a2a_i_google_plus{background-position:0 -1121px!important}.a2a_i_healthranker{background-position:0 -1138px!important}.a2a_i_hellotxt{background-position:0 -1155px!important}.a2a_i_hemidemi{background-position:0 -1172px!important}.a2a_i_hubdog{background-position:0 -1189px!important}.a2a_i_hugg{background-position:0 -1206px!important}.a2a_i_hyves{background-position:0 -1223px!important}.a2a_i_identica{background-position:0 -1240px!important}.a2a_i_imera{background-position:0 -1257px!important}.a2a_i_instapaper{background-position:0 -1274px!important}.a2a_i_itunes{background-position:0 -1291px!important}.a2a_i_jamespot{background-position:0 -1308px!important}.a2a_i_jots{background-position:0 -1325px!important}.a2a_i_jumptags{background-position:0 -1342px!important}.a2a_i_khabbr{background-position:0 -1359px!important}.a2a_i_kledy{background-position:0 -1376px!important}.a2a_i_klipfolio{background-position:0 -1393px!important}.a2a_i_linkagogo{background-position:0 -1410px!important}.a2a_i_linkatopia{background-position:0 -1427px!important}.a2a_i_linkedin{background-position:0 -1444px!important}.a2a_i_live{background-position:0 -1461px!important}.a2a_i_livejournal{background-position:0 -1478px!important}.a2a_i_lockerz{background-position:0 -1495px!important}.a2a_i_ma_gnolia{background-position:0 -1512px!important}.a2a_i_maple{background-position:0 -1529px!important}.a2a_i_meneame{background-position:0 -1546px!important}.a2a_i_messenger{background-position:0 -1563px!important}.a2a_i_mindbodygreen{background-position:0 -1580px!important}.a2a_i_miro{background-position:0 -1597px!important}.a2a_i_mister-wong{background-position:0 -1614px!important}.a2a_i_mixx{background-position:0 -1631px!important}.a2a_i_mobile{background-position:0 -1648px!important}.a2a_i_mozillaca{background-position:0 -1665px!important}.a2a_i_msdn{background-position:0 -1682px!important}.a2a_i_multiply{background-position:0 -1699px!important}.a2a_i_my_msn{background-position:0 -1716px!important}.a2a_i_mylinkvault{background-position:0 -1733px!important}.a2a_i_myspace{background-position:0 -1750px!important}.a2a_i_netimechannel{background-position:0 -1767px!important}.a2a_i_netlog{background-position:0 -1784px!important}.a2a_i_netvibes{background-position:0 -1801px!important}.a2a_i_netvouz{background-position:0 -1818px!important}.a2a_i_newsalloy{background-position:0 -1835px!important}.a2a_i_newscabby{background-position:0 -1852px!important}.a2a_i_newsgator{background-position:0 -1869px!important}.a2a_i_newshutch{background-position:0 -1886px!important}.a2a_i_newsisfree{background-position:0 -1903px!important}.a2a_i_newstrust{background-position:0 -1920px!important}.a2a_i_newsvine{background-position:0 -1937px!important}.a2a_i_nowpublic{background-position:0 -1954px!important}.a2a_i_oneview{background-position:0 -1971px!important}.a2a_i_openbm{background-position:0 -1988px!important}.a2a_i_orkut{background-position:0 -2005px!important}.a2a_i_outlook{background-position:0 -2022px!important}.a2a_i_pageflakes{background-position:0 -2039px!important}.a2a_i_pdf{background-position:0 -2056px!important}.a2a_i_phonefavs{background-position:0 -2073px!important}.a2a_i_ping{background-position:0 -2090px!important}.a2a_i_pinterest{background-position:0 -2107px!important}.a2a_i_plaxo{background-position:0 -2124px!important}.a2a_i_plurk{background-position:0 -2141px!important}.a2a_i_podnova{background-position:0 -2158px!important}.a2a_i_posterous{background-position:0 -2175px!important}.a2a_i_print{background-position:0 -2192px!important}.a2a_i_printfriendly{background-position:0 -2209px!important}.a2a_i_protopage{background-position:0 -2226px!important}.a2a_i_ptz{background-position:0 -2243px!important}.a2a_i_ptz_bw{background-position:0 -2260px!important}.a2a_i_pusha{background-position:0 -2277px!important}.a2a_i_rapidfeeds{background-position:0 -2294px!important}.a2a_i_read_it_later{background-position:0 -2311px!important}.a2a_i_reader{background-position:0 -2328px!important}.a2a_i_reddit{background-position:0 -2345px!important}.a2a_i_rediff{background-position:0 -2362px!important}.a2a_i_rssfwd{background-position:0 -2379px!important}.a2a_i_segnalo{background-position:0 -2396px!important}.a2a_i_share{background-position:0 -2413px!important}.a2a_i_shoutwire{background-position:0 -2430px!important}.a2a_i_simpy{background-position:0 -2447px!important}.a2a_i_sina_weibo{background-position:0 -2464px!important}.a2a_i_sitejot{background-position:0 -2481px!important}.a2a_i_skimbit{background-position:0 -2498px!important}.a2a_i_slashdot{background-position:0 -2515px!important}.a2a_i_smaknews{background-position:0 -2532px!important}.a2a_i_sodahead{background-position:0 -2549px!important}.a2a_i_sofomo{background-position:0 -2566px!important}.a2a_i_spaces{background-position:0 -2583px!important}.a2a_i_sphere{background-position:0 -2600px!important}.a2a_i_sphinn{background-position:0 -2616px!important}.a2a_i_spurl{background-position:0 -2633px!important}.a2a_i_squidoo{background-position:0 -2650px!important}.a2a_i_startaid{background-position:0 -2667px!important}.a2a_i_strands{background-position:0 -2684px!important}.a2a_i_stumbleupon{background-position:0 -2701px!important}.a2a_i_stumpedia{background-position:0 -2718px!important}.a2a_i_symbaloo{background-position:0 -2735px!important}.a2a_i_taggly{background-position:0 -2752px!important}.a2a_i_tagza{background-position:0 -2769px!important}.a2a_i_tailrank{background-position:0 -2786px!important}.a2a_i_technet{background-position:0 -2803px!important}.a2a_i_technorati{background-position:0 -2820px!important}.a2a_i_technotizie{background-position:0 -2837px!important}.a2a_i_thefreedictionary{background-position:0 -2854px!important}.a2a_i_thefreelibrary{background-position:0 -2871px!important}.a2a_i_thunderbird{background-position:0 -2888px!important}.a2a_i_tipd{background-position:0 -2905px!important}.a2a_i_toolbar_google{background-position:0 -2922px!important}.a2a_i_tuenti{background-position:0 -2939px!important}.a2a_i_tumblr{background-position:0 -2956px!important}.a2a_i_twiddla{background-position:0 -2973px!important}.a2a_i_twine{background-position:0 -2990px!important}.a2a_i_twitter{background-position:0 -3007px!important}.a2a_i_txtvox{background-position:0 -3024px!important}.a2a_i_typepad{background-position:0 -3041px!important}.a2a_i_uarr{background-position:0 -3058px!important}.a2a_i_uarr_wt{background-position:0 -3075px!important}.a2a_i_unalog{background-position:0 -3092px!important}.a2a_i_viadeo{background-position:0 -3109px!important}.a2a_i_vk{background-position:0 -3126px!important}.a2a_i_vodpod{background-position:0 -3143px!important}.a2a_i_webnews{background-position:0 -3160px!important}.a2a_i_webwag{background-position:0 -3178px!important}.a2a_i_wikio{background-position:0 -3195px!important}.a2a_i_windows_mail{background-position:0 -3212px!important}.a2a_i_wink{background-position:0 -3229px!important}.a2a_i_winksite{background-position:0 -3246px!important}.a2a_i_wists{background-position:0 -3263px!important}.a2a_i_wordpress{background-position:0 -3280px!important}.a2a_i_xerpi{background-position:0 -3297px!important}.a2a_i_xianguo{background-position:0 -3314px!important}.a2a_i_xing{background-position:0 -3331px!important}.a2a_i_yahoo{background-position:0 -3348px!important}.a2a_i_yample{background-position:0 -3365px!important}.a2a_i_yigg{background-position:0 -3382px!important}.a2a_i_yim{background-position:0 -3399px!important}.a2a_i_yoolink{background-position:0 -3416px!important}.a2a_i_youmob{background-position:0 -3433px!important}.a2a_i_zhuaxia{background-position:0 -3450px!important}.a2a_i_zune{background-position:0 -3467px!important}</style><style type="text/css">.fb_hidden{position:absolute;top:-10000px;z-index:10001}
.fb_invisible{display:none}
.fb_reset{background:none;border-spacing:0;border:0;color:#000;cursor:auto;direction:ltr;font-family:"lucida grande", tahoma, verdana, arial, sans-serif;font-size:11px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:1;margin:0;overflow:visible;padding:0;text-align:left;text-decoration:none;text-indent:0;text-shadow:none;text-transform:none;visibility:visible;white-space:normal;word-spacing:normal}
.fb_link img{border:none}
.fb_dialog{background:rgba(82, 82, 82, .7);position:absolute;top:-10000px;z-index:10001}
.fb_dialog_advanced{padding:10px;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}
.fb_dialog_content{background:#fff;color:#333}
.fb_dialog_close_icon{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yA/x/IE9JII6Z1Ys.png) no-repeat scroll 0 0 transparent;_background-image:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/y6/x/s816eWC-2sl.gif);cursor:pointer;display:block;height:15px;position:absolute;right:18px;top:17px;width:15px;top:8px\9;right:7px\9}
.fb_dialog_mobile .fb_dialog_close_icon{top:5px;left:5px;right:auto}
.fb_dialog_padding{background-color:transparent;position:absolute;width:1px;z-index:-1}
.fb_dialog_close_icon:hover{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yA/x/IE9JII6Z1Ys.png) no-repeat scroll 0 -15px transparent;_background-image:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/y6/x/s816eWC-2sl.gif)}
.fb_dialog_close_icon:active{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yA/x/IE9JII6Z1Ys.png) no-repeat scroll 0 -30px transparent;_background-image:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/y6/x/s816eWC-2sl.gif)}
.fb_dialog_loader{background-color:#f2f2f2;border:1px solid #606060;font-size:24px;padding:20px}
.fb_dialog_top_left,
.fb_dialog_top_right,
.fb_dialog_bottom_left,
.fb_dialog_bottom_right{height:10px;width:10px;overflow:hidden;position:absolute}
.fb_dialog_top_left{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yR/x/8YeTNIlTZjm.png) no-repeat 0 0;left:-10px;top:-10px}
.fb_dialog_top_right{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yR/x/8YeTNIlTZjm.png) no-repeat 0 -10px;right:-10px;top:-10px}
.fb_dialog_bottom_left{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yR/x/8YeTNIlTZjm.png) no-repeat 0 -20px;bottom:-10px;left:-10px}
.fb_dialog_bottom_right{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yR/x/8YeTNIlTZjm.png) no-repeat 0 -30px;right:-10px;bottom:-10px}
.fb_dialog_vert_left,
.fb_dialog_vert_right,
.fb_dialog_horiz_top,
.fb_dialog_horiz_bottom{position:absolute;background:#525252;filter:alpha(opacity=70);opacity:.7}
.fb_dialog_vert_left,
.fb_dialog_vert_right{width:10px;height:100%}
.fb_dialog_vert_left{margin-left:-10px}
.fb_dialog_vert_right{right:0;margin-right:-10px}
.fb_dialog_horiz_top,
.fb_dialog_horiz_bottom{width:100%;height:10px}
.fb_dialog_horiz_top{margin-top:-10px}
.fb_dialog_horiz_bottom{bottom:0;margin-bottom:-10px}
.fb_dialog_iframe{line-height:0}
.fb_dialog_content .dialog_title{background:#6d84b4;border:1px solid #3b5998;color:#fff;font-size:14px;font-weight:bold;margin:0}
.fb_dialog_content .dialog_title > span{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yD/x/Cou7n-nqK52.gif)
no-repeat 5px 50%;float:left;padding:5px 0 7px 26px}
body.fb_hidden{-webkit-transform:none;height:100%;margin:0;left:-10000px;overflow:visible;position:absolute;top:-10000px;width:100%
}
.fb_dialog.fb_dialog_mobile.loading{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yc/x/3rhSv5V8j3o.gif)
white no-repeat 50% 50%;min-height:100%;min-width:100%;overflow:hidden;position:absolute;top:0;z-index:10001}
.fb_dialog.fb_dialog_mobile.loading.centered{max-height:590px;min-height:590px;max-width:500px;min-width:500px}
#fb-root #fb_dialog_ipad_overlay{background:rgba(0, 0, 0, .45);position:absolute;left:0;top:0;width:100%;min-height:100%;z-index:10000}
#fb-root #fb_dialog_ipad_overlay.hidden{display:none}
.fb_dialog.fb_dialog_mobile.loading iframe{visibility:hidden}
.fb_dialog_content .dialog_header{-webkit-box-shadow:white 0 1px 1px -1px inset;background:-webkit-gradient(linear, 0 0, 0 100%, from(#738ABA), to(#2C4987));border-bottom:1px solid;border-color:#1d4088;color:#fff;font:14px Helvetica, sans-serif;font-weight:bold;text-overflow:ellipsis;text-shadow:rgba(0, 30, 84, .296875) 0 -1px 0;vertical-align:middle;white-space:nowrap}
.fb_dialog_content .dialog_header table{-webkit-font-smoothing:subpixel-antialiased;height:43px;width:100%
}
.fb_dialog_content .dialog_header td.header_left{font-size:12px;padding-left:5px;vertical-align:middle;width:60px
}
.fb_dialog_content .dialog_header td.header_right{font-size:12px;padding-right:5px;vertical-align:middle;width:60px
}
.fb_dialog_content .touchable_button{background:-webkit-gradient(linear, 0 0, 0 100%, from(#4966A6),
color-stop(0.5, #355492), to(#2A4887));border:1px solid #29447e;-webkit-background-clip:padding-box;-webkit-border-radius:3px;-webkit-box-shadow:rgba(0, 0, 0, .117188) 0 1px 1px inset,
rgba(255, 255, 255, .167969) 0 1px 0;display:inline-block;margin-top:3px;max-width:85px;line-height:18px;padding:4px 12px;position:relative}
.fb_dialog_content .dialog_header .touchable_button input{border:none;background:none;color:#fff;font:12px Helvetica, sans-serif;font-weight:bold;margin:2px -12px;padding:2px 6px 3px 6px;text-shadow:rgba(0, 30, 84, .296875) 0 -1px 0}
.fb_dialog_content .dialog_header .header_center{color:#fff;font-size:16px;font-weight:bold;line-height:18px;text-align:center;vertical-align:middle}
.fb_dialog_content .dialog_content{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yJ/x/jKEcVPZFk-2.gif) no-repeat 50% 50%;border:1px solid #555;border-bottom:0;border-top:0;height:150px}
.fb_dialog_content .dialog_footer{background:#f2f2f2;border:1px solid #555;border-top-color:#ccc;height:40px}
#fb_dialog_loader_close{float:left}
.fb_dialog.fb_dialog_mobile .fb_dialog_close_button{text-shadow:rgba(0, 30, 84, .296875) 0 -1px 0}
.fb_dialog.fb_dialog_mobile .fb_dialog_close_icon{visibility:hidden}
.fb_iframe_widget{position:relative;display:-moz-inline-block;display:inline-block}
.fb_iframe_widget iframe{position:absolute}
.fb_iframe_widget_lift{z-index:1}
.fb_iframe_widget span{position:relative;display:inline-block;vertical-align:text-bottom;text-align:justify}
.fb_hide_iframes iframe{position:relative;left:-10000px}
.fb_iframe_widget_loader{position:relative;display:inline-block}
.fb_iframe_widget_fluid{display:inline}
.fb_iframe_widget_loader iframe{min-height:32px;z-index:2;zoom:1}
.fb_iframe_widget_loader .FB_Loader{background:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yJ/x/jKEcVPZFk-2.gif) no-repeat;height:32px;width:32px;margin-left:-16px;position:absolute;left:50%;z-index:4}
.fb_button_simple,
.fb_button_simple_rtl{background-image:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yH/x/eIpbnVKI9lR.png);background-repeat:no-repeat;cursor:pointer;outline:none;text-decoration:none}
.fb_button_simple_rtl{background-position:right 0}
.fb_button_simple .fb_button_text{margin:0 0 0 20px;padding-bottom:1px}
.fb_button_simple_rtl .fb_button_text{margin:0 10px 0 0}
a.fb_button_simple:hover .fb_button_text,
a.fb_button_simple_rtl:hover .fb_button_text,
.fb_button_simple:hover .fb_button_text,
.fb_button_simple_rtl:hover .fb_button_text{text-decoration:underline}
.fb_button,
.fb_button_rtl{background:#29447e url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yl/x/FGFbc80dUKj.png);background-repeat:no-repeat;cursor:pointer;display:inline-block;padding:0 0 0 1px;text-decoration:none;outline:none}
.fb_button .fb_button_text,
.fb_button_rtl .fb_button_text{background:#5f78ab url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yl/x/FGFbc80dUKj.png);border-top:solid 1px #879ac0;border-bottom:solid 1px #1a356e;color:#fff;display:block;font-family:"lucida grande",tahoma,verdana,arial,sans-serif;font-weight:bold;padding:2px 6px 3px 6px;margin:1px 1px 0 21px;text-shadow:none}
a.fb_button,
a.fb_button_rtl,
.fb_button,
.fb_button_rtl{text-decoration:none}
a.fb_button:active .fb_button_text,
a.fb_button_rtl:active .fb_button_text,
.fb_button:active .fb_button_text,
.fb_button_rtl:active .fb_button_text{border-bottom:solid 1px #29447e;border-top:solid 1px #45619d;background:#4f6aa3;text-shadow:none}
.fb_button_xlarge,
.fb_button_xlarge_rtl{background-position:left -60px;font-size:24px;line-height:30px}
.fb_button_xlarge .fb_button_text{padding:3px 8px 3px 12px;margin-left:38px}
a.fb_button_xlarge:active{background-position:left -99px}
.fb_button_xlarge_rtl{background-position:right -268px}
.fb_button_xlarge_rtl .fb_button_text{padding:3px 8px 3px 12px;margin-right:39px}
a.fb_button_xlarge_rtl:active{background-position:right -307px}
.fb_button_large,
.fb_button_large_rtl{background-position:left -138px;font-size:13px;line-height:16px}
.fb_button_large .fb_button_text{margin-left:24px;padding:2px 6px 4px 6px}
a.fb_button_large:active{background-position:left -163px}
.fb_button_large_rtl{background-position:right -346px}
.fb_button_large_rtl .fb_button_text{margin-right:25px}
a.fb_button_large_rtl:active{background-position:right -371px}
.fb_button_medium,
.fb_button_medium_rtl{background-position:left -188px;font-size:11px;line-height:14px}
a.fb_button_medium:active{background-position:left -210px}
.fb_button_medium_rtl{background-position:right -396px}
.fb_button_text_rtl,
.fb_button_medium_rtl .fb_button_text{padding:2px 6px 3px 6px;margin-right:22px}
a.fb_button_medium_rtl:active{background-position:right -418px}
.fb_button_small,
.fb_button_small_rtl{background-position:left -232px;font-size:10px;line-height:10px}
.fb_button_small .fb_button_text{padding:2px 6px 3px;margin-left:17px}
a.fb_button_small:active,
.fb_button_small:active{background-position:left -250px}
.fb_button_small_rtl{background-position:right -440px}
.fb_button_small_rtl .fb_button_text{padding:2px 6px;margin-right:18px}
a.fb_button_small_rtl:active{background-position:right -458px}
.fb_share_count_wrapper{position:relative;float:left}
.fb_share_count{background:#b0b9ec none repeat scroll 0 0;color:#333;font-family:"lucida grande", tahoma, verdana, arial, sans-serif;text-align:center}
.fb_share_count_inner{background:#e8ebf2;display:block}
.fb_share_count_right{margin-left:-1px;display:inline-block}
.fb_share_count_right .fb_share_count_inner{border-top:solid 1px #e8ebf2;border-bottom:solid 1px #b0b9ec;margin:1px 1px 0 1px;font-size:10px;line-height:10px;padding:2px 6px 3px;font-weight:bold}
.fb_share_count_top{display:block;letter-spacing:-1px;line-height:34px;margin-bottom:7px;font-size:22px;border:solid 1px #b0b9ec}
.fb_share_count_nub_top{border:none;display:block;position:absolute;left:7px;top:35px;margin:0;padding:0;width:6px;height:7px;background-repeat:no-repeat;background-image:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yP/x/bSOHtKbCGYI.png)}
.fb_share_count_nub_right{border:none;display:inline-block;padding:0;width:5px;height:10px;background-repeat:no-repeat;background-image:url(https://web.archive.org/web/20121009000749/http://static.ak.fbcdn.net/rsrc.php/v2/yL/x/i_oIVTKMYsL.png);vertical-align:top;background-position:right 5px;z-index:10;left:2px;margin:0 2px 0 0;position:relative}
.fb_share_no_count{display:none}
.fb_share_size_Small .fb_share_count_right .fb_share_count_inner{font-size:10px}
.fb_share_size_Medium .fb_share_count_right .fb_share_count_inner{font-size:11px;padding:2px 6px 3px;letter-spacing:-1px;line-height:14px}
.fb_share_size_Large .fb_share_count_right .fb_share_count_inner{font-size:13px;line-height:16px;padding:2px 6px 4px;font-weight:normal;letter-spacing:-1px}
.fb_share_count_hidden .fb_share_count_nub_top,
.fb_share_count_hidden .fb_share_count_top,
.fb_share_count_hidden .fb_share_count_nub_right,
.fb_share_count_hidden .fb_share_count_right{visibility:hidden}
.fb_connect_bar_container div,
.fb_connect_bar_container span,
.fb_connect_bar_container a,
.fb_connect_bar_container img,
.fb_connect_bar_container strong{background:none;border-spacing:0;border:0;direction:ltr;font-style:normal;font-variant:normal;letter-spacing:normal;line-height:1;margin:0;overflow:visible;padding:0;text-align:left;text-decoration:none;text-indent:0;text-shadow:none;text-transform:none;visibility:visible;white-space:normal;word-spacing:normal;vertical-align:baseline}
.fb_connect_bar_container{position:fixed;left:0 !important;right:0 !important;height:42px !important;padding:0 25px !important;margin:0 !important;vertical-align:middle !important;border-bottom:1px solid #333 !important;background:#3b5998 !important;z-index:99999999 !important;overflow:hidden !important}
.fb_connect_bar_container_ie6{position:absolute;top:expression(document.compatMode=="CSS1Compat"? document.documentElement.scrollTop+"px":body.scrollTop+"px")}
.fb_connect_bar{position:relative;margin:auto;height:100%;width:100%;padding:6px 0 0 0 !important;background:none;color:#fff !important;font-family:"lucida grande", tahoma, verdana, arial, sans-serif !important;font-size:13px !important;font-style:normal !important;font-variant:normal !important;font-weight:normal !important;letter-spacing:normal !important;line-height:1 !important;text-decoration:none !important;text-indent:0 !important;text-shadow:none !important;text-transform:none !important;white-space:normal !important;word-spacing:normal !important}
.fb_connect_bar a:hover{color:#fff}
.fb_connect_bar .fb_profile img{height:30px;width:30px;vertical-align:middle;margin:0 6px 5px 0}
.fb_connect_bar div a,
.fb_connect_bar span,
.fb_connect_bar span a{color:#bac6da;font-size:11px;text-decoration:none}
.fb_connect_bar .fb_buttons{float:right;margin-top:7px}
.fb_edge_widget_with_comment{position:relative;*z-index:1000}
.fb_edge_widget_with_comment span.fb_edge_comment_widget{position:absolute}
.fb_edge_widget_with_comment span.fb_send_button_form_widget{z-index:1}
.fb_edge_widget_with_comment span.fb_send_button_form_widget .FB_Loader{left:0;top:1px;margin-top:6px;margin-left:0;background-position:50% 50%;background-color:#fff;height:150px;width:394px;border:1px #666 solid;border-bottom:2px solid #283e6c;z-index:1}
.fb_edge_widget_with_comment span.fb_send_button_form_widget.dark .FB_Loader{background-color:#000;border-bottom:2px solid #ccc}
.fb_edge_widget_with_comment span.fb_send_button_form_widget.siderender
.FB_Loader{margin-top:0}
.fbpluginrecommendationsbarleft,
.fbpluginrecommendationsbarright{position:fixed !important;bottom:0;z-index:999}
/* @noflip */
.fbpluginrecommendationsbarleft{left:10px}
/* @noflip */
.fbpluginrecommendationsbarright{right:10px}
</style></head>
<body><iframe id="a2apage_sm_ifr" height="1" width="1" transparency="true" allowtransparency="true" frameborder="0" src="./cleancode2_files/sm9.html" style="border: 0px; left: 0px; top: 0px; position: absolute; z-index: 100000;" allow="autoplay &#39;self&#39;; fullscreen &#39;self&#39;" data-ruffle-polyfilled=""></iframe><div style="position: static;"><div id="a2apage_dropdown" class="a2a_menu" onmouseover="a2a.onMouseOver_stay()" onmouseout="a2a.onMouseOut_delay()"><div class="a2a_menu_inside"><div id="a2apage_title_container" class="a2a_menu_title_container" style="display:none"><input id="a2apage_title" class="a2a_menu_title"></div><div class="a2apage_wide a2a_wide"><div class="a2a_tabs a2a_tabs_default"><div id="a2apage_DEFAULT" class="a2a_tab_selected" style="margin-right:1px" onclick="return a2a.tabs.open(&#39;DEFAULT&#39;)"><span class="a2a_i_a2a">Empfehlen</span></div></div><div class="a2a_tabs"><div title="per E-Mail empfehlen" id="a2apage_EMAIL" style="margin-right:1px" onclick="return a2a.tabs.open(&#39;EMAIL&#39;)"><span class="a2a_i_email_bw">E-Mail</span></div></div><div class="a2a_tabs"><div onclick="a2a.ptz()" title="Earn PTZ for sharing" id="a2apage_PTZ" style="margin-left:1px;display:none"><span class="a2a_i_ptz_bw">Earn</span></div></div></div><div class="a2a_clear"></div><div id="a2apage_find_container" class="a2a_menu_find_container"><input id="a2apage_find" class="a2a_menu_find" type="text" onclick="a2a.focus_find()" onkeyup="a2a.do_find()" autocomplete="off" onfocus="a2a[&#39;page&#39;].find_focused=true;a2a.onMouseOver_stay()" title="Um weitere Dienste ergänzen"><span id="a2apage_find_icon" class="a2a_i_find" onclick="a2a.focus_find()"></span></div><div id="a2apage_cols_container" class="a2a_cols_container"><div class="a2a_col1" id="a2apage_col1"><a id="a2apage_facebook" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_facebook">Facebook</span></a><a id="a2apage_twitter" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_twitter">Twitter</span></a><a id="a2apage_google_plus" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_google_plus">Google+</span></a><a id="a2apage_lockerz_grab" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_lockerz">Lockerz Grab</span></a><a id="a2apage_delicious" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_delicious">Delicious</span></a><a id="a2apage_digg" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_digg">Digg</span></a><a id="a2apage_google_bookmarks" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_google">Google Bookmarks</span></a><a id="a2apage_myspace" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_myspace">MySpace</span></a><a id="a2apage_stumbleupon" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_stumbleupon">StumbleUpon</span></a><a id="a2apage_reddit" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_reddit">Reddit</span></a><a id="a2apage_live" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_messenger">Messenger</span></a><a id="a2apage_vodpod" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_vodpod">Vodpod</span></a><a id="a2apage_yahoo_bookmarks" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_yahoo">Yahoo Bookmarks</span></a><a id="a2apage_bebo" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_bebo">Bebo</span></a><a id="a2apage_mister_wong" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_mister-wong">Mister-Wong</span></a><a id="a2apage_wordpress" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_wordpress">WordPress</span></a><a id="a2apage_google_reader" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_reader">Google Reader</span></a><a id="a2apage_orkut" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_orkut">Orkut</span></a><a id="a2apage_xing" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_xing">XING</span></a><a id="a2apage_buffer" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_default">Buffer</span></a><a id="a2apage_evernote" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_evernote">Evernote</span></a><a id="a2apage_netvibes_share" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_netvibes">Netvibes Share</span></a><a id="a2apage_strands" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_strands">Strands</span></a><a id="a2apage_posterous" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_posterous">Posterous</span></a><a id="a2apage_business_exchange" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_business_exchange">Business Exchange</span></a><a id="a2apage_arto" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_arto">Arto</span></a><a id="a2apage_tipd" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_tipd">Tipd</span></a><a id="a2apage_smaknews" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_smaknews">SmakNews</span></a><a id="a2apage_plurk" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_plurk">Plurk</span></a><a id="a2apage_aim" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_aim">AIM</span></a><a id="a2apage_yahoo_messenger" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_yim">Yahoo Messenger</span></a><a id="a2apage_identi_ca" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_identica">Identi.ca</span></a><a id="a2apage_mozillaca" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_mozillaca">Mozillaca</span></a><a id="a2apage_blogger_post" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_blogger">Blogger Post</span></a><a id="a2apage_typepad_post" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_typepad">TypePad Post</span></a><a id="a2apage_box_net" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_box">Box.net</span></a><a id="a2apage_kindle_it" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_default">Kindle It</span></a><a id="a2apage_pinterest" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_pinterest">Pinterest</span></a><a id="a2apage_netlog" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_netlog">Netlog</span></a><a id="a2apage_technorati_favorites" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_technorati">Technorati Favorites</span></a><a id="a2apage_citeulike" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_citeulike">CiteULike</span></a><a id="a2apage_jumptags" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_jumptags">Jumptags</span></a><a id="a2apage_hemidemi" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_hemidemi">Hemidemi</span></a><a id="a2apage_funp" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_funp">FunP</span></a><a id="a2apage_instapaper" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_instapaper">Instapaper</span></a><a id="a2apage_phonefavs" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_phonefavs">PhoneFavs</span></a><a id="a2apage_xerpi" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_xerpi">Xerpi</span></a><a id="a2apage_netvouz" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_netvouz">Netvouz</span></a><a id="a2apage_wink" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_wink">Wink</span></a><a id="a2apage_diigo" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_diigo">Diigo</span></a><a id="a2apage_bibsonomy" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_bibsonomy">BibSonomy</span></a><a id="a2apage_blogmarks" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_blogmarks">BlogMarks</span></a><a id="a2apage_tailrank" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_tailrank">Tailrank</span></a><a id="a2apage_startaid" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_startaid">StartAid</span></a><a id="a2apage_kledy" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_kledy">Kledy</span></a><a id="a2apage_khabbr" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_khabbr">Khabbr</span></a><a id="a2apage_meneame" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_meneame">Meneame</span></a><a id="a2apage_yoolink" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_yoolink">Yoolink</span></a><a id="a2apage_bookmarks_fr" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_bookmarks_fr">Bookmarks.fr</span></a><a id="a2apage_technotizie" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_technotizie">Technotizie</span></a><a id="a2apage_newsvine" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_newsvine">NewsVine</span></a><a id="a2apage_multiply" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_multiply">Multiply</span></a><a id="a2apage_friendfeed" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_friendfeed">FriendFeed</span></a><a id="a2apage_plaxo_pulse" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_plaxo">Plaxo Pulse</span></a><a id="a2apage_ping" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_ping">Ping</span></a><a id="a2apage_squidoo" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_squidoo">Squidoo</span></a><a id="a2apage_protopage_bookmarks" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_protopage">Protopage Bookmarks</span></a><a id="a2apage_blinklist" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_blinklist">Blinklist</span></a><a id="a2apage_faves" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_faves">Faves</span></a><a id="a2apage_yigg" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_yigg">YiGG</span></a><a id="a2apage_webnews" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_webnews">Webnews</span></a><a id="a2apage_segnalo" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_segnalo">Segnalo</span></a><a id="a2apage_pusha" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_pusha">Pusha</span></a><a id="a2apage_youmob" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_youmob">YouMob</span></a><a id="a2apage_slashdot" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_slashdot">Slashdot</span></a><a id="a2apage_fark" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_fark">Fark</span></a><a id="a2apage_allvoices" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_allvoices">Allvoices</span></a><a id="a2apage_jamespot" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_jamespot">Jamespot</span></a><a id="a2apage_imera_brazil" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_imera">Imera Brazil</span></a><a id="a2apage_twiddla" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_twiddla">Twiddla</span></a><a id="a2apage_linkagogo" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_linkagogo">LinkaGoGo</span></a><a id="a2apage_unalog" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_unalog">unalog</span></a><a id="a2apage_hugg" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_hugg">Hugg</span></a><a id="a2apage_diglog" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_diglog">Diglog</span></a><a id="a2apage_nowpublic" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_nowpublic">NowPublic</span></a><a id="a2apage_tumblr" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_tumblr">Tumblr</span></a><a id="a2apage_livejournal" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_livejournal">LiveJournal</span></a><a id="a2apage_current" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_current">Current</span></a><a id="a2apage_hellotxt" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_hellotxt">HelloTxt</span></a><a id="a2apage_spurl" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_spurl">Spurl</span></a><a id="a2apage_yample" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_yample">Yample</span></a><a id="a2apage_oneview" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_oneview">Oneview</span></a><a id="a2apage_linkatopia" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_linkatopia">Linkatopia</span></a><a id="a2apage_simpy" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_simpy">Simpy</span></a><a id="a2apage_linkedin" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_linkedin">LinkedIn</span></a><a id="a2apage_buddymarks" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_buddymarks">BuddyMarks</span></a><a id="a2apage_ask_com_mystuff" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_ask">Ask.com MyStuff</span></a><a id="a2apage_viadeo" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_viadeo">Viadeo</span></a><a id="a2apage_maple" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_maple">Maple</span></a><a id="a2apage_wists" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_wists">Wists</span></a><a id="a2apage_connotea" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_connotea">Connotea</span></a><a id="a2apage_backflip" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_backflip">Backflip</span></a><a id="a2apage_mylinkvault" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_mylinkvault">MyLinkVault</span></a><a id="a2apage_sitejot" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_sitejot">SiteJot</span></a><a id="a2apage_sphinn" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_sphinn">Sphinn</span></a><a id="a2apage_dzone" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_dzone">DZone</span></a><a id="a2apage_care2_news" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_care2">Care2 News</span></a><a id="a2apage_hyves" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_hyves">Hyves</span></a><a id="a2apage_sphere" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_sphere">Sphere</span></a><a id="a2apage_bitty_browser" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_bitty">Bitty Browser</span></a><a id="a2apage_gabbr" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_gabbr">Gabbr</span></a><a id="a2apage_symbaloo_feeds" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_symbaloo">Symbaloo Feeds</span></a><a id="a2apage_tagza" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_tagza">Tagza</span></a><a id="a2apage_folkd" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_folkd">Folkd</span></a><a id="a2apage_newstrust" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_newstrust">NewsTrust</span></a><a id="a2apage_amazon_wish_list" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_amazon">Amazon Wish List</span></a><a id="a2apage_printfriendly" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_printfriendly">PrintFriendly</span></a><a id="a2apage_read_it_later" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_read_it_later">Read It Later</span></a><a id="a2apage_tuenti" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_tuenti">Tuenti</span></a><a id="a2apage_email" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_email">Email</span></a><a id="a2apage_rediff" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank" style="display: none;"><span class="a2a_i_rediff">Rediff MyPage</span></a></div><div id="a2apage_2_col1" style="display:none"><a id="a2apage_google_gmail" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_gmail">Google Gmail</span></a><a id="a2apage_yahoo_mail" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_yahoo">Yahoo Mail</span></a><a id="a2apage_hotmail" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_live">Hotmail</span></a><a id="a2apage_aol_mail" rel="nofollow" class="a2a_i" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_aol">AOL Mail</span></a><a id="a2apage_any_email" rel="nofollow" class="a2a_i a2a_emailer" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target="_blank"><span class="a2a_i_email">Any email</span></a><a id="a2apage_email_client" rel="nofollow" class="a2a_i a2a_emailer a2a_email_client" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/" target=""><span class="a2a_i_outlook">&nbsp;</span><span class="a2a_i_windows_mail">&nbsp;</span><span class="a2a_i_apple_mail">&nbsp;</span><span class="a2a_i_thunderbird">&nbsp;</span></a></div><div class="a2a_clear"></div></div><div id="a2apage_note_PTZ" class="a2a_note" style="display:none"></div><div class="a2apage_wide a2a_wide"><a href="javascript:void(0)" id="a2apage_show_more_less" class="a2a_menu_show_more_less" onclick="return a2a.show_more_less(0)" onmouseover="img=this.firstChild;if(a2a.c.color_arrow_hover==&#39;fff&#39;){if(img.className.indexOf(&#39;_wt&#39;)==-1)img.className+=&#39;_wt&#39;}else img.className=img.className.replace(/_wt/,&#39;&#39;)" onmouseout="img=this.firstChild;if(a2a.c.color_arrow==&#39;fff&#39;){if(img.className.indexOf(&#39;_wt&#39;)==-1)img.className+=&#39;_wt&#39;}else img.className=img.className.replace(/_wt/,&#39;&#39;)" title="zeige alle"><span class="a2a_i_darr"></span></a></div><div class="a2a_menu_powered_by" id="a2apage_powered_by" onmouseover="if(this.innerHTML!=this.orig&amp;&amp;!window.opera)this.innerHTML=this.orig;this.style.textAlign=&#39;center&#39;">By <a href="https://web.archive.org/web/20121008232106/http://share.lockerz.com/" target="_blank" title="Share Buttons">Lockerz</a></div></div></div></div><!-- BEGIN WAYBACK TOOLBAR INSERT -->
<script>__wm.rw(0);</script>
<div id="wm-ipp-base" lang="en" style="display: block; direction: ltr;"><template shadowrootmode="closed"><div id="wm-ipp" style="position:fixed;left:0;top:0;right:0;" class="">
<div id="donato" style="position:relative;width:100%;">
<div id="donato-base">
<iframe id="donato-if" src="https://archive.org/includes/donate.php?as_page=1&amp;platform=wb&amp;referer=https%3A//web.archive.org/web/20121009000749/http%3A//blog.aztec-project.org/2009/11/04/clean-code-teil-2" scrolling="no" frameborder="0" style="width:100%; height:100%">
</iframe>
</div>
</div><div id="wm-ipp-inside">
<div id="wm-toolbar" style="position:relative;display:flex;flex-flow:row nowrap;justify-content:space-between;">
<div id="wm-logo" style="/*width:110px;*/padding-top:12px;">
<a href="https://web.archive.org/web/" title="Wayback Machine home page"><img src="https://web.archive.org/_static/images/toolbar/wayback-toolbar-logo-200.png" srcset="/_static/images/toolbar/wayback-toolbar-logo-100.png, /_static/images/toolbar/wayback-toolbar-logo-150.png 1.5x, /_static/images/toolbar/wayback-toolbar-logo-200.png 2x" alt="Wayback Machine" style="width:100px" border="0"></a>
</div>
<div class="c" style="display:flex;flex-flow:column nowrap;justify-content:space-between;flex:1;">
<form class="u" style="display:flex;flex-direction:row;flex-wrap:nowrap;" target="_top" method="get" action="https://web.archive.org/web/submit" name="wmtb" id="wmtb"><input type="text" name="url" id="wmtbURL" value="http://blog.aztec-project.org/2009/11/04/clean-code-teil-2" onfocus="this.focus();this.select();" style="flex:1;" autocomplete="off"><input type="hidden" name="type" value="replay"><input type="hidden" name="date" value="20121009000749"><input type="submit" value="Go">
</form>
<div style="display:flex;flex-flow:row nowrap;align-items:flex-end;">
<div class="s" id="wm-nav-captures" style="flex:1;"><a class="t" href="https://web.archive.org/web/*/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2" title="See a list of every capture for this URL">9 captures</a><div class="r" title="Timespan for captures of this URL">7 Nov 2009 - 1 Mar 2021</div></div>
<div class="k">
<a href="https://web.archive.org/web/20021201000000/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2" id="wm-graph-anchor">
<div id="wm-ipp-sparkline" title="Explore captures for this URL" style="position: relative">
<canvas id="wm-sparkline-canvas" width="750" height="27" border="0"></canvas>
<div class="yt" style="display: none; width: 25px; height: 27px; left: 150px;"></div><div class="mt" style="display: none; width: 2px; height: 27px; left: 173px;"></div></div>
</a>
</div>
</div>
</div>
<div class="n">
<table>
<tbody>
<!-- NEXT/PREV MONTH NAV AND MONTH INDICATOR -->
<tr class="m">
<td class="b" nowrap="nowrap"><a href="https://web.archive.org/web/20100314102533/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2/" title="14 Mar 2010"><strong>Mar</strong></a></td>
<td class="c" id="displayMonthEl" title="You are here: 00:07:49 Oct 09, 2012">Oct</td>
<td class="f" nowrap="nowrap"><a href="https://web.archive.org/web/20130923064019/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/" title="23 Sep 2013"><strong>Sep</strong></a></td>
</tr>
<!-- NEXT/PREV CAPTURE NAV AND DAY OF MONTH INDICATOR -->
<tr class="d">
<td class="b" nowrap="nowrap"><a href="https://web.archive.org/web/20100314102533/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2/" title="10:25:33 Mar 14, 2010"><img src="https://web.archive.org/_static/images/toolbar/wm_tb_prv_on.png" alt="Previous capture" width="14" height="16" border="0"></a></td>
<td class="c" id="displayDayEl" style="width:34px;font-size:22px;white-space:nowrap;" title="You are here: 00:07:49 Oct 09, 2012">09</td>
<td class="f" nowrap="nowrap"><a href="https://web.archive.org/web/20130923064019/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/" title="06:40:19 Sep 23, 2013"><img src="https://web.archive.org/_static/images/toolbar/wm_tb_nxt_on.png" alt="Next capture" width="14" height="16" border="0"></a></td>
</tr>
<!-- NEXT/PREV YEAR NAV AND YEAR INDICATOR -->
<tr class="y">
<td class="b" nowrap="nowrap"><a href="https://web.archive.org/web/20100314102533/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2/" title="14 Mar 2010"><strong>2010</strong></a></td>
<td class="c" id="displayYearEl" title="You are here: 00:07:49 Oct 09, 2012">2012</td>
<td class="f" nowrap="nowrap"><a href="https://web.archive.org/web/20140804121006/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2" title="04 Aug 2014"><strong>2014</strong></a></td>
</tr>
</tbody>
</table>
</div>
<div class="r" style="display:flex;flex-flow:column nowrap;align-items:flex-end;justify-content:space-between;">
<div id="wm-btns" style="text-align:right;height:23px;">
<span class="xxs">
<div id="wm-save-snapshot-success">success</div>
<div id="wm-save-snapshot-fail">fail</div>
<a id="wm-save-snapshot-open" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#" title="Share via My Web Archive" style="display: none;">
<span class="iconochive-web"></span>
</a>
<a href="https://archive.org/account/login.php" title="Sign In" id="wm-sign-in" style="display: inline-block;">
<span class="iconochive-person"></span>
</a>
<span id="wm-save-snapshot-in-progress" class="iconochive-web" style="display: none;"></span>
</span>
<a class="xxs" href="http://faq.web.archive.org/" title="Get some help using the Wayback Machine" style="top:-6px;"><span class="iconochive-question" style="color:rgb(87,186,244);font-size:160%;"></span></a>
<a id="wm-tb-close" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#close" style="top:-2px;" title="Close the toolbar"><span class="iconochive-remove-circle" style="color:#888888;font-size:240%;"></span></a>
</div>
<div id="wm-share" class="xxs">
<a href="https://web.archive.org/web/20121009000749/http://web.archive.org/screenshot/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2" id="wm-screenshot" title="screenshot" style="visibility: hidden;">
<span class="wm-icon-screen-shot"></span>
</a>
<a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#" id="wm-video" title="video">
<span class="iconochive-movies"></span>
</a>
<a id="wm-share-facebook" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#" data-url="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2" title="Share on Facebook" style="margin-right:5px;" target="_blank"><span class="iconochive-facebook" style="color:#3b5998;font-size:160%;"></span></a>
<a id="wm-share-twitter" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#" data-url="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2" title="Share on Twitter" style="margin-right:5px;" target="_blank"><span class="iconochive-twitter" style="color:#1dcaff;font-size:160%;"></span></a>
</div>
<div style="padding-right:2px;text-align:right;white-space:nowrap;">
<a id="wm-expand" class="wm-btn wm-closed" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#expand"><span id="wm-expand-icon" class="iconochive-down-solid"></span> <span class="xxs" style="font-size:80%;">About this capture</span></a>
</div>
</div>
</div>
<div id="wm-capinfo" style="border-top:1px solid #777;display:none; overflow: hidden">
<div id="wm-capinfo-notice" source="api"></div>
<div id="wm-capinfo-collected-by">
<div style="background-color:#666;color:#fff;font-weight:bold;text-align:center">COLLECTED BY</div>
<div style="padding:3px;position:relative" id="wm-collected-by-content">
<div style="display:inline-block;vertical-align:top;width:50%;">
<span class="c-logo" style="background-image:url(https://archive.org/services/img/alexacrawls);"></span>
Organization: <a style="color:#33f;" href="https://archive.org/details/alexacrawls" target="_new"><span class="wm-title">Alexa Crawls</span></a>
<div style="max-height:75px;overflow:hidden;position:relative;">
<div style="position:absolute;top:0;left:0;width:100%;height:75px;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0) 90%,rgba(255,255,255,255) 100%);"></div>
Starting in 1996, <a href="http://www.alexa.com/">Alexa Internet</a> has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to the <a href="http://web.archive.org/">Wayback Machine</a> after an embargo period.
</div>
</div>
<div style="display:inline-block;vertical-align:top;width:49%;">
<span class="c-logo" style="background-image:url(https://archive.org/services/img/alexacrawls)"></span>
<div>Collection: <a style="color:#33f;" href="https://archive.org/details/alexacrawls" target="_new"><span class="wm-title">Alexa Crawls</span></a></div>
<div style="max-height:75px;overflow:hidden;position:relative;">
<div style="position:absolute;top:0;left:0;width:100%;height:75px;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0) 90%,rgba(255,255,255,255) 100%);"></div>
Starting in 1996, <a href="http://www.alexa.com/">Alexa Internet</a> has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to the <a href="http://web.archive.org/">Wayback Machine</a> after an embargo period.
</div>
</div>
</div>
</div>
<div id="wm-capinfo-timestamps">
<div style="background-color:#666;color:#fff;font-weight:bold;text-align:center" title="Timestamps for the elements of this page">TIMESTAMPS</div>
<div>
<div id="wm-capresources" style="margin:0 5px 5px 5px;max-height:250px;overflow-y:scroll !important"></div>
<div id="wm-capresources-loading" style="text-align:left;margin:0 20px 5px 5px;display:none"><img src="https://web.archive.org/_static/images/loading.gif" alt="loading"></div>
</div>
</div>
</div></div></div><link rel="stylesheet" type="text/css" href="./cleancode2_files/banner-styles.css"><link rel="stylesheet" type="text/css" href="./cleancode2_files/iconochive.css"><div class="wb-autocomplete-suggestions "></div></template>
</div><div id="wm-ipp-print">The Wayback Machine - https://web.archive.org/web/20121009000749/http://blog.aztec-project.org:80/2009/11/04/clean-code-teil-2</div>
<script type="text/javascript">//<![CDATA[
__wm.bt(750,27,25,2,"web","http://blog.aztec-project.org/2009/11/04/clean-code-teil-2","20121009000749",1996,"/_static/",["/_static/css/banner-styles.css?v=S1zqJCYt","/_static/css/iconochive.css?v=3PDvdIFv"], false);
__wm.rw(1);
//]]></script>
<!-- END WAYBACK TOOLBAR INSERT -->
<div id="page">
<div id="header" class="png">
<div id="headerimg">
<h1 class="blogname" id="blogname"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/">build broken</a></h1><span class="blogname text-stroke-br">build broken</span><span class="blogname text-stroke-bl">build broken</span><span class="blogname text-stroke-tr">build broken</span><span class="blogname text-stroke-tl">build broken</span>
<h6 class="blogdesc" id="blogdesc">but we can fix it! Sometimes :)</h6><span class="blogdesc text-stroke-br">but we can fix it! Sometimes :)</span><span class="blogdesc text-stroke-bl">but we can fix it! Sometimes :)</span><span class="blogdesc text-stroke-tr">but we can fix it! Sometimes :)</span><span class="blogdesc text-stroke-tl">but we can fix it! Sometimes :)</span>
<ul class="pages png head_overlay">
<li class="page_item"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/">Home</a></li>
<li class="page_item page-item-2"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/about/">About</a></li>
</ul>
</div>
</div>
<div id="main" class="png">
<table>
<tbody><tr>
<td id="content" class="widecolumn">
<div class="navigation">
<div class="alignleft">«&nbsp;<a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/03/scrumbut/" rel="prev">scrumbut</a></div>
<div class="alignright"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/05/design-by-contract-teil-2/" rel="next">Design by Contract jetzt auch mit C# Teil 2</a>&nbsp;»</div>
</div>
<div class="post" id="post-762">
<div class="postinfo">
<div class="datestamp">
<div>
<span class="cal1 cal1x">Nov</span>
<span class="cal2">04</span>
<span class="cal3">2009</span>
</div>
</div>
<span class="switch-post">
<a href="javascript:toggleSidebars();" class="switch-sidebars"><img src="./cleancode2_files/bullet_sidebars_hide.png" alt="" class="png"></a><a href="javascript:togglePost(762);" id="switch-post-762"><img src="./cleancode2_files/bullet_toggle_minus.png" alt="" class="png"></a>
</span>
<h2 class="posttitle"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/" rel="bookmark" title="Permanent Link: Clean Code Teil 2">Clean Code Teil 2</a></h2>
<small>
Geschrieben von <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/author/ase/" title="Artikel von Andreas Seebauer">Andreas Seebauer</a> in <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/category/clean-code-developing/" title="Alle Artikel in Clean Code Developing ansehen" rel="category tag">Clean Code Developing</a>, tags: <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/tag/buch/" rel="tag">Buch</a>, <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/tag/ccd/" rel="tag">CCD</a>, <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/tag/clean-code/" rel="tag">Clean Code</a>, <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/tag/coding/" rel="tag">Coding</a> </small>
</div>
<div class="entry">
<p>Endlich ist es geschafft. Ich habe das Buch “Clean Code” von Robert C. Martin a.k.a. Uncle Bob durchgelesen. Nach dem <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/08/11/clean-code-teil-1/" target="_blank">ersten Teil</a> hier nun die versprochene Fortsetzung meiner Zusammenfassung:</p>
<p><strong>10 Classes</strong></p>
<p>Die erste Regel von Klassen lautet: Sie sollten klein sein.<br>
Die zweite Regel von Klassen lautet: Sie sollten noch kleiner sein als das.</p>
<p>Klassen sollten eine hohe Kohäsion haben.<br>
Kohäsion ist ein Maß dafür, wie stark die Methoden und Daten einer Klasse miteinander zu tun haben. Zur Verdeutlichung:<br>
Eine Klasse, in der jede Membervariable von jeder Methode der Klasse verwendet wird, ist maximal kohäsiv.</p>
<p>Bei Klassen sollten folgende Prinzipien beachtet werden:</p>
<ul>
<li>Das <strong>Single Responsibility Principle</strong> (<strong>SRP</strong>), welches besagt:</li>
<p>Eine Klasse oder ein Modul sollte nur einen Grund haben sich zu ändern. Eine Klasse sollte sich nur um <strong>EINE</strong> Sache kümmern.</p>
<li>Das <strong>Open Close Principle</strong> (<strong>OCP</strong>), welches besagt:</li>
<p>Klassen sollten offen für Erweiterungen sein, aber geschlossen für Modifikation.</p>
<li>Das <strong>Dependency Inversion Priniciple</strong> (<strong>DIP</strong>), welches besagt:</li>
<p>Klassen sollten von Abstraktionen abhängen und nicht von konkreten Klassen.</p></ul>
<p><strong>11 Systems</strong></p>
<p>Separiere Konstruktion von Benutzung.<br>
Realisiert werden kann das durch Dependency Injection.</p>
<p>Dependency Injection = Klassen bekommen ihre Abhängigkeiten von außen über den Konstruktor oder Setter übergeben. Dieses Pattern unterstützt das SRP, da sich die Klasse nicht mehr um das Instanzieren dieser Abhängigkeiten kümmern muss. Realisiert wird das ganze über Inversion of Control Container wie Windsor, Spring und wie sie alle heißen. Bei diesen Containern werden die Abhängigkeiten einmalig definiert, so dass man sich bei der Instanzierung nicht mehr darum kümmern muss.</p>
<p>Wenn Objekte zu einer bestimmten Zeit erstellt werden müssen, sollten Factories verwendet werden.</p>
<p>Systeme werden nicht von heute auf morgen gebaut. Sie werden nach und nach ausgebaut. Um sicherzustellen, dass dabei noch alles funktioniert, gibt es TDD, Refaktorisieren und Separation of Concerns.</p>
<p><strong>12 Emergence</strong></p>
<p>Viele Leute sagen, dass Kent Becks 4 “Rules of Simple Design” einem sehr helfen, gut designte Software zu erstellen.</p>
<p>Kent Beck sagt:<br>
ein Design ist „simple“, wenn:</p>
<ul>
<li> alle Tests durchlaufen</li>
<li> kein doppelter Code vorhanden ist</li>
<li> wenn es die Absicht des Programmierers ausdrückt</li>
<li> die Anzahl von Klassen und Methoden minimiert sind</li>
</ul>
<p>in der Reihenfolge.</p>
<p><strong>13 Concurrency</strong></p>
<p>In Multithread-Anwendungen bekommt man schon bei minimaler Anforderung ein Problem mit der Komplexität. Da mit steigender Komplexität auch die Fehleranfälligkeit steigt, gibt es ein paar Prinzipien, die diese minimieren können:</p>
<p>Die Concurrency Defense Principles</p>
<ul>
<li><strong>Single Responsibility Principle</strong></li>
<p>Trenne multithreaded Code von nicht-multithreaded Code</p>
<li><strong>Limit the Scope of Data</strong></li>
<p>Man sollte den Bereich, in dem multithreaded Code verwendet wird, möglichst klein halten.</p>
<li><strong>Use Copies of Data</strong></li>
<p>Verschiedene Threads sollten nicht mit demselben Objekt arbeiten. Wenn möglich sollte mit Kopien von diesem Objekt gearbeitet werden.</p>
<li><strong>Independence</strong></li>
<p>Threads sollten so unabhängig wie möglich sein</p>
<li><strong>Library</strong></li>
<p>Natürlich sollte man die Bibliothek, die man für Multithread-Anwendungen verwendet, sehr gut kennen.</p></ul>
<p><strong>14 Successive Refinement</strong></p>
<p>Um Clean Code schreiben zu können, muss man erst Dirty Code schreiben und ihn dann bereinigen.</p>
<p>Einer der besten Wege, ein Programm zu ruinieren, ist, massive Änderungen an der Struktur vorzunehmen, um das Programm zu verbessern. Um das zu verhindern, nutzt man die Disziplinen von TDD. Eines der zentralen Doktrinen dieses Ansatzes ist es, das System zu jeder Zeit lauffähig zu halten. Mit TDD ist es also nicht erlaubt eine Veränderung am System vorzunehmen, die das System bricht.</p>
<p><strong>15 JUnit Internals</strong></p>
<p>JUnit Internals halt… (Kapitel überlesen)</p>
<p><strong>16 Refactoring SerialDate</strong></p>
<p>War mir eindeutig zu Java-lastig… (Kapitel überlesen)</p>
<p><strong>17 Smells and Heuristics</strong></p>
<p>In diesem Kapitel zeigt Uncle Bob eine Liste von Smells und wie man sie beseitigen kann. Er lobt das Buch “Refactoring” von Martin Fowler. Dieses Buch steht eh schon ganz oben auf meiner To-do-Liste. Das werde ich also demnächst angehen.</p>
<p><strong>Zusammenfassung</strong></p>
<p>An dieser Stelle ein Dank an mein Entwicklerteam, dass ich das Buch so lange in Beschlag nehmen durfte <img src="./cleancode2_files/icon_smile.gif" alt=":)" class="wp-smiley"> (Teil 2 ging irgendwie zäher). Einen großen Dank auch an <a href="https://web.archive.org/web/20121009000749/http://www.aspnetzone.de/blogs/peterbucher/" target="_blank">Peter Bucher</a> und <a href="https://web.archive.org/web/20121009000749/http://weblog.drescher-hackel.de/" target="_blank">Rene Drescher-Hackel</a> für ihre Ergänzungen bzw. Einwände. Man darf sicherlich nicht alles so ganz ernst nehmen und man kann es auch übertreiben (siehe Pyramiden etc.). Natürlich sollte man nicht blind durch die Welt laufen, sondern auch Dinge hinterfragen, aber man muss sagen, dass die Punkte von <a href="https://web.archive.org/web/20121009000749/http://www.clean-code-developer.de/" target="_blank">CCD</a> (das ja auf diesem Buch beruht) durchaus plausibel sind. Ich denke schon, dass <a href="https://web.archive.org/web/20121009000749/http://www.clean-code-developer.de/" target="_blank">CCD</a> unerfahrenen aber auch erfahrenen Entwicklern einen SOLIDen Weg zeigt, den man gehen kann und der sogar schon gepflastert ist. Man kann sich natürlich auch mit der Machete durch dichten Dschungel schlagen, was natürlich cool ist <img src="./cleancode2_files/icon_smile.gif" alt=":)" class="wp-smiley"> aber halt wesentlich langsamer. Es sei denn man ist Chuck Norris.</p>
<p><a href="https://web.archive.org/web/20121009000749/http://dotnet-kicks.de/kick/?url=http%3a%2f%2fblog.aztec-project.org%2f2009%2f11%2f04%2fclean-code-teil-2%2f"><img src="./cleancode2_files/KickItImageGenerator.ashx" alt="kick it on dotnet-kicks.de" border="0"></a></p>
<div id="end_post_ad" class="ads"><script type="text/javascript">
google_ad_client = "pub-3501825337837456";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_color_border = "#FFFFFF";
google_color_bg = "#FFFFFF";
google_color_link = "#FF9B2A";
google_color_text = "#000000";
google_color_url = "#FF9B2A";
</script><script type="text/javascript" src="./cleancode2_files/show_ads.js.Download"></script><ins style="display:inline-table;border:none;height:60px;margin:0;padding:0;position:relative;visibility:visible;width:468px"><ins id="aswift_0_anchor" style="display:block;border:none;height:60px;margin:0;padding:0;position:relative;visibility:visible;width:468px"><iframe allowtransparency="true" frameborder="0" height="60" hspace="0" marginwidth="0" marginheight="0" onload="var i=this.id,s=window.google_iframe_oncopy,H=s&amp;&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){i+=&#39;.call&#39;;setTimeout(h,0)}else if(h.match){i+=&#39;.nav&#39;;w.location.replace(h)}s.log&amp;&amp;s.log.push(i)}" scrolling="no" vspace="0" width="468" id="aswift_0" name="aswift_0" style="left:0;position:absolute;top:0;" data-ruffle-polyfilled="" src="./cleancode2_files/saved_resource.html"></iframe></ins></ins></div><div class="addtoany_share_save_container"><div class="a2a_kit a2a_target addtoany_list" id="wpa2a_1"><a class="a2a_dd addtoany_share_save" href="https://web.archive.org/web/20121008232106/http://www.addtoany.com/share_save#url=https%3A%2F%2Fweb.archive.org%2Fweb%2F20121009000749%2Fhttp%3A%2F%2Fblog.aztec-project.org%2F2009%2F11%2F04%2Fclean-code-teil-2%2F&amp;title=Clean%20Code%20Teil%202&amp;description="><img src="./cleancode2_files/share_save_171_16.png" width="171" height="16" alt="Share"></a></div>
<script type="text/javascript"><!--
wpa2a.script_load();
//--></script>
</div><fb:like href="http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/" layout="standard" show_faces="true" width="450" action="like" colorscheme="light" style="margin-top:5px;" class="fb_edge_widget_with_comment fb_iframe_widget" fb-xfbml-state="rendered"><span style="height: 80px; width: 450px;"><iframe id="f23ec31b9a057a6" name="f1aff3a392b796f" scrolling="no" title="Like this content on Facebook." class="fb_ltr" style="border: none; overflow: hidden; height: 80px; width: 450px;" allow="autoplay &#39;self&#39;; fullscreen &#39;self&#39;" src="./cleancode2_files/like.html"></iframe></span></fb:like>
<p class="postmetadata alt clear">
<small>
Geschrieben am Mittwoch, 4. November 2009 um 4:16 pm und ist zu finden in <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/category/clean-code-developing/" title="Alle Artikel in Clean Code Developing ansehen" rel="category tag">Clean Code Developing</a>. Du kannst die Antworten zu diesem Thema verfolgen unter <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/feed/">RSS 2.0</a> feed. Du kannst <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#respond">Antwort</a>, oder <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/trackback/" rel="trackback">trackback</a> von deiner Seite.
</small>
</p>
</div>
</div>
<div id="comments">
Eine Antwort zu “Clean Code Teil 2”
</div>
<ol class="commentlist" id="commentlist">
<li class="pingback even thread-even depth-1 alt" id="comment-85">
<div id="div-comment-85" class="comment-body">
<span class="switch-post"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#"><img src="./cleancode2_files/bullet_toggle_minus(1).png" alt="" class="png"></a></span><div class="comment-author vcard">
<cite class="fn"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/08/11/clean-code-teil-1/" rel="external nofollow" class="url">build broken » Clean Code Teil 1</a></cite> <span class="says">sagt:</span> </div>
<div class="comment-meta commentmetadata"><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/comment-page-1/#comment-85">
November 4, 2009 um 4:20 pm</a> </div>
<p>[...] Teil 2 gibt es hier [...]</p>
<div class="reply">
</div>
</div>
</li>
<li style="display: none;">&nbsp;</li>
</ol>
<div class="navigation">
<div class="alignleft"></div>
<div class="alignright"></div>
</div>
<div id="respond">
<div class="title">Hinterlasse einen Kommentar</div>
<div class="cancel-comment-reply">
<small><a rel="nofollow" id="cancel-comment-reply-link" href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2#respond" style="display:none;">Click here to cancel reply</a></small>
</div>
<form action="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/wp-comments-post.php" method="post" id="commentform">
<input type="hidden" name="comment_post_ID" value="762" id="comment_post_ID">
<input type="hidden" name="comment_parent" id="comment_parent" value="0">
<p><input type="text" name="author" id="author" value="" size="22" tabindex="1">
<label for="author"><small>Name (benötigt)</small></label></p>
<p><input type="text" name="email" id="email" value="" size="22" tabindex="2">
<label for="email"><small>E-mail (wird nicht veröffentlicht) (benötigt)</small></label></p>
<p><input type="text" name="url" id="url" value="" size="22" tabindex="3">
<label for="url"><small>Webseite</small></label></p>
<p><textarea name="comment" id="comment" cols="100%" rows="10" tabindex="4"></textarea></p>
<p>
<input name="submit" type="submit" id="submit" tabindex="5" value="Kommentar absenden">
<input type="hidden" name="comment_post_ID" value="762">
</p>
<p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="6cccaa2aac"></p>
<p style="clear: both;" class="subscribe-to-comments">
<input type="checkbox" name="subscribe" id="subscribe" value="subscribe" style="width: auto;">
<label for="subscribe">Notify me of followup comments via e-mail</label>
</p>
<br class="clear">
</form>
</div>
<script type="text/javascript">
<!-- // <![CDATA[
jQuery(document).ready(function() {
if (jQuery('#trackbacklist li').length == 1)
jQuery('#trackbacks, #trackbacklist').hide();
jQuery('li.comment>div>*').filter(':not(.comment-author, .comment-meta)').wrap('<div class="comment"><\/div>');
jQuery('.comment-author').before('<span class="switch-post"><a href="#"><img src="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/wp-content/themes/mandigo/images/icons/bullet_toggle_minus.png" alt="" class="png" /><\/a><\/span>');
});
// ]]> -->
</script>
</td>
<script src="./cleancode2_files/Loader_37820.js.Download" type="text/javascript"></script></tr>
</tbody></table>
</div>
<div id="footer" class="png">
<p>
Unterstützt von <a href="https://web.archive.org/web/20121009000749/http://wordpress.org/">WordPress</a>, <a href="https://web.archive.org/web/20121009000749/http://www.onehertz.com/portfolio/wordpress/" target="_blank" title="WordPress themes">Mandigo theme</a> by tom.
<br><a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/feed/"><img src="./cleancode2_files/rss_s.gif" alt=""> Einträge (RSS)</a>
und <a href="https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/comments/feed/"><img src="./cleancode2_files/rss_s.gif" alt=""> Kommentare (RSS)</a>.
</p>
</div>
</div>
<script type="text/javascript"><!--
wpa2a.targets=[
{title:'Clean Code Teil 2',url:'https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/2009/11/04/clean-code-teil-2/'}];
wpa2a.html_done=true;if(wpa2a.script_ready&&!wpa2a.done)wpa2a.init();wpa2a.script_load();
//--></script>
<div id="fb-root" class=" fb_reset"><script src="./cleancode2_files/all.js.Download" async=""></script><div style="position: absolute; top: -10000px; height: 0px; width: 0px;"><div><iframe id="fb_xdm_frame_http" name="fb_xdm_frame_http" src="./cleancode2_files/xd_arbiter.html" allow="autoplay &#39;self&#39;; fullscreen &#39;self&#39;" data-ruffle-polyfilled=""></iframe><iframe id="fb_xdm_frame_https" name="fb_xdm_frame_https" src="./cleancode2_files/xd_arbiter(1).html" allow="autoplay &#39;self&#39;; fullscreen &#39;self&#39;" data-ruffle-polyfilled=""></iframe></div><div></div></div></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '',
status : true,
cookie : true,
xfbml : true
});
};
(function() {
var e = document.createElement('script');
e.src = document.location.protocol + '//web.archive.org/web/20121009000749/http://connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
</script>
<script type="text/javascript">
<!-- // <![CDATA[
jQuery(document).ready(function() {
jQuery('#rssicon, #searchsubmit').hover(
function() { this.src = this.src.replace('.gif','_hover.gif'); },
function() { this.src = this.src.replace('_hover.gif','.gif'); }
);
jQuery('.entry img[align=left]' ).addClass('alignleft' );
jQuery('.entry img[align=right]').addClass('alignright');
if (jQuery.browser.msie) {
if (/^[56]/.test(jQuery.browser.version)) {
jQuery.ifixpng('https://web.archive.org/web/20121009000749/http://blog.aztec-project.org/wp-content/themes/mandigo/images/1x1.gif');
jQuery('body, .png').ifixpng();
jQuery('.commentlist.pre27 .avatar').height(36);
}
}
jQuery('p:has(.dropcap)').append('<br class="clear"/>');
togglePost = function(id) {
if (!id) return;
icon = jQuery('#switch-post-'+ id +' img');
icon.attr('src', /minus/.test(icon.attr('src')) ? icon.attr('src').replace('minus', 'plus') : icon.attr('src').replace('plus', 'minus'));
jQuery('#post-'+ id +' .entry').animate({ height: 'toggle', opacity: 'toggle' }, 1000);
}
jQuery('.switch-post img').bind('click', function() {
id = jQuery(this).parents('li').attr('id').replace(/[^\d]+-/, '');
icon = jQuery('#comment-'+ id +' .switch-post img');
src = icon.attr('src');
icon.attr('src', /minus/.test(src) ? src.replace('minus', 'plus') : src.replace('plus', 'minus'));
jQuery('#comment-'+ id +' div.comment').animate({ height: 'toggle', opacity: 'toggle' }, 1000);
return false;
});
toggleSidebars = function() {
icon = jQuery('.switch-sidebars img');
icon.attr('src', /hide/.test(icon.attr('src')) ? icon.attr('src').replace('hide', 'show') : icon.attr('src').replace('show', 'hide'));
jQuery('.sidebars').animate({ width: 'toggle', height: 'toggle', padding: 'toggle', border: 'toggle' }, 1000);
}
jQuery('.widgettitle, .linkcat *:first, .wpg2blockwidget h3').click(function() {
jQuery(this).siblings().animate({ height: 'toggle', opacity: 'toggle' }, 1000);
}).css({cursor: 'n-resize'});
jQuery.each(['tl','tr','bl','br'],function() {
jQuery('#blogname').after('<span class="blogname text-stroke-'+ this +'">'+ jQuery('#blogname a').html() +'<\/span>');
jQuery('#blogdesc').after('<span class="blogdesc text-stroke-'+ this +'">'+ jQuery('#blogdesc' ).html() +'<\/span>');
});
jQuery('#header .page_item:has(ul)').addClass('has_sub, png');
jQuery('#header .page_item').hover(
function() {
ul = jQuery(this).find('>ul');
if (ul.hasClass('sliding')) return;
a = jQuery(this).find('>a');
if (jQuery(this).parent().hasClass('pages')) {
y = a.position().top + a.height();
x = a.position().left + a.width() - ul.width();
}
else {
y = jQuery(this).position().top - 5;
x = jQuery(this).parent().width();
}
jQuery(this)
.find('>ul')
.css({left:x, top:y})
.addClass('sliding')
.slideDown(300, function() { jQuery(this).removeClass('sliding'); });
},
function() {
jQuery(this)
.find('>ul')
.addClass('sliding')
.slideUp(800, function() { jQuery(this).removeClass('sliding').hide(); });
}
);
jQuery('.commentlist li:even').addClass('alt');
});
// ]]> -->
</script>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://web.archive.org/web/20121009000749/https://ssl." : "https://web.archive.org/web/20121009000749/http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script><script src="./cleancode2_files/ga.js.Download" type="text/javascript"></script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-9511047-1"); pageTracker._trackPageview(); } catch(err) {}</script>
<div data-lastpass-root="" style="position: absolute !important; top: 0px !important; left: 0px !important; height: 0px !important; width: 0px !important;"><template shadowrootmode="closed"><div style="position: absolute; height: 100vh; width: 100vw; z-index: 2147483647; border-radius: 4px; top: 0px; left: 0px; max-height: 0px; max-width: 280px; min-width: auto;"><iframe data-lastpass-infield="true" allow="clipboard-write" src="chrome-extension://hdokiejnpimakedhajhdlcegeplioahd/webclient-infield.html" style="border: none; height: 100%; width: 100%;"></iframe></div></template></div></body></html>