Inhaltsverzeichnis:
- Ein klarer und konsistenter Codierungsstil
- Kommentieren Sie Ihren Code, während Sie ihn schreiben
- Führen Sie mindestens einmal einen Schritt pro Schritt aus
- Überlastung von Operatoren vermeiden
- Waagen-Heap-Behandlung
- Verwenden Sie Ausnahmen, um Fehler zu behandeln
- Mehrfachvererbung vermeiden
Video: Writing 2D Games in C using SDL by Thomas Lively 2024
Beginnen Sie nicht mit dem Debuggen Ihres Codes, bis Sie alle beim Kompilieren generierten Warnungen entfernt oder zumindest verstanden haben. Aktivieren Sie alle Warnmeldungen, wenn Sie sie dann ignorieren, nicht gut. Wenn Sie die Warnung nicht verstehen, schauen Sie nach. Was du nicht weißt wird dich verletzen.
Ein klarer und konsistenter Codierungsstil
Die klare und konsistente Codierung verbessert nicht nur die Lesbarkeit des Programms, sondern führt auch zu weniger Codierungsfehlern. Denken Sie daran: Je weniger Gehirnleistung Sie für die Entschlüsselung der C ++ - Syntax ausgeben müssen, desto mehr haben Sie übrig, um über die Logik des vorliegenden Programms nachzudenken. Ein guter Programmierstil ermöglicht Ihnen Folgendes:
- Unterscheiden Sie Klassennamen, Objektnamen und Funktionsnamen
- Wissen Sie etwas über das Objekt anhand seines Namens
- Unterscheiden Sie Präprozessorsymbole von C ++ - Symbolen (dh #definierte Objekte sollten hervorstechen)
- Identifizieren Sie Blöcke von C ++ - Code auf der gleichen Ebene (dies ist das Ergebnis einer konsistenten Einrückung)
Außerdem müssen Sie einen Standard-Modul-Header einrichten, der Informationen über die Funktionen oder Klassen im Modul enthält. (vermutlich, das ist Sie), das Datum, die Version des Compilers, die Sie verwenden, und eine Änderungshistorie.
Schließlich sollten alle an einem Projekt beteiligten Programmierer denselben Stil verwenden. Es ist verwirrend, ein Programm mit einem Patchwork verschiedener Codierungsstile zu entschlüsseln.
Kommentieren Sie Ihren Code, während Sie ihn schreiben
Sie können Fehler vermeiden, wenn Sie Ihren Code kommentieren, während Sie ihn schreiben, anstatt zu warten, bis alles funktioniert, und dann zurückgehen und Kommentare hinzufügen. Es ist verständlich, sich nicht die Zeit zu nehmen, um umfangreiche Kopfzeilen und Funktionsbeschreibungen zu schreiben, aber Sie haben immer Zeit, kurze Kommentare hinzuzufügen, während Sie den Code schreiben.
Kurze Kommentare sollten aufschlussreich sein. Wenn sie es nicht sind, sind sie nicht viel wert und du solltest stattdessen etwas anderes tun. Du brauchst all die Erleuchtung, die du bekommen kannst, während du versuchst, dein Programm zum Laufen zu bringen. Wenn Sie sich ein Stück Code anschauen, das Sie vor ein paar Tagen geschrieben haben, können Kommentare, die kurz, beschreibend und auf den Punkt gebracht sind, einen dramatischen Beitrag dazu leisten, herauszufinden, was genau Sie zu tun versuchten.
Darüber hinaus erleichtern konsistente Codeindentation und Namenskonventionen das Verständnis des Codes. Es ist alles sehr nett, wenn der Code nach dem Beenden leicht zu lesen ist, aber es ist genauso wichtig, dass der Code leicht zu lesen ist, während Sie ihn schreiben. Das ist, wenn Sie die Hilfe brauchen.
Führen Sie mindestens einmal einen Schritt pro Schritt aus
Als Programmierer ist es wichtig, dass Sie verstehen, was Ihr Programm tut. Nichts gibt Ihnen ein besseres Gefühl für das, was unter der Haube vor sich geht, als das Programm mit einem guten Debugger zu durchlaufen. (Die Debugger, die in der IDE von interaktiven Compilern enthalten sind, funktionieren gut.)
Darüber hinaus, wenn Sie ein Programm schreiben, benötigen Sie manchmal Rohmaterial, um ein bizarres Verhalten herauszufinden. Nichts gibt Ihnen dieses Material besser als einzelne neue Funktionen, sobald sie in Betrieb gehen.
Schließlich, wenn eine Funktion fertig ist und bereit ist, dem Programm hinzugefügt zu werden, muss jeder logische Pfad mindestens einmal durchlaufen werden. Bugs sind viel einfacher zu finden, wenn die Funktion selbst untersucht wird und nicht, nachdem sie mit den restlichen Funktionen in den Pot geworfen wurden - und Ihre Aufmerksamkeit ist neuen Programmierherausforderungen gewidmet.
Überlastung von Operatoren vermeiden
Andere als die Verwendung der beiden Stream-E / A-Operatoren operator << () und operator >> () und des Operators operator = () , sollten Sie wahrscheinlich die Operatoren überladen, bis Sie sich in C ++ wohlfühlen. Obwohl ein guter Satz von überladenen Operatoren den Nutzen und die Lesbarkeit einer neuen Klasse erhöhen kann, ist das Überladen von Operatoren (außer den drei soeben aufgeführten) fast nie notwendig und kann als neuer Programmierer erheblich zu Ihren Debugging-Problemen beitragen. Sie können den gleichen Effekt erzielen, indem Sie stattdessen die richtigen öffentlichen Memberfunktionen definieren und verwenden.
Nachdem Sie ein paar Monate lang C-Plus-Plussing durchgeführt haben, können Sie jederzeit zurückkehren und die Operatoren nach Herzenslust überladen.
Waagen-Heap-Behandlung
Im Allgemeinen sollten Programmierer Heap-Speicher auf derselben "Ebene zuweisen und freigeben. "Wenn eine Member-Funktion MyClass:: create () einen Heap-Speicherblock reserviert und an den Aufrufer zurückgibt, sollte eine Member-Funktion MyClass:: release () gibt den Speicher an den Heap zurück. Insbesondere sollte MyClass:: create () nicht erfordern, dass die übergeordnete Funktion den Speicher selbst freigibt. Dies vermeidet sicherlich nicht alle Speicherprobleme - die Elternfunktion könnte vergessen, MyClass:: release () aufzurufen - aber es reduziert die Möglichkeit etwas.
Verwenden Sie Ausnahmen, um Fehler zu behandeln
Der Ausnahmemechanismus in C ++ ist dafür ausgelegt, Fehler bequem und effizient zu behandeln. Jetzt, da diese Funktion standardisiert wurde, sollten Sie sie verwenden. Der resultierende Code ist einfacher zu schreiben, leichter zu lesen und einfacher zu warten. Außerdem erwarten es andere Programmierer - du würdest sie nicht enttäuschen wollen, oder?
Mehrfachvererbung vermeiden
Mehrfachvererbung, wie die Überladung von Operatoren, fügt eine weitere Komplexitätsebene hinzu, mit der Sie sich nicht befassen müssen, wenn Sie gerade erst anfangen. Glücklicherweise können die meisten realen Beziehungen mit einer einzigen Vererbung beschrieben werden.
Fühlen Sie sich frei, mehrfach geerbte Klassen aus kommerziellen Bibliotheken wie den Microsoft MFC-Klassen zu verwenden.Microsoft hat eine beträchtliche Zeit damit verbracht, seine Klassen einzurichten, und es weiß, was es tut.
Nachdem Sie sich mit Ihrem Verständnis von C ++ vertraut gefühlt haben, experimentieren Sie mit der Einrichtung einiger Vererbungshierarchien. Auf diese Weise bist du bereit, wenn du es brauchst.