Code Review: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 48: | Zeile 48: | ||
Ein gutes Beispiel aus dem Softwarepraktikum ist: | Ein gutes Beispiel aus dem Softwarepraktikum ist: | ||
< | <syntaxhighlight lang="markdown">94cb043 see #27: Wayfinding improved to support bridges</syntaxhighlight > | ||
Ein schlechtes Beispiel ist: | Ein schlechtes Beispiel ist: | ||
< | <syntaxhighlight lang="markdown">959f313 Woololoo</syntaxhighlight> | ||
====Naming (und Coding Conventions)==== | ====Naming (und Coding Conventions)==== | ||
| Zeile 58: | Zeile 58: | ||
Ein schlechtes Beispiel wäre: | Ein schlechtes Beispiel wäre: | ||
< | <syntaxhighlight lang="csharp"> | ||
private int mTheIndex; // nur mIndex wäre besser | |||
private int mMaxTmpInFl; // keine Abkürzungen | private int mMaxTmpInFl; // keine Abkürzungen | ||
private const int FUNNY_JOKE = 42; // witzige Namen helfen nicht beim Suchen oder verstehen</ | private const int FUNNY_JOKE = 42; // witzige Namen helfen nicht beim Suchen oder verstehen | ||
</syntaxhighlight > | |||
Ein gutes Beispiel aus dem Softwarepraktikum ist: | Ein gutes Beispiel aus dem Softwarepraktikum ist: | ||
< | <syntaxhighlight lang="csharp"> | ||
private GameObject Player; | |||
protected List<Waypoint> GetRoute(WorldMap map, WayPoint start, WayPoint end) | |||
</syntaxhighlight > | |||
===Codestyle und Struktur=== | ===Codestyle und Struktur=== | ||
| Zeile 74: | Zeile 79: | ||
*Alle Benennungen sind frei von Füllwörtern, Artikeln, dummen Witzen, etc. | *Alle Benennungen sind frei von Füllwörtern, Artikeln, dummen Witzen, etc. | ||
*Benennungen sind einheitlich, d.h. gleiche Dinge heißen immer gleich z.b <code>Get...</code>, <code>Set...</code> usw. | *Benennungen sind einheitlich, d.h. gleiche Dinge heißen immer gleich z.b <code>Get...</code>, <code>Set...</code> usw. | ||
*Klassen haben Namen im Singular z.B.: < | *Klassen haben Namen im Singular z.B.: <syntaxhighlight lang="csharp" inline>class SpaceShip</syntaxhighlight> | ||
*Instanzen von Listen, Mengen, etc. sind im Plural benannt z.B.: < | *Instanzen von Listen, Mengen, etc. sind im Plural benannt z.B.: <syntaxhighlight lang="csharp" inline>private List<SpraceShip> mSpaceShips;</syntaxhighlight > | ||
*Methoden sind Verb | *Methoden sind mit Verb und Substantiv benannt <syntaxhighlight lang="csharp" inline>public GetEnemySpaceShips()</syntaxhighlight > | ||
===Code=== | ===Code=== | ||
Nun soll der Code an sich betrachtet werden. | Nun soll der Code an sich betrachtet werden. Lesen Sie den Code Zeile für Zeile und versuchen Sie zu verstehen, was der Code macht und ob der Code… - keine offensichtlichen Fehler enthält, - das was er zu machen scheint auf eine sinnvolle Weise macht, und - der Code vereinfacht werden könnte. | ||
====Keine offensichtlichen Fehler==== | ====Keine offensichtlichen Fehler==== | ||
