[Programmierung] Nächster Schritt nach Grundlagenbuch

Alle Fragen zur Software

Moderator: Moderatoren

Benutzeravatar
Fridericus Secundus
Primus Pilus
Primus Pilus
Beiträge: 2352
Registriert: 10. Dezember 2010 23:58
Wohnort: Herzogtum Bayern-München
:
Teilnahme an einem Contest Modder Spender

[Programmierung] Nächster Schritt nach Grundlagenbuch

Beitragvon Fridericus Secundus » 2. Februar 2016 16:21

Servus Forum,

ich habe auf verschiedenen Feldern einige erste Schritte in Richtung "programmieren lernen" unternommen: für meine Diss bissl grundlegendes XSLT Scripting, um XML-Daten zu formatieren, ab und zu sehr wenig Javascript. Auf Jägerfelds Empfahlung hin habe ich mich vor einiger Zeit länger mit Java auseinandergesetzt, was dank der didaktisch m.E. sehr guten "Von Kopf bis Fuß" Reihe auch durchaus funktioiert hat. Da das ganze aber insgesamt zu arg theorielastig war und ein Einsteiger meiner Meinung nach ab und zu ein bisserl praktische Erfolgserlebnisse braucht, habe ich mich entschieden, dort nicht weiterzumchen und statt dessen erst nochmal einen Schritt zurückzugehen.

Ich habe mir deswegen das Buch "Programmieren von Kopf bis Fuß" zugelegt und bin nun fast durch damit. Parallel habe ich das Gelesene in einem einfachen Programm (einem Quizspiel mit ersten GUI Ansätzen) umzusetzen versucht. Läuft auch soweit, allerdings stößt man natürlich immer wieder schnell an Grenzen.
Das Buch verwendet jedenfalls Python, und bei dieser Sprache würde ich erstmal bleiben wollen. Dank der Reste meiner Java-Lektüre und der paar Erfahrungen, die ich zuvor gesammelt hatte, ging das Buch recht flott durch. Nun stellt sich mir die Frage: wie weiter machen? Programmieren vKbF behandelt einige Themen nicht oder nur sehr sporadisch, die sehr, sehr wichtig sind. Z.B. Objektorientierung (die mir aus der Java-Zeit noch vage ein Begriff ist, die ich aber unbedingt brauche). Gut wäre also ein Buch, das einerseits grundlegende Konzepte des Softwaredesigns vermittelt, andererseits nicht zuuuu theoretisch ist (z.B. einen Einführungsteil in tkInter hat oder sowas). Oder auch Tutorials oder was auch immer.

Jedenfalls weiß ich nicht so recht, wie ich weitermachen soll. Einerseits heißt es immer, das Programmieren lerne man nur durch die Praxis, andererseits liest man dann, wie die Leute in den Foren die Hände über dem Kopf zusammenschlagen, wenn man versucht, als Anfägner einfache GUIs ohne Objektorientierung zu erstellen...
Ich bin Historiker. Da geht man immer mit ganz niedrigen Erwartungen an die Menschen ran.
-- Don Alphonso

Benutzeravatar
Jaegerfeld
Tribunus Angusticlavius
Tribunus Angusticlavius
Beiträge: 3571
Registriert: 10. November 2010 21:15
Wohnort: AudiCity
:
Pfeiler der Community Gewinner Userwahl

Re: [Programmierung] Nächster Schritt nach Grundlagenbuch

Beitragvon Jaegerfeld » 13. August 2016 11:51

Was willst du denn gerne machen?
Das Feld der Programmierung ist sehr groß und leider(oder zum Glück) gibt es tausende von Fachbüchern da draußen.

Ich gehe mal davon aus, dass du keinen professionellen Level erreichen willst (das ist sehr mühsam und für mal eben schnell einen ExcelParser basteln braucht man die Qualitätsanforderungen von dort auch nicht).

Objekt Orientierte Programmierung ist in Wirklichkeit sehr komplex. Ich stelle im Job immer wieder fest (war bis vor kurzem Java Pro / Architektur Consultant), dass selbst die meisten Profi Programmierer das Liskovssche Substitutionsprinzip und die Probleme damit nicht wirklich verstehen. Vonn Problemen bei echt paralleler Programmierung oder was die VM so macht ganz zu schweigen.

Wieviel Java kannst du denn schon?

Wenn du sehr sauber und ganz unten anfangen willst, empfehle ich Effective Java und Java Puzzlers von Joshua Bloch.
Nimm aber UNBEDINGT die englischen Originale, die deutsche Übersetzung ist a) grauenhaft und noch viel schlimmer b) fehlerhaft.

Beides sind Standardwerke und ehrlich gesagt kann ein Java Programmierer, der diese Werke nicht kennt und verstanden hat gar kein Senior Consultant sein. Egal was auf seiner Visitenkarte steht.

Nebenbei machen sie richtig Spaß (vor allem die Puzzlers, wir haben die in meinem alten Team alle durchgespielt.
==============

Muss es Java sein?
C# hat deutliche Vorteile (solange du einen Windows Rechner benutzt und nicht für MAC oder Linux programmierst)

Hast du Interesse an Spieleentwicklung? Oder suchst du Hilfe im Arbeitsalltag (also Reporting , Excelmagie & Co.)
„Ich schätze mal, das kann jeder Online-Community passieren. Irgendwann stellen die höflichen und vernünftigen Leute fest, dass sie sich in dieser Gruppe nicht mehr aufhalten wollen. Also verschwinden die. Und diejenigen die übrig bleiben, erfahren nur noch die Leute die genau so wie sie drauf sind.“

=== David Gaider, Bioware ===