Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m320_2024:merkblaetter:realisierung [2024/09/25 11:09] – angelegt msuter | modul:m320_2024:merkblaetter:realisierung [2024/09/26 13:48] (aktuell) – [Commit often, commit early] msuter | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Merkblatt: Realisierung ====== | ====== Merkblatt: Realisierung ====== | ||
| <WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
| - | Tip-Box | + | Diese Seite fasst einige Tipps bei der Realisierung zusammen. |
| </ | </ | ||
| + | |||
| + | ===== Make it as simple as possible ===== | ||
| + | Zerlegen Sie die Aufgabe in viele kleine Teilaufgaben. | ||
| + | Wählen Sie zunächst eine Klasse aus, innerhalb dieser Klasse eine Methode, ... | ||
| + | |||
| + | Manchmal lohnt es sich, Teile einer Methode nur zu simulieren: | ||
| + | > Angenommen ich habe eine komplexe Formel um einen Wert zu ermitteln. | ||
| + | > Anstatt viel Zeit mit dieser Formel zu verbringen, kann ich den Wert zunächst einfach hart-codiert in die Methode schreiben. | ||
| + | > Dies erlaubt es mir, den einfacheren Rest der Methode zu programmieren. | ||
| + | |||
| + | |||
| + | ==== Use the tests, Luke ==== | ||
| + | |||
| + | Angenommen Ihnen stehen Unittests (z.B. Pytests) zur Verfügung, um Ihren Code zu prüfen. | ||
| + | Dann schauen Sie, welche Tests zu Ihrer Teilaufgabe passen: | ||
| + | |||
| + | * Welcher Test bzw. welche Tests prüfen, ob ich die Teilaufgabe korrekt erledigt habe? | ||
| + | |||
| + | ===== Studiere die Schnittstellen ===== | ||
| + | Die Schnittstelle definiert die Kommunikation mit dem Rest der Applikation. | ||
| + | Wenn Sie die Schnittstelle falsch umsetzen, wird die Methode nie korrekt laufen. | ||
| + | |||
| + | * Welche Parameter erwartet die Methode? | ||
| + | * Gibt es Defaultwerte für einzelne Parameter? | ||
| + | * Welchen Returnwert muss die Methode liefern. | ||
| + | |||
| + | ===== Commit often, commit early ===== | ||
| + | Ein Commit stellt eine Art Backup unseres Repositories dar. | ||
| + | Dadurch können wir jederzeit zum letzten korrekten Zustand zurück kehren, falls mal etwas richtig schief läuft. | ||
| + | |||
| + | Nach jeder Teilaufgabe (z.B. eine Methode, eine einzelner Programmblock) die Sie korrekt umgesetzt haben, erstellen Sie einen Commit. | ||
| + | Sobald eine Methode fehlerfrei läuft (Unittests), | ||
| + | |||
| + | <WRAP center round alert 60%> | ||
| + | Führen Sie niemals einen Push mit einer nicht lauffähigen Version des Programmcodes durch! | ||
| + | </ | ||
| + | |||
| + | ===== Nutze den Debugger ===== | ||
| + | Der Debugger ist ein wichtiges Werkzeug um Fehler zu finden. | ||
| + | Üben Sie immer wieder mit Hilfe des Debuggers den Ablauf Ihres Programms und die Werte der verschiedenen Variablen zu verfolgen. | ||
| + | |||
| + | ---- | ||
| + | [[https:// | ||