Files
buildbroken-blog-archive/archive/wayback-html/clean-code-developer-yellow-brick-road.html
2026-08-16 19:03:44 +02:00

565 lines
36 KiB
HTML
Vendored
Raw Permalink 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=(0106)https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/ -->
<html xmlns="http://www.w3.org/1999/xhtml" class=" kdfdvfck idc0_350"><head profile="http://gmpg.org/xfn/11"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script src="./clean-code-developer-yellow-brick-road_files/athena.js.Download" type="592d31962d7ef6f404e4c747-text/javascript"></script>
<script type="592d31962d7ef6f404e4c747-text/javascript">window.addEventListener('DOMContentLoaded',function(){var v=archive_analytics.values;v.service='wb';v.server_name='wwwb-app218.us.archive.org';v.server_ms=387;archive_analytics.send_pageview({});});</script>
<script type="592d31962d7ef6f404e4c747-text/javascript" src="./clean-code-developer-yellow-brick-road_files/bundle-playback.js.Download" charset="utf-8"></script>
<script type="592d31962d7ef6f404e4c747-text/javascript" src="./clean-code-developer-yellow-brick-road_files/wombat.js.Download" charset="utf-8"></script>
<script type="592d31962d7ef6f404e4c747-text/javascript">window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script>
<script type="592d31962d7ef6f404e4c747-text/javascript" src="./clean-code-developer-yellow-brick-road_files/ruffle.js.Download"></script>
<script type="592d31962d7ef6f404e4c747-text/javascript">
__wm.init("https://web.archive.org/web");
__wm.wombat("http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/","20091119203536","https://web.archive.org/","web","/_static/",
"1258662936");
</script>
<link rel="stylesheet" type="text/css" href="./clean-code-developer-yellow-brick-road_files/banner-styles.css">
<link rel="stylesheet" type="text/css" href="./clean-code-developer-yellow-brick-road_files/iconochive.css">
<!-- End Wayback Rewrite JS Include -->
<title>build broken » Clean Code Developer The Yellow Brick Road of the Coder</title>
<meta name="generator" content="WordPress 2.8.6">
<meta name="theme" content="Mandigo 1.41">
<link rel="stylesheet" href="./clean-code-developer-yellow-brick-road_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/20091119203536im_/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/20091119203536im_/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/20091119203536im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/bg-1024.png);
width: 957px;
}
#footer {
background: url(https://web.archive.org/web/20091119203536im_/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/20091119203536im_/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/20091119203536im_/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/20091119203536im_/http://blog.aztec-project.org/wp-content/themes/mandigo/images/head_overlay.png);
}
</style>
<link rel="stylesheet" href="./clean-code-developer-yellow-brick-road_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/20091119203536/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 Developer The Yellow Brick Road of the Coder Kommentar Feed" href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/feed/">
<script type="592d31962d7ef6f404e4c747-text/javascript" src="./clean-code-developer-yellow-brick-road_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="index" title="build broken" href="https://blog.aztec-project.org/">
<link rel="start" title="Umsetzung des Plug-In-Patterns" href="https://blog.aztec-project.org/2009/06/05/umsetzung-des-plug-in-patterns/">
<link rel="prev" title="Bericht zum Open Space Süd 2009" href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/13/bericht-zum-open-space-sud-2009/">
<link rel="next" title="Clean Code Teil 1" href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/08/11/clean-code-teil-1/">
<meta name="generator" content="WordPress 2.8.6">
<script type="592d31962d7ef6f404e4c747-text/javascript" src="./clean-code-developer-yellow-brick-road_files/jquery.js.Download"></script>
<script type="592d31962d7ef6f404e4c747-text/javascript" src="./clean-code-developer-yellow-brick-road_files/jquery.ifixpng.js.Download"></script>
<script type="592d31962d7ef6f404e4c747-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>
</head>
<body><!-- BEGIN WAYBACK TOOLBAR INSERT -->
<script type="592d31962d7ef6f404e4c747-text/javascript">__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/20091119203536/http%3A//blog.aztec-project.org/2009/07/14/clean-code-developing/" 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/07/14/clean-code-developing/" onfocus="if (!window.__cfRLUnblockHandlers) return false; this.focus();this.select();" style="flex:1;" autocomplete="off" data-cf-modified-592d31962d7ef6f404e4c747-=""><input type="hidden" name="type" value="replay"><input type="hidden" name="date" value="20091119203536"><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/07/14/clean-code-developing/" title="See a list of every capture for this URL">11 captures</a><div class="r" title="Timespan for captures of this URL">17 Jul 2009 - 7 May 2021</div></div>
<div class="k">
<a href="https://web.archive.org/web/20101001000000/http://blog.aztec-project.org/2009/07/14/clean-code-developing/" 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: 350px;"></div><div class="mt" style="display: none; width: 2px; height: 27px; left: 369px;"></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/20090919151234/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" title="19 Sep 2009"><strong>Sep</strong></a></td>
<td class="c" id="displayMonthEl" title="You are here: 20:35:36 Nov 19, 2009">Nov</td>
<td class="f" nowrap="nowrap"><a href="https://web.archive.org/web/20121009004548/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" title="09 Oct 2012"><strong>Oct</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/20090919151234/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" title="15:12:34 Sep 19, 2009"><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: 20:35:36 Nov 19, 2009">19</td>
<td class="f" nowrap="nowrap"><a href="https://web.archive.org/web/20121009004548/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" title="00:45:48 Oct 09, 2012"><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">2008</td>
<td class="c" id="displayYearEl" title="You are here: 20:35:36 Nov 19, 2009">2009</td>
<td class="f" nowrap="nowrap"><a href="https://web.archive.org/web/20121009004548/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" title="09 Oct 2012"><strong>2012</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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#" 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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#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/20091119203536/http://web.archive.org/screenshot/http://blog.aztec-project.org/2009/07/14/clean-code-developing/" id="wm-screenshot" title="screenshot" style="visibility: hidden;">
<span class="wm-icon-screen-shot"></span>
</a>
<a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#" id="wm-video" title="video">
<span class="iconochive-movies"></span>
</a>
<a id="wm-share-facebook" href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#" data-url="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" 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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#" data-url="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/" 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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#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/alexa_web_2009)"></span>
<div>Collection: <a style="color:#33f;" href="https://archive.org/details/alexa_web_2009" target="_new"><span class="wm-title">alexa_web_2009</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>
this data is currently not publicly accessible.
</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="./clean-code-developer-yellow-brick-road_files/banner-styles.css"><link rel="stylesheet" type="text/css" href="./clean-code-developer-yellow-brick-road_files/iconochive.css"><div class="wb-autocomplete-suggestions "></div></template>
</div><div id="wm-ipp-print">The Wayback Machine - https://web.archive.org/web/20091119203536/http://blog.aztec-project.org:80/2009/07/14/clean-code-developing/</div>
<script type="592d31962d7ef6f404e4c747-text/javascript">//<![CDATA[
__wm.bt(750,27,25,2,"web","http://blog.aztec-project.org/2009/07/14/clean-code-developing/","20091119203536",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/20091119203536/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/20091119203536/http://blog.aztec-project.org/">Home</a></li>
<li class="page_item page-item-2"><a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/about/" title="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/20091119203536/http://blog.aztec-project.org/2009/07/13/bericht-zum-open-space-sud-2009/">Bericht zum Open Space Süd 2009</a></div>
<div class="alignright"><a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/08/11/clean-code-teil-1/">Clean Code Teil 1</a>&nbsp;»</div>
</div>
<div class="post" id="post-455">
<div class="postinfo">
<div class="datestamp">
<div>
<span class="cal1 cal1x">Jul</span>
<span class="cal2">14</span>
<span class="cal3">2009</span>
</div>
</div>
<span class="switch-post">
<a href="javascript:toggleSidebars();" class="switch-sidebars"><img src="./clean-code-developer-yellow-brick-road_files/bullet_sidebars_hide.png" alt="" class="png"></a><a href="javascript:togglePost(455);" id="switch-post-455"><img src="./clean-code-developer-yellow-brick-road_files/bullet_toggle_minus.png" alt="" class="png"></a>
</span>
<h2 class="posttitle"><a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/" rel="bookmark" title="Permanent Link: Clean Code Developer The Yellow Brick Road of the Coder">Clean Code Developer The Yellow Brick Road of the Coder</a></h2>
<small>
Geschrieben von <a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/author/chi/" title="Artikel von Christina Hirth">Christina Hirth</a> in <a href="https://web.archive.org/web/20091119203536/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/20091119203536/http://blog.aztec-project.org/tag/ccd/" rel="tag">CCD</a>, <a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/tag/community/" rel="tag">Community</a> </small>
</div>
<div class="entry">
<p>Seit dem ich Code schreibe, steht für mich ein klarer und verständlicher Code an oberster Stelle. Ich hatte dann vor ca. eineinhalb Jahren <a href="https://web.archive.org/web/20091119203536/http://www.amazon.de/Code-Complete-Deutsche-Ausgabe-Second/dp/386063593X/ref=sr_1_2?ie=UTF8&amp;s=books&amp;qid=1247574862&amp;sr=8-2" target="_blank">Code Complete</a> und <a href="https://web.archive.org/web/20091119203536/http://www.amazon.de/Pragmatische-Programmierer-Andrew-Hunt/dp/3446223096/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1247574887&amp;sr=1-1" target="_blank">The Pragmatic Programmer</a> gelesen und dadurch die ersten Antworten bekommen, WIE man den Code unter Kontrolle hält. Anfang 2009 sind wir ich und Stefan durch den <a href="https://web.archive.org/web/20091119203536/http://www.hanselman.com/blog/HanselminutesPodcast145SOLIDPrinciplesWithUncleBobRobertCMartin.aspx" target="_blank">Podcast von Hanselman und Uncle Bob</a> auf das Thema SOLID gestoßen und darüber auch eine ausgiebige Diskussion geführt. Eins war uns klar: die Ideen, die dahinter stecken, könnten die Antwort auf unsere Suche sein.</p>
<p>Deshalb hat mich sehr gefreut, als ich von der Seite <a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/06/06/clean-code-developer/" target="_blank">Clean Code Developer</a> erfahren habe. Ihr Inhalt hat mich sofort begeistert. Sie beschreibt einen wahrscheinlich DEN möglichen Weg um ein <strong>professioneller Softwareentwickler</strong> zu werden.</p>
<p>Am letzten Wochenende auf dem <a href="https://web.archive.org/web/20091119203536/http://ulm.netopenspace.de/" target="_blank">.NET Open-Space-Süd</a> habe ich das große Vergnügen gehabt, <a href="https://web.archive.org/web/20091119203536/http://www.lieser-online.de/blog/" target="_blank">Stefan Lieser</a>, einen der Gründer von <a href="https://web.archive.org/web/20091119203536/http://clean-code-developer.de/" target="_blank">Clean Code Developer</a>-Seite kennen zu lernen und so konnte ich in den 2 Tagen viel über den Weg von einem <em>Creepy-Code-Programmer</em> zu einem <em>Clean-Code-Programmer</em> erfahren.</p>
<p>Die Grundidee ist ganz einfach: genauso wie ein Arzt oder ein Architekt, muss auch ein professioneller Softwareentwickler Verantwortung für seine Arbeit und für die Ergebnisse dieser Arbeit übernehmen. Er/sie muss sicherstellen, dass der Code korrekt, evolvierbar und effizient ist und dass er selbst immer sein Bestes gibt. Damit ist nicht gemeint, dass jeder ein Guru sein muss. Nein, professioneller Softwareentwickler ist derjenige, der an einem Wertesystem festhält und immer die Qualität des Codes vor den Augen hat.</p>
<p>Viele werden sagen “Wozu die Mühe, es funktioniert auch so!”. Klar, wenn man nur für den Jetzt programmiert. Dann, nach kurzer Zeit passiert das unvermeidliche: jemand oder der Entwickler selbst muss den furchterregend schlechten Code bugfixen/verändern. All diese Entwickler, die solche Aufgaben hatten, werden Tests zu schätzen wissen. Diese Tests kosten zwar etwas Mühe aber bescheren einem einen ruhigen Schlaf.</p>
<p>Zu einem genauso großen Problem führt, wenn man das elementarste aller Prinzipien nicht respektiert: <strong>D</strong>ont-<strong>R</strong>epeat-<strong>Y</strong>ourself (<a href="https://web.archive.org/web/20091119203536/http://de.wikipedia.org/wiki/Don%E2%80%99t_repeat_yourself" target="_blank">DRY</a>). Wie oft passiert, dass man eine Methode, ein Verhalten anpassen muss und überall nach verstreuten Kopien vom Code suchen muss? Könnt ihr jedes Mal garantieren, dass ihr alle erwischt habt? Das wäre keine Frage, wenn der Entwickler des Codes das DRY-Prinzip respektiert.</p>
<p>Der Code, den ein Entwickler schreibt, gehört meistens nicht ihm. Ich bin sicher, keiner von uns möchte als “Creepy-Coder” beschimpft werden, wenn jemand anderer unserer Code verstehen oder weiterentwickeln muss.</p>
<p>Nimmt eure Arbeit ernst und werdet ein professioneller Entwickler. Ihr werdet nach kürzester Zeit die Freude an einem korrekten und qualitativen Code entdecken und auch eure Teamkollegen und Chefs werden dafür dankbar sein.</p>
<p><a href="https://web.archive.org/web/20091119203536/http://dotnet-kicks.de/kick/?url=http%3a%2f%2fblog.aztec-project.org%2f2009%2f07%2f14%2fclean-code-developing%2f"><img src="./clean-code-developer-yellow-brick-road_files/KickItImageGenerator.ashx" border="0" alt="kick it on dotnet-kicks.de"></a></p>
<p class="postmetadata alt clear">
<small>
Geschrieben am Dienstag, 14. Juli 2009 um 3:14 pm und ist zu finden in <a href="https://web.archive.org/web/20091119203536/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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/feed/">RSS 2.0</a> feed. Du kannst <a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#respond">Antwort</a>, oder <a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/trackback/" rel="trackback">trackback</a> von deiner Seite.
</small>
</p>
</div>
</div>
<div id="comments">
Eine Antwort zu “Clean Code Developer The Yellow Brick Road of the Coder”
</div>
<ol class="commentlist" id="commentlist">
<li class="pingback even thread-even depth-1 alt" id="comment-31">
<div id="div-comment-31" class="comment-body">
<span class="switch-post"><a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#"><img src="./clean-code-developer-yellow-brick-road_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/20091119203536/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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/comment-page-1/#comment-31">August 11, 2009 um 12:03 pm</a></div>
<p>[...] «&nbsp;Clean Code Developer The Yellow Brick Road of the Coder Aug 11 2009 [...]</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/20091119203536/http://blog.aztec-project.org/2009/07/14/clean-code-developing/#respond" style="display:none;">Click here to cancel reply</a></small>
</div>
<form action="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/wp-comments-post.php" method="post" id="commentform">
<input type="hidden" name="comment_post_ID" value="455" 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="455">
</p>
<br class="clear">
</form>
</div>
<script type="592d31962d7ef6f404e4c747-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/20091119203536/http://blog.aztec-project.org/wp-content/themes/mandigo/images/icons/bullet_toggle_minus.png" alt="" class="png" /><\/a><\/span>');
});
// ]]> -->
</script>
</td>
</tr>
</tbody></table>
</div>
<div id="footer" class="png">
<p>
Unterstützt von <a href="https://web.archive.org/web/20091119203536/http://wordpress.org/">WordPress</a>, <a href="https://web.archive.org/web/20091119203536/http://www.onehertz.com/portfolio/wordpress/" target="_blank" title="WordPress themes">Mandigo theme</a> by tom.
<br><a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/feed/"><img src="./clean-code-developer-yellow-brick-road_files/rss_s.gif" alt=""> Einträge (RSS)</a>
und <a href="https://web.archive.org/web/20091119203536/http://blog.aztec-project.org/comments/feed/"><img src="./clean-code-developer-yellow-brick-road_files/rss_s.gif" alt=""> Kommentare (RSS)</a>.
</p>
</div>
</div>
<script type="592d31962d7ef6f404e4c747-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/20091119203536/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="592d31962d7ef6f404e4c747-text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://web.archive.org/web/20091119203536/https://ssl." : "https://web.archive.org/web/20091119203536/http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script><script src="./clean-code-developer-yellow-brick-road_files/ga.js.Download" type="592d31962d7ef6f404e4c747-text/javascript"></script>
<script type="592d31962d7ef6f404e4c747-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><script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="592d31962d7ef6f404e4c747-|49" defer></script></body></html>