Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
| de:modul:m320_2024:merkblaetter:realisierung [2026/08/30 14:05] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | de:modul:m320_2024:merkblaetter:realisierung [2026/08/30 14:05] (aktuell) – ↷ Seite von modul:m320_2024:merkblaetter:realisierung nach de:modul:m320_2024:merkblaetter:realisierung verschoben msuter | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Merkblatt: Realisierung ====== | ||
| + | <WRAP center round tip 60%> | ||
| + | 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:// | ||