Ich bin ein Junior in College mit Schwerpunkt Informatik. Abgesehen davon, dass ich viel Code schreibe, möchte ich anfangen, von anderen geschriebenen Quellcode zu lesen, um meine Codierungsfähigkeiten zu verbessern und bessere / unterschiedliche Methoden zu erlernen. Ich dachte, ich sollte anfangen, einige der wichtigsten Teile des Codes in C ++ - Compilern zu lesen. Ich denke, das würde mir helfen, zwei Dinge zu tun:
- Lernen Sie elegante Codierungspraktiken, da Compiler schwierig sind und der Code Lösungen für dieses schwierige Problem darstellt.
- Dies würde mir auch helfen zu lernen, wie meine am häufigsten verwendete Sprache kompiliert wird, welche Details, wie jeder Fehler generiert wird, wie Code analysiert wird und wie gut die Spezifikationen der Sprache sind.
Halten Sie das für eine gute Idee?
Antworten:
Es ist schwer aus Ihrem Beitrag zu sagen, wie viel Sie bereits über C ++ wissen, aber ich würde nicht damit beginnen, den Code eines Compilers zu lesen. Ich würde zuerst Zeit mit guten Büchern verbringen. Eine sehr kurze Liste:
quelle
Der einzige Grund, warum dies eine gute Idee sein könnte, besteht darin, dass Sie die Erfahrung machen können, dass der meiste Code, selbst häufig verwendeter, "guter" Code ( besonders häufig verwendeter, guter Code in der Tat) völlig unelegant ist.
Oh, und es sollte eine gute Lernerfahrung darüber sein, wie Code selten wie Spezifikationen aussieht und / oder wie wenig Code tatsächlich Spezifikationen folgt.
Und vielleicht können Sie so lernen, wie viel Sie lernen müssen.
Aber nein, ich denke nicht, dass dies eine gute Idee ist - selbst aus den Gründen, die Sie daraus ziehen könnten (und definitiv nicht aus den Gründen, aus denen Sie glauben, dass Sie davon profitieren könnten).
quelle
Nein, das ist keine gute Idee, weil Sie so wenig gewinnen. Es ist besser, die Compiler-Klasse zu besuchen und das Drachenbuch zu lesen, wenn Sie sich auf Compiler spezialisieren möchten. Wenn Sie sich auf C ++ spezialisieren möchten, kaufen und lesen Sie den Standard. Diese vermitteln Ihnen mehr technische Fähigkeiten als das Reverse Engineering eines Compilers.
Für reine Programmierkenntnisse würde ich "The Practice of Programming" von Pike und Kernighan empfehlen.
quelle
Ich würde nicht mit dem Lesen von Compiler-Code beginnen, da dieser sehr komplex ist. Sie sollten nach C ++ - Projekten suchen (um den Code zu lesen, das Projekt zu erstellen und Änderungen vorzunehmen):
Lesen Sie auch: Die C ++ - Programmiersprache von Bjarne Stroustrup
quelle
Anstatt Quellcode zu lesen, der wahrscheinlich keine Kommentare enthält. Sie sollten versuchen, einige Bücher darüber zu lesen, wie man gutes C ++ schreibt.
Probieren Sie Scott Meyers Bücher aus . Ich denke, seine Effective C ++ - Bücher werden Ihnen gefallen.
quelle