Fragen zum Programmierprozess



  • Hi!

    Ich bin seit ca. einem Jahr aufgrund meines Studiums am Programmieren (C, C++ und Matlab). Ich studiere Elektrotechnik, wobei bei uns hier auch ein großer Schwerpunkt auf die Informatik gelegt wird.

    Ich bin an einem Punkt angelangt, wo ich gerne etwas mehr um die Programmierung herum wissen möchte. Bisher war vieles ja eher Spielerei, man klickt einfach aufs Kompilieren und startet sein Projekt.
    Da ich ein gewisses Interesse daran habe, auch einmal an Projekten mitzuarbeiten, die einen ernsteren Backround hegen, interessiert mich auch der finale Teil bei so etwas.

    Wie bekomme ich z.B. eine ausführbare exe-Datei?
    Mit welchen IDE's wird vorzugsweise in der Industrie gearbeitet?
    Wie verläuft der Zyklus einer solchen Projektentwicklung (womit beginnt man etc.)?
    Welchen Standards muss moderne Software genügen, also was passiert wenn es mal nicht klappt und wo setzt die Fehlerbehebung ein?
    Wie "baue" ich meine Software auf (in welche Dateien schreibe ich welchen Code hinein)?
    Woher weiß ich überhaupt wie ich "moderne" Software entwickle? Wo kann ich sowas nachschlagen?
    Wie gewährleiste ich, dass niemand meinen Code/ mein Programm kopiert?

    Man fühlt sich als Anfänger/leicht Fortgeschrittener im Dschungel der Möglichkeiten etwas überfordert. Ich suche sowas wie einen roten Faden. 😋

    Vielleicht beantwortet mir ja der ein oder andere ein paar Fragen. 😃
    Über gute Buchempfehlungen die sich solchen Fragen widmen würde ich mich auch freuen.

    Grüße,
    Krachi



  • Wie bekomme ich z.B. eine ausführbare exe-Datei?

    Die bekommst du bereits. Die wird erzeugt, wenn du auf "Compilieren" klickst.

    Mit welchen IDE's wird vorzugsweise in der Industrie gearbeitet?

    Das hängt von der Programmiersprache ab. Auch von der Zielplattform, ich nehme an als Elektrotechniker kommt für dich auch Embedded-Programmierung in Frage.

    Wie verläuft der Zyklus einer solchen Projektentwicklung (womit beginnt man etc.)?
    Welchen Standards muss moderne Software genügen, also was passiert wenn es mal nicht klappt und wo setzt die Fehlerbehebung ein?
    Wie "baue" ich meine Software auf (in welche Dateien schreibe ich welchen Code hinein)?
    Woher weiß ich überhaupt wie ich "moderne" Software entwickle? Wo kann ich sowas nachschlagen?

    Die Fragen sind viel zu umfassend und vage für ein Forenposting. Das ist dir hoffentlich selbst klar. Da gibt es ganze Buchregale zu, die du studieren kannst. Stichwörter: Software-Engineering, Architektur, Projektmanagement.

    Wie gewährleiste ich, dass niemand meinen Code/ mein Programm kopiert?

    Gar nicht.



  • Krachi schrieb:

    Wie gewährleiste ich, dass niemand meinen Code/ mein Programm kopiert?

    Als Anfaenger wird dir eh keiner deinen Code klauen und du solltest froh sein, wenn du ueberhaupt etwas schaffst und jemand dein Projekt anschaut.
    Spaeter veroeffentlichst du entweder nur das fertig compilierte Programm (reverse Engineering bei optimiertem C++ ist sehr schwer), stellst den Quellcode unter GPL (dann verbietet die Lizenz anderen die Codenutzung fuer nicht-GPL-Projekte) oder eine andere, freiere Lizenz (dann gibt es kein klauen, weil es erlaubt ist).

    Krachi schrieb:

    Mit welchen IDE's wird vorzugsweise in der Industrie gearbeitet?

    Viele, die nur fuer Windows entwickeln, verwenden Visual-Studio. Ansonsten sind es die gleichen IDEs, wie auch sonst oder welche fuer spezielle Zwecke, z.B. wenn man im embedded-Bereich Testumgebungen simulieren muss und dabei auch die IDE verwenden will. Die sind aber oft firmenabhaengig, teuer und nicht gerade einsteigerfreundlich.

    Krachi schrieb:

    Welchen Standards muss moderne Software genügen, also was passiert wenn es mal nicht klappt und wo setzt die Fehlerbehebung ein?

    Fehlerbehandlung haengt auch vom Anwendungsgebiet ab. Fuer ein kleines Tool kann man selber testen und auf Bugmeldungen von Usern warten. Fuer ein grosses Projekt setzt man (automatisch ablaufende) Tests, statische Compilerchecks, Beta-Tester und so ein. Man sollte natuerlich auch von vornherein durch gutes Design Fehler minimieren.


Log in to reply