Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.net  
   

Die mobilen Seiten von c++.net:
https://m.c-plusplus.net

  
C++ Forum :: Java ::  Java-Projekte professionell auffahren     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
Dexter1997
Mitglied

Benutzerprofil
Anmeldungsdatum: 09.01.2016
Beiträge: 120
Beitrag Dexter1997 Mitglied 11:38:01 13.02.2018   Titel:   Java-Projekte professionell auffahren            Zitieren

Hallo Freunde der Sonne,

Als ich anfing, programmieren zu lernen, wollte ich einfach nur wissen, wie man einem Computer Anweisungen gibt. Das kann ich nun mittlerweile. Mehr oder weniger.

Ich habe schon viel Literatur zu den Sprachen Python, Java, C, C++ und anderen gelesen. Dabei ist mir aufgefallen, dass zwar meist sehr ausführlich das Programmieren, also das Umsetzen einer Idee erklärt wird, aber meistens nicht oder nur mangelhaft, wie man eine Idee durchdenkt, und einen, ich sage mal, "Programmierplan" aufstellt. Ich glaube, dass viele Autoren von Anfängerbüchern hier Nachholbedarf haben.

Ich möchte in diesem Thread eure Meinung hören, welche Methodiken zum Durchdenken einer Idee und zum Aufstellen eines Programmierplans ihr im Laufe eures Schaffens als Programmierer als genutzt habt, und wie ihr vorgeht, wenn es um die Entwicklung einer völlig neuen Softwareidee geht. Es wäre schön, wenn hierbei der Schwerpunkt auf die Entwicklung von Javaprogrammen gelegt werden könnte.

Ich persönlich gehe wie folgt vor:

Ich formuliere eine Softwareidee im Groben. Dann versuche ich mir bewusst zu machen, welche einzelnen Komponenten in meiner Idee vorkommen. Diese versuche ich als Klassen zu modellieren und fange dann an zu programmieren. Die konkrete Ausgestaltung ergibt sich meist erst im Laufe der Programmierung, was den Nachteil hat, dass einem bessere Implementierungsansätze erst dann bewusst werden, wenn man schon die Hälfte fertigprogrammiert hat. Dieses Anfängergewurstel sollte durch bessere Praktiken ersetzt werden.


Zuletzt bearbeitet von Dexter1997 am 11:57:12 13.02.2018, insgesamt 3-mal bearbeitet
Printe
Mitglied

Benutzerprofil
Anmeldungsdatum: 23.01.2018
Beiträge: 74
Beitrag Printe Mitglied 11:56:39 13.02.2018   Titel:   Re: Java-Projekte professionel auffahren            Zitieren

Dexter1997 schrieb:
Dabei ist mir aufgefallen, dass zwar meist sehr ausführlich das Programmieren, also das Umsetzen einer Idee erklärt wird, aber meistens nicht oder nur mangelhaft, wie man eine Idee durchdenkt, und einen, ich sage mal, "Programmierplan" aufstellt.

Das gehört auch nicht zum "Programmieren in Sprache X", sondern ist eine ganz eigene Wissenschaft, nämlich "Softwareentwurf". Dazu gibts wieder eigene Bücher.

Der Softwareentwurf kann sogar gemacht werden, bevor die Entscheidung für eine konkrete Sprache fällt - es sollte vielleicht nur vorab bekannt sein, ob es eine objektorientierte, eine funktionale oder eine prozedurale Sprache sein wird.
Printe
Mitglied

Benutzerprofil
Anmeldungsdatum: 23.01.2018
Beiträge: 74
Beitrag Printe Mitglied 12:10:15 13.02.2018   Titel:   Re: Java-Projekte professionell auffahren            Zitieren

Dexter1997 schrieb:

Ich persönlich gehe wie folgt vor: ...


Das ist schon gar nicht schlecht, und wenn vor allem das letzte (das Anfängergewurstel durch bessere Praktiken ersetzen) regelmäßig und konsequent stattfindet, dann wirst du dich auch zügig verbessern.

Andere wichtige Punkte:
1. Nicht nur im eigenen Saft kochen und nicht jedes Rad selber erfinden. Lies Blogs von anderen Entwicklern, um auf andere Ideen zu kommen.

2. Such Antworten zu konkreten Fragestellungen immer auch auf Plattformen wie stackoverflow und denk über das, was da geschrieben wird, zumindest nach. Auch wenn es dir für deinen Anwendungsfall way-over-the-top erscheint - häufig ist es das gar nicht, und mit der Zeit lernst du, das einzuschätzen.

3. Hab Mut zum Ausprobieren, nur dadurch lernst du wirklich. Stell dein Projekt unter Source-Kontrolle (git oder svn), mach kleinteilige Commits und lerne zu branchen und zu mergen, dann kann nicht viel schiefgehen.

4. Hör nicht auf, wenn du Klassen modelliert hast. Lerne, auch Interfaces zu modellieren. Bei großen Projekten sind Klassen nur die halbe Miete, Interfaces sind wichtiger.


Zuletzt bearbeitet von Printe am 12:15:57 13.02.2018, insgesamt 4-mal bearbeitet
Dexter1997
Mitglied

Benutzerprofil
Anmeldungsdatum: 09.01.2016
Beiträge: 120
Beitrag Dexter1997 Mitglied 15:24:41 13.02.2018   Titel:              Zitieren

Vielen Dank für eure wertvollen Ratschläge. Dann ist Softwareentwurf mein Suchbegriff, genau nach sowas habe ich hier auch gesucht, dankesehr!

Sind Schnittstellen wirklich wichtiger als Klassen? Mir schien es eher, als wollte Java damit versuchen, krampfhaft die fehlende Mehrfachvererbung zu kompensieren, da es in den Lehrbüchern als Einleitung immer heißt: "Java erlaubt keine Mehrfachvererbung, aber das ist nicht so schlimm, denn es gibt Schnittstellen [...]"

In meinem bisher größten Projekt beispielsweise konnte ich keine Anwendung für Schnittstellen finden:
https://codereview.stacke ....... ainst-enemies-rpg-in-java

Vielleicht lag's auch daran, dass keine Mehrfachvererbung vonnöten war...


Zuletzt bearbeitet von Dexter1997 am 18:42:04 13.02.2018, insgesamt 1-mal bearbeitet
C++ Forum :: Java ::  Java-Projekte professionell auffahren   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.net ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.