Frage

Ich bin ein Informatik-Student, und ich bin gerade erst relativ größere Programme für meine Kursarbeit schreiben (zwischen 750 bis 1500 Linien). Bisher ist es möglich, indem sie mit einer vernünftigen Maß an Modularisierung und objektorientiertes Design zu erhalten. Aber jetzt, dass ich für meine Aufgaben komplexer Code ich schreibe würde ich gerne lernen besseren Code zu schreiben.

Kann jemand Punkt mich in die Richtung einiger Ressourcen für das Lernen über was für Dinge zu suchen, wenn Ihr Programm die Architektur so zu gestalten, dass Sie es möglichst modularisiert machen?

War es hilfreich?

Lösung

Refactoring von Martin Fowler ist das Buch, das mir am meisten unter den 20 oder so Büchern dabei geholfen hat, dass ich auf oo, Mustern gelesen habe, Test Driven Development und allgemeine Softwareentwicklung in den letzten zwei Jahren. insbesondere der Abschnitt über Gerüche können Sie sehen, was Sie vermeiden helfen, wie Sie komplexere Code entwickeln.

Andere Tipps

Diese Frage wurde hier vor gefragt, und die Antwort ist im Allgemeinen gab es kein solches Buch. Der Grund dafür ist, dass es keine „Regeln“ sind, die auf das Problem angewandt werden können - Sie haben Erfahrung zu gehen. Meine Erfahrung ist, dass Sie mehrere Bibliotheken mit einem klaren, einzeln gerichtet Abhängigkeitsgraphen schreiben sollte, aber darüber hinaus, dass ich nicht wie ich selbst zu begehen.

Clean Code von Robert Matin

Es ist eine wichtige Sache, die es leichter bei der Entwicklung von modularen Anwendungen machen oder sogar eine App modular zu einem späteren Zeitpunkt drehen, das ist Dependency Injection .

Es ermöglicht Ihre Module an der Arbeit auch getrennt von allem, da sie unabhängig von Daten empfängt, muss es seine Aufgabe erfüllen, ohne dass irgendetwas über die Anwendung weiß selbst.

Es kann einige Erfahrung nimmt gute Qualität kontextneutralen DI-Code zu erzeugen, weshalb es wichtig ist, denkt zu beginnen, über und mit ihm so schnell wie möglich zu experimentieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top