Wo anfangen?

Ich habe vor, mich in nächster Zeit mal ans Programmieren zu machen. Habe bisher nur in der Schule mit hypermodernem ( :rolleyes: ) Pascal und QBasic programmiert.

Deshalb wollte ich einfach mal in die Runde fragen, welche Programmiersprachen ihr mir denn empfehlen würdet, um in halbwegs ernsthafte Programmierung einzusteigen (C++, Java, etc.).

Bitte um Meinungen! :)
 
Hi,
es kommt darauf an, in welchem Bereich du Programmieren willst.....
Aber ich würde dir am Anfang erst einmal C/C++ empfehlen.
Ist zwar sehr schwer und hat viele verschiedene Themenkomplexe aber man kann damit viel machen.
 
Also wenn Du mehr unter Win unterwegs bist, würde ich Dir VB und/oder Delphi für den Einstieg empfehlen. Diese Sprachen sind ziemlich einfach erlernt und Du kannst Dein Erlerntes auch schon nach kurzer Zeit in kleinere Programme umsetzen.

Wenn Du dort den Einstieg geschafft hast, kannst du ja weiter zu C oder C++ gehen.

Es kommt halt auch immer auf Deine Interessengebiete an. Wenn Du Dich mehr für webbasierende Programmiersprachen interessierst, dann schau Dir PHP, Java, JavaScript, etc an.

Interessierst Du Dich für Linux, bist Du mit Perl, C und Bash-Programmierung gut bedient.
 
Ich sagte ja auch "webbasierende Programmiersprachen", und hierbei hab ich nunmal nicht unter Programmierspachen- und Scriptsprachen unterschieden.

Hätte ich HTML gesagt, wäre Dein Einwand berechtigt gewesen, aber so ist es wirklich ein wenig kleinlich ... nun sei aber mal kein Pienzchen ;)
 
also ich persönlich hab neben der Schule mit C++ angefangen, wenn ich dann nch die WinAPI drauf hab werd ich mich mall an Perl machen, und später weiter Java, Delphi, PHP, ... :D

naja es ist immer schwierig mit Empfehlungen, weil man meist von sich selbst ausgeht und nicht unbedingt objektiv entscheidet, aber ich würde sagen entweder C++/Java oder Delphi.
C++ und Java sind sich recht ähnlich und man kann einiges damit machen ... muss man natürlich erstmal lernen, du kannst auch mit Pascal weiter machen, wenn du das richtig drauf hast hast du auch einige Möglichkeiten. Delphi bietet sich an, weil du bereits mehr oder weniger Pascal kannst, es ist afaik nicht allzuschweer zu erlernen und bietet umfangreiche Möglichkeiten.

Perl ist imho übelst cool, aber um richtig zu lernen würde ich erstmal eine andere Sprache empfehlen, da Perl von den Sprachfeatures her sehr umfangreich ist und man sich wahrscheinlich schweerer in eine weitere Sprache einarbeitet, wenn man erstmal daran gewöhnt ist, dass man nur 3 Datentypen (Beispiel) hat. aber das ist nur eine Vermutung.

VB mag ich peersöhnlich irgendwie nicht, ich hab eine gewisse Abneigung dagegen, obwohl ichs nie benutzt hab :)

mfg
Nornagest
 
"In the good old days" habe ich viel mit Assembler gearbeitet, würde da aber als Einstiegssprache die Finger von lassen, da sich Assembler in der Syntax wesentlich von den heute meist verwendeten Sprachen unterscheidet und gerade das Umsteigen dann doch sehr schwer fällt.

VB dürfte da für den Einstieg noch am besten geeignet sein, um eine solide Plattform für den Umgang mit weiteren Sprachen zu schaffen.

cu

nowonda
 
Hi Chris

ich persönlich habe auch erst vor 2 Wochen angefangen und zwar mit der Sprache Java. Meiner Meinung nach macht es keinen Unterschied ob du am Anfang nun mit Java, C, C++ o.Ä. anfängst (ausgenommen Assembler). Java ähnelt der Sprache C sehr wobei ich denke, dass du generell mit einem Buch anfangen solltest wo du schnelle Erfolge erzielst und wie schon erwähnt auch in kurzer Zeit einige kleinere Programme erstellen kannst, damit du dein "Lern"-Erfolg vor Augen hast.

MFG euer nodle :D
 
Ja, so in etwa habe ich mir das auch vorgestellt, bloß dass ich vielleicht im Internet auf Tutorial-Suche gehe, denn Bücher kosten zumeist Geld :( .
 
Würde dir mal PHP i.V.m. SQL empfehlen,
da inzwischen immer mehr Organisationen darauf setzten, da es einen großen Vorteil hat, nämlich wenn viele PC's mit dem selben Programm arbeiten (z.b. in einer Firma) und das ist z.b. in C geschrieben, und irgendwann erscheint ein Update dazu dann muss dieses auf zich PC's installiert werden, bei PHP wird einfach einmal das Script auf dem Server geändert, und alle PC's können darauf zugreifen.
Java wäre auch nicht schlecht da es für WEB und als Applikation einsetzbar ist.

Falls du "richtige Programme" schreiben willst würde ich Vbasic oder Delphi nehmen da du da ja schon die Grundlagen aus deiner Schulzeit hast.
 
Bücher kosten zumeist Geld

Bibliothek = 5 ? für ein Jahr und die Bücher kannst du dir kostenfrei holen (zumindest in Baden-Württemberg). Weis nicht genau ob jedes Bundesland kulturelle Einrichtungen fördert, aber versuchs doch einfach mal ich hol mir die Bücher auch immer von der Bibliothek.
Und so ganz nebenbei springen da nette Studentinnen nur so in Scharen rum :D

viel Spaß

nodi :D
 
Und so ganz nebenbei springen da nette Studentinnen nur so in Scharen rum
Endlich ein überzeugendes Argument für Büchereimuffel ;)
Ausserdem wird bestimmt keine Frau eifersüchtig, wenn man sagt:"Gehe grad´ mal in die Bücherei, Schatz." *g*

cu

nowonda
 
Moin,

aus über 20jähriger leidvoller Erfahrung kann ich dir folgende Tipps geben:

Du mußt wissen, was du willst.

Wilst du nur was zu Laufen bekommen und staunend vor dem Bildschirm sitzen, wenn sich was bewegt, weil du wo hingeklickt hast und an den Lippen von z.B. Bill Gates hängen, wenn er wieder das Blaue vom Himmel runter verspricht und seine Aussagen für Gottgegeben halten möchtest.

Oder möchtest du wirklich wissen und erfahren/erleben, wie das mit den Nullen und den Einsen wirklich funktioniert und auch das Große und Ganze beurteilen können.

Für den ersten Fall würde ich dir Visual Basic empfehlen, das ist wirklich relativ einfach zu erlernen und man bekommt schnelle Ergebnisse, ohne die Maschine an sich verstehen zu müssen. Als Steigerung dann Java, dann bist du wenigstens systemunabhängig und kannst auch ohne Microsoft überleben.

Für den zweiten Fall rate ich dir, mit BASIC zu beginnen, und zwar mit einem, welches einen simplen Interpreter bereitstellt, keine graphische Oberfläche, also z.B. BW-Basic unter Linux. Ist QBasic nicht das alte Basic unter DOS?? Also, so ein altes Ding, damit du lernst, was sind Variablen, Schleifen, Unterprogramme, Arrays etc.pp...

Dann solltest du dich ein wenig mit Computergeschichte befassen, z.B. die Erkenntnisse des Herrn Boole, warum heißt ein Keks Leibnitz, wer war Ada Lovelace, Charles Babbage, Blaise Pascal, Lord Napier, Hermann Hollerith, Konrad Zuse, Alan Touring, Mark II, ENIAC, Enigma, Z3, Deep Thought, Deep Blue, Charles Moore. Da findest du genug Anregungen, was man in BASIC mal ausprobieren könnte. Ferner kümmere dich um Zahlensysteme, was ist Binär, Oktal, Dezimal, Hexadezimal und warum gibt es sie.

Dann solltest du ein paar Zombies aus ihrer Gruft locken: Beschäftige dich ein wenig mit ForTran, Pascal, Algol, COBOL, Forth. Nicht komplett lernen, sondern mal einen Überblick verschaffen, wie diese Sprachen funktioniern und warum. Hast du vor, kommerziell kaufmännische Software zu schreiben, schadet eine Beschäftigung mit COBOL und seiner Geschichte nichts, ansonsten ist Forth ziemlich interessant, weil ein Kuriosum. Und wenn du verdammt hart drauf bist, beschäftigst du dich mit SAP und ABAP, die Sau ist einfach nicht tot zu kriegen ;-)

Danach solltest du dich mit C beschäftigen, weil das ist relativ maschinennah. Probiere, deine BASIC-Erkenntnisse in C umzusetzen, und erlebe, wie es an allen Ecken und Enden knallt. Beschäftige dich mit Pointern, mit Speicherverwaltung, was ist "automatic memory", was ist der Unterschied bei Strings zwischen C und Basic, wie funktioniert Dateiverarbeitung in C, etc. Sprich, durch C bekommst du raus, wie funktioniert so eine Maschine intern wirklich, was ist eine Speicherschutzverletzung, eine Prozess-ID, was sind die drei I/O-Kanäle stdin, stdout, stderr.

Parallel dazu solltest du etwas über Assembler lernen. Nicht perfekt Assembler programmieren, sondern, was ist ein MOVE, ein JUMP, ein CMP, ein BRANCH, ein RTS, ein TRAP oder SVC, ein Stack, ein Returnstack, ein Heap, was sind Register. Wie funktioniert eine Addition/Multiplikation/Subtraktion/Division in Binär, also mit Nullen und Einsen, also mit AND/OR/NOT/XOR-Gattern in der Elektronik? Also, was bedeutet "Strom an/Strom aus" wirklich? Gönne dir die Erfahrung, "Strom an/Strom aus - Licht an/Licht aus" mit einem Lichtschalter zu machen, und damit binäre Zahlen darzustellen, das hilft evtl. ungeheuer, weil es ist visuell erlebbar.

Danach kannst du dir eine Compileroption von C zu Nutzen machen, die meisten Compiler kennen "-s", damit der Compiler nach erstellen der Assemblerliste aufhört. Das heißt, du kannst simple C-Programme schreiben und dir ansehen, welchen Assemblercode der Compiler daraus erzeugt. Die Datei heißt dann auch mit der Endung ".s". Daraus kannst du lernen, welche Programmierung die schnellste ist. Mit der Option "-O" schaltet man den Optimizer zu. Schaue dir die Assemblerliste an und erkenne, was der Optimizer warum verändert hat, um dein Programm schneller zu machen.

Und wenn du damit durch bist, verstehst du auch, WARUM Windows/Linux/MacOS etc. so funktionieren, wie sie funktionieren, warum VB so arbeitet und COBOL ganz anders, was Datenbanken sind, was Dateiverarbeitung ist in verschiedenen Sprachen und Betriebssystemen, kurz gesagt, du hast einen ziemlich guten Überblick.

Und dann kannst du dich immer noch mit PHP/JavaScript/Java/C++ und sonstigen "aufgesetzten" oder "aufgepfropften" Sprachen beschäftigen, die einen entweder simple Lösungen für simple Probleme liefern, oder einem helfen, die Probleme zu lösen, die man ohne sie nicht hätte.

Viel Spaß dabei!
 
Danke :) .

Also mit QBasic hab ich mal ne Zeitlang rumgespielt, von logischen Schaltungen hab ich auch schonmal was gehört, Zahlensysteme sind mir auch recht geläufig und C hab ich auch mal kurz angefangen, dann aber wieder aufgehört...

Es ist tatsächlich so, dass ich keine Klick-und-Staun-Programme schreiben will, mein Interesse richtet sich mehr auf Netzwerkprogrammierung, z.B. Server.
Was genau ich jedoch machen will, weiss ich noch nicht. Ich denke, ich werde erstmal ein paar von Deinen Anregungen nachgehen und mir einen Überblick verschaffen von den Zombies *gg*.
 
Wie anfangen?

Na denne,

das sollte auch kein zwingender Lehrplan sein, sondern dir Hinweise liefern. Wenn du damit anfängst, wirst du ziemlich schnell merken, was dich interessiert und was nicht. Der Anfang ist wichtig ;-)

Wichtig ist, daß du ein breites Wissen erlangst und nicht alles bis ins Detail kennst. Aber du mußt wissen, daß Gott NICHT eines Tages Bill Gates, Steve Jobs oder Larry Ellison erschuf, und von da an ging die Sonne über der Welt auf.

Heutzutage laufen leider viel zu viele Leute rum, die einem mit schönen Worten und tollen Powerpoint-Präsentationen die tollsten Sachen vorräubern. Und während die frisch von der Uni kommenden Betriebswirte und Unternehmensberater staunend mit offenem Maule dasitzen, kannst du dich lächelnd zurücklehnen und den Vortragenden mit gezielten Fragen aus der Fassung bringen ;-)

Dann wünsch ich dir viel Spaß und Erfolg. Ach ja, mit C solltest du wieder anfangen, das ist seit längerer Zeit mein persönlicher Favorit, weil es einfach vielseitig ist und fast überall läuft. Und natürlich kannst du aus C heraus auch TCP/IP programmieren. Gute FAQ's gibts auch dazu.
 
Zurück
Oben