CleanCode: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 8: | Zeile 8: | ||
=== Prinzipien === | === Prinzipien === | ||
===== Don't repeat yourself (DRY) ===== | ===== [http://www.clean-code-developer.de/Roter-Grad.ashx#Don%C2%B4t_Repeat_Yourself_DRY_0 Don't repeat yourself (DRY)] ===== | ||
Kopierter Code leistet Inkonsistenzen Vorschub und führt zu einem mehr an Fehleranfälligkeit und Arbeit. Kein Copy & Paste sondern mehrfach verwendeten Code in Funktionen und/oder Klassen auslagern. | Kopierter Code leistet Inkonsistenzen Vorschub und führt zu einem mehr an Fehleranfälligkeit und Arbeit. Kein Copy & Paste sondern mehrfach verwendeten Code in Funktionen und/oder Klassen auslagern. | ||
[http://programmer.97things.oreilly.com/wiki/index.php/Don%27t_Repeat_Yourself → mehr dazu] | |||
===== Beware of Optimizations ===== | ===== [http://www.clean-code-developer.de/Roter-Grad.ashx#Keep_it_simple_stupid_KISS_1 Keep it simple, stupid (KISS)] ===== | ||
Optimierung bedeutet Aufwand und komplexeren Code. Solange es nicht WIRKLICH notwendig ist, sollte man darauf verzichten. Eine erste Implementierung darf nie optimiert sein. | Einfache Lösungen sind immer zu bevorzugen. Zerlege komplizierte Probleme in Teilprobleme, bis die Teilprobleme nicht weiter zerlegbar sind. | ||
[http://people.apache.org/~fhanik/kiss.html → mehr dazu] | |||
===== [http://www.clean-code-developer.de/Roter-Grad.ashx#Vorsicht_vor_Optimierungen!_2 Beware of Optimizations] ===== | |||
Optimierung bedeutet Aufwand und komplexeren Code. Solange es nicht WIRKLICH notwendig ist, sollte man darauf verzichten. Eine erste Implementierung darf nie optimiert sein. | |||
[http://wolfbyte-net.blogspot.com/2009/03/ccd-red-degree-rule-beware-of.html → mehr dazu] | |||
===== Single Responsibility Principle (SRP) ===== | ===== Single Responsibility Principle (SRP) ===== | ||
Eine Klasse sollte genau eine Aufgabe erfüllen. | Eine Klasse sollte genau eine Aufgabe erfüllen. | ||
===== Separation of Concerns (SoC) ===== | ===== Separation of Concerns (SoC) ===== | ||
