Code Review: Unterschied zwischen den Versionen

Aus Das Sopra Wiki
Dietsch (Diskussion | Beiträge)
Langenfeld (Diskussion | Beiträge)
K Änderungen von Langenfeld (Diskussion) wurden auf die letzte Version von Dietsch zurückgesetzt
Markierung: Zurücksetzung
 
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
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 >
<syntaxhighlight lang="md">94cb043 see #27: Wayfinding improved to support bridges</syntaxhighlight >
Ein schlechtes Beispiel ist:
Ein schlechtes Beispiel ist:


<syntaxhighlight lang="markdown">959f313 Woololoo</syntaxhighlight>
<syntaxhighlight lang="md">959f313 Woololoo</syntaxhighlight>
====Naming (und Coding Conventions)====
====Naming (und Coding Conventions)====


Zeile 93: Zeile 93:
====Auf eine sinnvolle Weise====
====Auf eine sinnvolle Weise====


Ab und an kommt es vor, dass der Code zwar das korrekte Ergebnis liefert, aber dies auf eine nicht der Aufgabe angemessene Art und Weise. Versuche solche Stellen im Code zu finden.
Ab und an kommt es vor, dass der Code zwar das korrekte Ergebnis liefert, aber dies auf eine nicht der Aufgabe angemessene Art und Weise. Versuchen Sie solche Stellen im Code zu finden.


Der folgende Code macht das Richtige: Er prüft ob es ein vorhergehendes Element in der Liste der <code>Results</code> gibt. Er verwendet dafür aber Exceptions, die sehr langsam sind, den Code unnötig schwierig zu lesen machen, und für diese Aufgabe nicht angemessen sind, da wir die Größe der Liste kennen.
Der folgende Code macht das Richtige: Er prüft ob es ein vorhergehendes Element in der Liste der <code>Results</code> gibt. Er verwendet dafür aber Exceptions, die sehr langsam sind, den Code unnötig schwierig zu lesen machen, und für diese Aufgabe nicht angemessen sind, da wir die Größe der Liste kennen.
Zeile 101: Zeile 101:
{
{
     try
     try
     {
     {
         int resultId = Results[SelectedResultId - 1];
         int resultId = Results[SelectedResultId - 1];
Zeile 149: Zeile 148:
===Architektur===
===Architektur===


Prüfe ob der Code den [https://sopranium.de/CleanCode#Prinzipien architektonischen Grundprinzipien] entspricht
Prüfen Sie ob der Code den [https://sopranium.de/CleanCode#Prinzipien architektonischen Grundprinzipien] entspricht.
----
----
*[https://google.github.io/eng-practices/review/reviewer/standard.html The Standard for Code Review]
*[https://google.github.io/eng-practices/review/reviewer/standard.html The Standard for Code Review]
*[https://google.github.io/eng-practices/review/reviewer/looking-for.html What to look for in a Code Review]
*[https://google.github.io/eng-practices/review/reviewer/looking-for.html What to look for in a Code Review]
*[https://github.com/google/eng-practices Google Engineering Principles Documentation]
*[https://github.com/google/eng-practices Google Engineering Principles Documentation]