Was definiert einen guten Programmierer?

... komplette Frage anzeigen

8 Antworten

Ein guter Programmierer:

  • schreibt sauberen, lesbaren, validen Code
  • löst Aufgaben so, dass die jeweilige Lösung möglichst performant, testbar, verständlich und wartbar ist
  • achtet auf die Usability seines Programms
  • kann gut einschätzen, wie viel Zeit er für eine Aufgabe ungefähr benötigt
  • kann sich problemlos und schnell in fremden Code hineinarbeiten und auf dessen Grundlage weiterentwickeln
  • arbeitet strukturiert und zielorientiert
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von mAin0x
03.11.2016, 23:05

Hm, ich stimme dir gerade bei dem vorletzten Punkt zu, denn ich muss meinen Freunden immer meinen Code erklären, wenn sie mir jedoch in irgendeiner Programmiersprache einen Code zeigen verstehe ich ihn sofort denn letztendlich geht es beim Programmieren ja darum die Grundlagen von Methoden, Funktionen, Klassen, Objekten, Struk... allem :D zu verstehen.

0

Ein guter Programmierer beherrscht den Programmentwurf in Absprache mit dem jeweiligen Kunden, die effiziente Programmierung und eine Dokumentation, die so gut ist, dass sich sowohl ein „fremder” Administrator als auch der Anwender schnell zurechtfindet.

Antwort bewerten Vielen Dank für Deine Bewertung

Die richtige Antwort auf deine Frage muss unterschiedlich ausfallen, je nachdem ob du

  • als Programmierer einfach nur Codierer sein willst (jemand der von anderen erstellten Software-Entwurf und von ihnen spezifizierte Funktionalität von Schnittstellen in sie implementierenden Code umsetzt)
  • oder ob du unter einem "Programmierer" einen Software-Entwickler verstehen möchtest: eine Person also, die nicht einfach nur Codestruktur definiert, sondern wirklich auch die Struktur ganzer Anwendungen. 

Für den ersten Fall hat regex9 deine Frage schon treffend beantwortet, für den zweiten Fall aber lies bitte https://www.gutefrage.net/frage/wie-werde-ich-programmierer-und-software-entwickler#answer-183770780 .

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von grtgrt
04.11.2016, 16:15

Wer als Codierer arbeitet schreibt oder repariert einfach nur Code.

Ein Spezialfall hiervon sind sog. Wartungsprogrammierer: Sie nehmen an existierenden Programmsystemen all die kleinen Änderungen vor, die i.W. nur Fehlerbehebung darstellen.

Wer als Software-Entwickler arbeitet, wird in ganz wesentlichem Umfang auch

  • Papiere schreiben, die Software-Architektur definieren,
  • Papiere schreiben, welche notwendige Schnittstellen zwischen den durch die Architektur identifizierten Software-Bausteinen und Software-Schichten spezifizieren,
  • Testentwurf schreiben (sofern der Kunde das verlangt - was durchaus vorkommen kann),
  • Black-Box-Test entwerfen, implementieren und durchführen,
  • sowie solchen Test und die Auswertung der Testergebnisse in möglichst umfassender Weise auch automatisieren. 
1

Eine mathematisch genaue Definition dürfte unmöglich sein.

Vieles erfährt man aber über Internet-Foren - z. B. http://www.thedailywtf.com

Antwort bewerten Vielen Dank für Deine Bewertung

Das Problem verstehen, in Teilprobleme unterteilen können, testbar und und wartbar programmieren, gut dokumentieren. Das wären für mich Kriterien für einen guten Programmierer

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von mAin0x
03.11.2016, 22:55

Dann bin ich aber ein "guter Programmierer" und ich bin ein 17 jähriger, der sein Abi nachholt, weil er auf der Hauptschule war :D

0

Ein guter Programmierer findet Lösungen für Probleme, die es ohne Computer gar nicht geben würde.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von mAin0x
04.11.2016, 19:08

Haha, einen ähnlichen Spruch habe ich einen Professor sagen gehört :D
Allerdings sind diese Probleme Lösungen für hunderte Probleme, über die man sich ohne Pc nicht bewusst ist.
Zum Beispiel gäbe es ohne gute Programmierer keine Betriebssysteme, kein Internet und nichts anderes, was uns hilft, in unserer Entwicklung zu Überwesen voranzuschreiten!

0

An sich hast Du die Frage ja schon fast selbst beantwortet.

Ein guter Programmierer ist für mich einer, der auch etwas weiter nach vorne denkt, zB an die Useability des Oberfläche, oder an spätere Schnittstellen. Auch dazu gehört die Effizienz des Codes - man kann vieles mal schnell schreiben und es funktioniert gleich, d.h. aber noch nicht, dass es auch effizient ist.

Bei einem guten Programmierer setze ich auch voraus, dass er seine Tools beherrscht (IDE, Compiler, etc.)

Antwort bewerten Vielen Dank für Deine Bewertung

Ständige Weiterbildung bzw. ständiges lernen wurde hier noch nicht genannt.

Das "am Ball bleiben" gehört m.M definitiv dazu. Vieles ändert sich, neue Techniken kommen auf den Markt und andere verschwinden wieder. Selbst die Programmiersprachen entwickeln sich weiter.

Wer damit nicht "mithalten" will, ist schnell wieder raus.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von mAin0x
03.11.2016, 23:01

Oh das stimmt schon aber dennoch kenne ich eine Gruppe von Programmierern, die sich mit einer Softwarefirma eine goldene Nase verdienten, was auch mein Traum ist und sie wussten nichteinmal, was Events sind.
Sie haben mit Hilfe von guten Tools aber ohne Können super Apps in Java und C# entwickelt.
Ich hingegen liebe es, mir die Grundlagen von so vielen Programmiersprachen wie möglich einzuverleiben, um mit meinen meist verwendeten (C# und C++) noch besser zurecht zu kommen und bin nicht reich :D

0