Frage zu #include und Dateipfaden [SOLVED]



  • Mal ein paar Tipps:
    - Solange du nicht in unabhängige Module aufteilst (utility, network, gui, ..) pack erst mal alles in einen Ordner.
    - Mach dir eigene Klassen für Dinge wie Adressen, Rechnungen, Waren, ... etc. Kapsel die Funktionalität dieser Klassen einzeln, sodass sie von außen leicht zu verwenden sind. Dann bau deine Funktionen auf diesen Klassen auf. Dadurch wird das alles viel Übersichtlicher und du hast auch keine 20k Zeilen mehr in einer Klasse. 😉



  • Sowas in der Art probier ich im moment hehehehe, ziemlich hartes einsteiger Prrojekt für C++, im Moment programmiere ich seit ca. 4 wochen in C++, und seit ca 2 Wochen an diesem Projekt.

    Ich muss sagen das es etwas wirklich ganz anderes ist als Java oder die anderen Sprachen die ich in meinem Leben gelernt habe. Auf der anderen Seite muss ich sagen das mich diese Projekt durch eine echt harte Lernkurve schickt.



  • Zeig mal irgend einen Header her, ich will das sehen.



  • Videonauth schrieb:

    Sowas in der Art probier ich im moment hehehehe, ziemlich hartes einsteiger Prrojekt für C++, im Moment programmiere ich seit ca. 4 wochen in C++, und seit ca 2 Wochen an diesem Projekt.

    Ist das nicht etwas übertrieben, nach 2 Wochen C++ ein Zehntausende Zeilen langes Projekt zu beginnen? Das kann doch gar nicht funktionieren!

    @PI: Er soll das lieber woanders Posten. Und überhaupt, wie willst du da noch was finden, so ganz lässig mit 20000 Zeilen? 😃



  • Naja so ganz easy ist das mit dem finden nicht, aber auf der anderen Seite ist diese Programwurst ja auch auf meinem Mist gewachsen (über die letzten 5 Jahre) und zu meinem Glück einigermassen gut mit Kommentaren versehen.

    Bin ja nebenbei kein kopletter programmier Neuling sonst hätte ich mich bestimmt noch nicht daran gewagt. Mir wurde ganz einfch langsam das Gefrickel an dem Java Code zuviel und nun versuche ich halt nen Start Over mit dem Wissen um die struktur der Datenbank und dem wissen was ich in den letzten 5 Jahren beim erstellen des programms gesammelt habe, nur halt diesmal in einer anderen Programmiersprache.



  • Videonauth schrieb:

    und zu meinem Glück einigermassen gut mit Kommentaren versehen.

    Nur schlechter Code braucht Kommentare, um verstanden zu werden.



  • Solange Code funktioniert ist er nicht schlecht, es gibt eher nur schlechten schreibstyle oder guten schreibstyle und da entwickelt jeder sowiso über kurz oder lang eigene Präferenzen, und Kommentare an einem source der so lang ist sind in meiner Meinung was gutes.



  • Dass nur schlechter Code Kommentare brauche, um verstanden zu werden, kann nur jemand sagen, der es noch nie mit komplizierten Sachverhalten zu tun hatte. Nicht alle Probleme, in die man bei einer Implementation läuft, sind (selbst für Eingeweihte) sofort offensichtlich, und es ist dann sehr hilfreich, wenn der Code gut kommentiert ist. Wenn ich für komplexe Formeln Grenzwertbetrachtungen an drei möglichen Singularitäten mache, schreibe ich selbstverständlich daneben, was das alles bedeutet; ich bin ja nicht wahnsinnig.

    Was "solange Code funktioniert ist er nicht schlecht" angeht, das meinst du doch wohl hoffentlich nicht ernst, Videonauth. Selbst wenn man annimmt, dass "funktioniert" im Sinne von "wohldefiniert" gemeint ist statt im Sinne von "läuft bei mir", wird einen eine Weile auf der Website des IOCCC eines besseren belehren.



  • Videonauth schrieb:

    es gibt eher nur schlechten schreibstyle oder guten schreibstyle

    Das dachte ich auch, but then I got an arrow to the knee aber dann habe ich von Klassen mit 20k Zeilen gehört. 🤡



  • Fus Doh Rah hilft immer ...

    Ne mal im ernst ich hatte schon einen Grund das neu machen zu wollen, durch die vielen nachträglichen änderungen im Code ist das ganze inzwischen wenig performant und unübersichtlich. Das Manko gilt es nun zu beseitigen, aber der Code läuft und das im Geschäftsbetrieb seit 5 Jahren und wurde immer mal ad hoc um ein paar Funktionen, Abfragen usw. erweitert je nach bedarf.



  • @seldon: Das ist was anderes. Aber ein Code, der irgendwelche Daten in eine Datenbank schubst, ist i.d.R. von der Materie her nicht so kompliziert.



  • Unterschätz das nicht - so was ist geistig im Zweifel nicht so anspruchsvoll wie höhere Mathematik, aber komplex können solche Systeme durchaus werden. Insbesondere kann es da viele Stellen geben, an denen man die Sache so oder so machen kann, und da ist dann ein Kommentar dass und warum man es so und nicht so gemacht hat, eine sehr gute Sache. Oder wenn nicht sofort ersichtlich ist, dass es überhaupt etwas zu bedenken gab - dann ist eine Notiz, dass man bei der Weiterentwicklung auf etwas achten sollte, unbezahlbar.

    Das sind Dinge, auf die man ab einer gewissen (ziemlich geringen) Programmgröße unabhängig vom Anspruch der Materie stößt, und deshalb halte ich diese "Kommentare sind was für Idioten"-Einstellung für völlig verfehlt. Man muss und sollte nicht zu jedem kleinen Einzelschritt etwas schreiben, aber wo es etwas zu bemerken gibt, schreib es in einen Kommentar daneben. Wenn du zwei Jahre später noch mal auf den selben Code kuckst, wirst du dir selbst dafür danken.


Anmelden zum Antworten