# Programieren lernen



## CR7_Fan (19. Dezember 2013)

Hallo !

Ich bin 14 Jahre alt und würde gern das programieren lernen. Da es mich sehr interresiert. Nur ich kenne mich damit leider 0% aus könnt ihr mir vlt helfen womit ich anfangen soll oder ein buch wo es gut erklärt wird ?  

vielen dank im vorraus !


----------



## Locuza (19. Dezember 2013)

Hast du spezielle Ziele? Oder willst du einfach nur so programmieren lernen?
Am besten fängst du einfach mit Java (Programmiersprache) an, du findest im Internet haufenweise Tutorials.


----------



## Gast20140625 (19. Dezember 2013)

Locuza schrieb:


> Hast du spezielle Ziele? Oder willst du einfach nur so programmieren lernen?
> Am besten fängst du einfach mit Java (Programmiersprache) an, du findest im Internet haufenweise Tutorials.


 Ohne genaueres zum Vorhaben würd ich dir auch mal Java vorschlagen.

Guck mal auf Youtube nach "Brotcrunsher" oder so, die fand ich damals echt gut.


----------



## fermi (19. Dezember 2013)

Es gibt auch für den Anfang recht coole Programmiersprachen wie Scheme, die sehr viel Gehirnschmalz verlangen, da funktionales Programmieren deutlich schwieriger, was das Lösen von Problemen betrifft, ist. Dafür aber vom Umfang her deutlich leichter zu lernen ist. Wenn du Probleme funktional lösen kannst, wirst du dir später bei C++ und Java leichter tun. Vor allem gewinnt funktionales Programmieren jetzt wieder an Geiwcht, da es sich deutlich besser parallelisieren lässt. Die funktionale Programmiersprache haben wir im Studium auch vor Java und C++ gelernt.


----------



## FrozenPie (19. Dezember 2013)

Um dich in Java mal einzulesen würde ich dir das hier ans Herz legen: Galileo Computing :: Java ist auch eine Insel - Vorwort


----------



## xActionx (19. Dezember 2013)

Wenn du dich speziell für Spieleprogrammierung interessierst kann ich dir dieses Buch nur empfehlen: C++ für Spieleprogrammierer: Amazon.de: Heiko Kalista, Volker Wertich: Bücher Habe damit selbst mit 15 Jahren angefangen (bin jz fast 17) und muss sagen dass es mir gerade beim Einstieg sehr geholfen hat. Hier werden einfach keine Grundkenntnisse vorausgesetzt und alles wird von Grund auf erklärt, was den Einstieg wirklich immens erleichtert. Außerdem sind einige Programme auf einer CD beigelegt die das Programmieren ebenfalls sehr erleichtern  .

MFG


----------



## FrozenPie (19. Dezember 2013)

> Wenn du dich speziell für Spieleprogrammierung interessierst kann ich dir dieses Buch nur empfehlen: C++ für Spieleprogrammierer: Amazon.de: Heiko Kalista, Volker Wertich: Bücher



Davon gibt es schon die 4. Auflage welche grad aufgeschlagen neben mir liegt  Ein sehr gutes Buch, kann es nur empfehlen. Ist auch ansprechend geschrieben  selbst ich lese es obwohl ich Bücher nach ein paar Seiten normalerweise weglege xD


----------



## AnonHome1234 (19. Dezember 2013)

Was soll er mit Java?
Wenn du anfangen willst zu programmieren, dann fang gleich mit C, C++ an, kauf dir ein Buch belese dich und fang mit Hello World an.
C++ ist außerdem nicht nur für Spieleprogrammierung, C++ lässt sich überall einsetzen und ist außerdem eine genormte Sprache und flexibler.
Das du einige Zeit brauchen wirst ist klar aber es lohnt sich.


----------



## arti.86 (19. Dezember 2013)

cool00


----------



## Hyco (19. Dezember 2013)

AnonHome1234 schrieb:


> Was soll er mit Java?
> Wenn du anfangen willst zu programmieren, dann fang gleich mit C, C++ an, kauf dir ein Buch belese dich und fang mit Hello World an.
> C++ ist außerdem nicht nur für Spieleprogrammierung, C++ lässt sich überall einsetzen und ist außerdem eine genormte Sprache und flexibler.
> Das du einige Zeit brauchen wirst ist klar aber es lohnt sich.


 
C ist aber keine Einsteigersprache, schon garnicht für einen 14-jährigen.. 

Mit Java anzufangen ist da schon die deutlich bessere Idee.
Das vorgeschlagene Buch "Java ist auch eine Insel" ist für Einsteiger sehr zu empfehlen!


----------



## fermi (19. Dezember 2013)

C++ ist sicherlich das Ziel, aber es beinhaltet viele Komponenten, die sehr komplex sind und dem Anfänger lange nix sagen werden. Eine funktionale Programmiersprache ist am leichtesten zu lernen. Dort lernt man entscheidende Dinge wie Rekursion und Iteration wie in keiner anderen Programmiersprache. Und gerade diese Dinge zeichnen einen guten Programmierer aus. Als nächstes kann man die objektorientierung sehr leicht mit Java lernen, da Java deutlich übersichtlicher(keine Headerfiles) ist. Danach ist der Sprung zu C++ nur ein kleiner. Und es ist ja nicht so, dass eine Programmiersprache eine wirkliche Sprache ist. Sie besteht aus ungefähr 40 bis 50 Schlüsselwörtern. Ein Umstieg ist also sehr schnell gemacht. Wenn du Java beherscht, dann eigentlich auch sofort C++.


----------



## AnonHome1234 (20. Dezember 2013)

Hyco schrieb:


> C ist aber keine Einsteigersprache, schon garnicht für einen 14-jährigen..


 
Das kann man sehen wie man möchte, ich habe damals auch direkt mit C++ angefangen.
Java ist in meinen Augen Zeitverschwendung und ein sofortiger und reibungsloser Umstieg von Java auf C++ ist das nicht.

http://www.amazon.de/C-Primer-Stanley-B-Lippman/dp/0321714113

Kann ich empfehlen


----------



## fermi (20. Dezember 2013)

Es ist keine Zeitverschwendung, da die Komponenten die du in Java lernst auch wieder in  C++ vorkommen. Und du somit nichts verloren hast. Im Gegenteil-- du kannst eine weitere Programmiersprache, die deutlich übersichtilcher und somit auch schneller zu lernen ist als C++, dein Eigen nennen. Danach kann man immer noch zu C++ wechseln und die wenigen Unterschiede, die beide trennen, lernen.


----------



## Johnson (20. Dezember 2013)

Es gibt eine Buch reihe die Heißt Programmieren lernen. Für jede Programmiersprache gibt es ein Extra Buch. Dieses gibt es auch als DVD mit vielen Videos.
 C basierte Programmiersprachen sind nicht unbedingt für Anfänger geeignet. Kann die Assembler empfehlen für den einstieg damit du dir ein Gefühl aneignen kannst wodrauf es an kommt. Viele Programmiersprachen sind recht ähnlich vom Aufbau her.
 Sonst eignet sich auch der Arduino wenn du auch was über Elektronik lernen möchtest.


----------



## CR7_Fan (20. Dezember 2013)

Ok, vielen dank für eure Hilfe. Also ist es am besten ich lerne java und steige dann zu c++ um ? Was kann man mit Java programieren ?


----------



## keinnick (20. Dezember 2013)

CR7_Fan schrieb:


> Ok, vielen dank für eure Hilfe. Also ist es am besten ich lerne java und steige dann zu c++ um ? Was kann man mit Java programieren ?



Schau Dir die Programmiersprache Deiner Wahl, von mir aus Java, am besten erst mal an und arbeite ein paar einfache Tutorials durch. Dann siehst Du ob "programmieren" auch wirklich was für Dich ist. Am Anfang setzt sich wohl fast jeder hin und sagt: ich lerne das jetzt! Aber nicht jeder ist dafür gemacht. (ich auch nicht, ich hab mich lange damit abgequält aber das ist nix für mich )


----------



## CR7_Fan (20. Dezember 2013)

Ok vielen vielen dank ! Also guck ich mir am besten ein paar tutorials an und schau ob es wirklich etwas für mich.

mfg


----------



## Evandar (20. Dezember 2013)

Oh man, ehrlich gesagt finde ich die Streitereien hier echt amüsant, nur helfen sie CR7 gar nicht weiter!

Es ist doch so, frage drei Programmiere mit welcher Sprache du anfangen sollst und du bekommst mit großer Wahrscheinlich mindestens 2 Antworten (ehr 3) und hast dann eine Diskussion wie hier. ^^ Das ist immer so, jeder ist von seiner Lieblingssprache überzeugt und der Meinung sie ist die einzig richtige. Deswegen vergiss es am Anfang einfach, solltest du das programmieren wirklich gut finden, was sich nicht in den ersten Wochen herausstellt, und es professionell machen wollen, dann wirst du mit sehr hoher Wahrscheinlichkeit mindestens ein mal die Sprache wechseln müssen. Von daher ist es fast egal womit du beginnst, die Grundlagen sind in fast allen gleich. 

Du musst wissen, eine Programmiersprache ist letztendlich sowas wie ein Werkzeug. Sie hilft dir der Maschine zu sagen was sie machen soll. Dabei gibt es verschiedenste Auslegungen, die einen (wie C++) erlaubt dir im Detail zu sagen was passieren soll, wieder andere (wie halt Java) vereinfachen dir viele Dinge, in dem sie die Aufgaben abnehmen dich um Details kümmern zu müssen. Dabei zielen die Sprachen oftmals auf spezielle Aufgabenbereiche ab und deswegen ist die Frage was man machen möchte auch so wichtig. Wenn du die Grundlagen einmal verstanden hast, wirst du nämlich ganz schnell feststellen, dass nicht die Sprachen dein Problem sind, sondern das verstehen und erarbeiten von unterschiedlichen Konzepten in der Informatik.

Aber das führt am Anfang wohl zu weit. Wichtig für dich ist jetzt erstmal, wähle dir eine Sprache aus und lerne erstmal nur diese eine. Wenn es wirklich rein ums lernen geht, ist es fast völlig egal welche. Anbieten würden sich C++ und Java da es dafür unmengen an guten Einleitungen gibt, vielleicht noch C# auch wenn man damit mehr oder weniger an MS gebunden ist (aber der Anfang wird einen sehr leicht gemacht). Damit bist du dann einige Monaten beschäftigt und kannst herausfinden ob es dir überhaupt Spaß macht. Bitte mach dir aber keine falschen Hoffnungen, das ganze lernt sich alles nicht in ein paar Monaten! Rückschläge sind normal und die muss man einfach abkönnen.


----------



## Crysis nerd (20. Dezember 2013)

Ich möchte Evandar zustimmen, dass es dem Threadersteller nicht wirklich hilft. Klar heißt der Titel "Programmieren lernen", aber ich denke dass hier auch eher ein allgemeiner Einstieg in die Informatik gewünscht ist. Das ist ohnehin notwendig, um gut zu programmieren. 
CR7_Fan möchte erstmal Grundlagen verstehen, wie man überhaupt programmiert, wie das überhaupt funktioniert. Dabei ist die Sprache erstmal recht egal. 

Ich hoffe mir wird nicht übel genommen, dass ich "Werbung" für meine Uni mache, aber dort gibt es eine wirklich gute Vorlesung, die aufgezeichnet wird und komplett online verfügbar ist. Man kann also quasi ohne Einschränkungen die Vorlesung mitmachen. Der Titel ist "Algorithmen und Datenstrukturen" und sie vermittelt grundlegendes Wissen über Informatik, wie z.B. Algorithmen entworfen werden und später in Java umgesetzt. Ja Java, eine andere Sprache wäre mir lieber, aber wie eingangs erwähnt: Die Sprache ist hier erstmal egal. Es werden wichtige Algorithmen wie binäre Suche, die wichtigsten Sortieralgorithmen und Ansätze wie Rekursion und Backtracking angesprochen. Und später behandelt man Datenstrukturen wie Stack, Queue, Tree, HashMap usw. Wenn man sich die Vorlesung gegeben hat, hat man auf jeden Fall eine sehr gute Einführung in die Informatik genossen und kann schon einiges in Java programmieren. Auf fast allen Aufgabenzetteln muss etwas in Java programmiert werden.
Also, das ist wirklich meine Empfehlung an CR7_Fan: Mach so eine komplett Einführung mit! Eine Rundum-Sicht hilft sehr beim Programmieren. Es muss nicht umbedingt der Kurs von meiner Uni sein, es gibt sicherlich noch haufenweise ähnliche Kurse online. 
Trotzdem möchte ich dir es ans Herz legen: Vorlesung Algorithmen WS 2013/14 
(Ich möchte damit wirklich nur den Threaderstellern helfen, und nicht werben. Ich bin wirklich der Meinung, dass es das "Beste" ist. Falls allerdings doch jemand der Meinung ist, dass es nervige Werbung sei, schreibt mir bitte.)

Außerdem kannst du, CR7_Fan, hier im Forum den Thread "Anfänger sucht Hilfe" lesen, der ähnlich ist. Wenn du dich dafür entscheidest, den Kurs meiner Uni zu machen, sag Bescheid 

Liebe Grüße
Lukas



PS:


fermi schrieb:


> Wenn du Java beherscht, dann eigentlich auch sofort C++.





fermi schrieb:


> Danach kann man immer noch zu C++ wechseln und die wenigen Unterschiede, die beide trennen, lernen.


*prust* *hust* Ah.. Ja, "if" und "while" funktionieren gleich.. Aber wenn du solche Aussagen tätigst, weiß man, dass du dich mit mindestens einer Sprache nur oberflächlich beschäftigt hast. Die Sprachen haben nicht annähernd "wenige" Unterschiede...


----------



## fermi (20. Dezember 2013)

Viel mehr als und if und while und andere Gemeinsamkeiten die Java und C++ haben, braucht es nicht, um zu Programmieren(im Sinne der Berechenbarkeitstheorie). Die meisten Zusatzfeatures, die Programmiersprachen haben dienen dem Komfort( also dem verminderten Aufwand ein gewisses Programm zu erstellen) und der Zeit, die zur Ausführung eines solchen Programms nötig ist. Wenn du Java beherscht, dann lassen sich die Unterschiede (siehe http://www.techfak.uni-bielefeld.de/~cfroehli/Vergleich.pdf) sehr schnell bewältigen. Das ist auch die Meinung von so allen Lehrkörpern an der Universität, die Java lehren und in allen Folgekursen dann auch C++ voraussetzen. Mit der Begründung, dass man sich die Unterschiede sehr schnell aneigenen kann, was ich auch bei mir und in meinem Umfeld festgestellt habe.


----------



## Hyco (20. Dezember 2013)

Was wollt ihr eigentlich alle mit euren Vorlesungen von der Uni?

Ihm gleich die Lust auf alles verderben?

Es gibt geeignetere Einstiegsmethoden für einen 14-Jährigen!
Lieber mit einem totalen Anfängerbuch in ganz kleinen Schritten anfangen, auch wenn man am Anfang kaum etwas lernt, als die Lust nach ein paar Studen komplett zu verlieren weil das "Lernmaterial" viel zu umfangreich, unübersichtlich und theoretisch ist!

@CR7_Fan: Gibt es an deiner Schule vielleicht 'ne Informatik-AG?
Das wäre sicherlich eine gute Wahl, wenn man dort auch schon mit Sprachen wie Java oder Delphi (sehr einsteigerfreundlich) hantiert.


----------



## fermi (20. Dezember 2013)

ja genau deswegen habe ich auch eine Progrmmiersprache wie Scheme vorgeschlagen, wo zum Beispiel das Fakultätprogramm viel übersichtlicher ist als in Java und C++

Und somit ist das ganze viel schneller zu verstehen. Bei Java und C++ muss man  erst die ganzen Schlüsselwörter(class , static, public , void usw) verstehen, ehe man vernüftig programmieren kann. Das geht mit Scheme wesentlich schneller und eleganter. 

```
Scheme
 (define (fak n)     
    (if (= n 0) 1         
    (* n (fak (- n 1)))))
```

http://www.psue.uni-hannover.de/wise2011_2012/progI/uebung.php


----------



## DarkMo (20. Dezember 2013)

na ob diese notation so intuitiv is?  n = 1 seh ich als deutlich leichter verständlich an wie = n 1 >< was is das? prefix? postfix müsste dann n 1 = sein glaube, auch ned unbedingt besser  und rekursion lässt sich hierran genauso gut oder schlecht erklären, wie bei ner c oder java funke *find*


----------



## astra 1.8 (20. Dezember 2013)

ich hab mit python angefangen, recht gute einstiegs-sprache


----------



## Evandar (20. Dezember 2013)

Hyco schrieb:


> Was wollt ihr eigentlich alle mit euren Vorlesungen von der Uni?
> 
> Ihm gleich die Lust auf alles verderben?


Dem kann ich mich nur anschließen! Wir haben hier 14 Jährigen und ihr überfrachtet ihn mit Informationen mit den er noch gar nichts anfangen kann! Das ist doch nicht Zielführend. Last ihn doch erstmal reinschnuppern und überfordert ihn nicht sofort.


----------



## Crysis nerd (20. Dezember 2013)

fermi schrieb:


> Viel mehr als und if und while und andere Gemeinsamkeiten die Java und C++ haben, braucht es nicht, um zu Programmieren(im Sinne der Berechenbarkeitstheorie). Die meisten Zusatzfeatures, die Programmiersprachen haben dienen dem Komfort( also dem verminderten Aufwand ein gewisses Programm zu erstellen) und der Zeit, die zur Ausführung eines solchen Programms nötig ist. Wenn du Java beherscht, dann lassen sich die Unterschiede (siehe http://www.techfak.uni-bielefeld.de/~cfroehli/Vergleich.pdf) sehr schnell bewältigen. Das ist auch die Meinung von so allen Lehrkörpern an der Universität, die Java lehren und in allen Folgekursen dann auch C++ voraussetzen. Mit der Begründung, dass man sich die Unterschiede sehr schnell aneigenen kann, was ich auch bei mir und in meinem Umfeld festgestellt habe.


Im Sinne der Berechenbarkeit von grundsätzlichen Algorithmen eventuell. Aber dann kann man auch Assembler programmieren. Alles andere dient ja nur dem Komfort. 
In Java und C++ sind sogar grundlegende Datenstrukturen anders. Arrays funktionieren anders und müssen in Java direkt mit new allokiert werden. 
Und was Lehrkörper an Unis angeht, hab ich schon genug negative Erfahrungen. Da haben die meisten auch keine Ahnung. Und viele programmieren C++ auch wie Java, was absoluter Horror ist. C++ geschrieben von Javaprogrammierern ist meist der schlechteste C++ Code, den man so sieht. 
Klar wäre "Java <-> Assembler" oder "Java <-> Rein Funktionale Programmiersprache" noch ein größerer Unterschied und ich weiß wohl, was du meinst, wenn du sagst, dass die Sprachen gleiche Teile haben. Aber die beiden als ähnlich zu beschreiben, ist einfach falsch 
BTW: Die verlinkte PDF ist auch weit entfernt von "vollständig", aber gut.



Hyco schrieb:


> Was wollt ihr eigentlich alle mit euren Vorlesungen von der Uni?
> Ihm gleich die Lust auf alles verderben?
> Es gibt geeignetere Einstiegsmethoden für einen 14-Jährigen!
> Lieber mit einem totalen Anfängerbuch in ganz kleinen Schritten anfangen, auch wenn man am Anfang kaum etwas lernt, als die Lust nach ein paar Studen komplett zu verlieren weil das "Lernmaterial" viel zu umfangreich, unübersichtlich und theoretisch ist!


Who cares? Ich hab auch mit 13 Jahren mit C++ angefangen und fragt mal meister Leandros wann er angefangen hat. Die Vorlesung, die ich verlinkt habe ist am Anfang nicht wirklich unbeschreiblich schwer. Klar gibt es einfacheres, aber ich finde dass Alter kaum ne Rolle spielt bei sowas. Ich kenne diverse Informatiker, die 15 Jahre Altersunterschied haben und ich den jüngeren für fähiger halte. 
Meine verlinkte Vorlesung ist im übrigen absolut nicht unübersichtlich und mit der Theorie hällt es sich auch in Grenzen. Und ein bisschen Theorie schadet auch nicht.
Von daher CR7_Fan: Kannste ja ausprobieren, wenns zu schwer ist, probierste halt was anderes.



Hyco schrieb:


> @CR7_Fan: Gibt es an deiner Schule vielleicht 'ne Informatik-AG?
> Das wäre sicherlich eine gute Wahl, wenn man dort auch schon mit Sprachen wie Java oder Delphi (sehr einsteigerfreundlich) hantiert.


In Schulen sind die Informatiker-Lehrer meist die Lehrer, die sich als erstes einen PC gekauft haben. Klar eine AG könnte gut sein, aber die hohe Wahrscheinlichkeit ist, dass dort auch niemand mit Grips ist. Aber ja klar, natürlich sollte er darein, wenn er in die Richtung möchte.


Abschließend: Probier ruhig die Vorlesung aus, kauf dir ein gutes Buch oder such dir ein tolles Online-Tutorial. Mit genug Motivation schaffst du es so oder so. Und am besten: Such dir einen Ansprechpartner, der dir Fragen beantworten kann.

LG
Lukas


----------



## Hyco (20. Dezember 2013)

Crysis nerd schrieb:


> Who cares? Ich hab auch mit 13 Jahren mit C++ angefangen und fragt mal meister Leandros wann er angefangen hat. Die Vorlesung, die ich verlinkt habe ist am Anfang nicht wirklich unbeschreiblich schwer. Klar gibt es einfacheres, aber ich finde dass Alter kaum ne Rolle spielt bei sowas. Ich kenne diverse Informatiker, die 15 Jahre Altersunterschied haben und ich den jüngeren für fähiger halte.
> Meine verlinkte Vorlesung ist im übrigen absolut nicht unübersichtlich und mit der Theorie hällt es sich auch in Grenzen. Und ein bisschen Theorie schadet auch nicht.


 
Herzlichen Glückwunsch, dann gehörst du zu den Genies denen sowas wohl ziemlich einfach fällt.
Das Problem ist nur, dass solche Personen gerne mal von sich auf andere schließen oder überhaupt kein Gespür für das Vermitteln von Wissen haben.

Ich würde auch niemandem meine Proggen-Vorlesung vom KIT hinklatschen, der grademal 14 Jahre alt ist und zuerstmal nur reinschnuppern möchte.


----------



## AnonHome1234 (20. Dezember 2013)

Evandar schrieb:


> Wir haben hier 14 Jährigen und ihr überfrachtet ihn mit Informationen mit den er noch gar nichts anfangen kann!


 
Selten so ein Blödsinn gelesen, es gibt durchaus Menschen, die 12/13 sind und schon C++ lernen, dass hat absolut nichts mit Überforderung zu tun sondern einfach mir Ehrgeiz und Lernfähigkeit.
Wenn er das schaffen will, dass schafft er das auch, mit dem Alter hat das mal überhaupt nichts zu tun.
Bei Unpack.cn gibt es sogar einen 10 jährigen, der ASM beherrscht, da soll mir mal einer sagen das hat was mit dem Alter zu tun.


----------



## Evandar (20. Dezember 2013)

AnonHome1234 schrieb:


> Selten so ein Blödsinn gelesen, es gibt durchaus Menschen, die 12/13 sind und schon C++ lernen


Dann lese den Blödsinn bitte genauer! Es geht mir nicht darum das er zu jung ist für C++, sondern das er keine Erfahrung hat und ihr ihn Aussagen zu werft die er noch gar nicht verstehen kann. Aber bitte, dann halte ich meinen Blödsinn einfach mal zurück und schaue mir mal an wie das hier weitergeht.


----------



## Offset (20. Dezember 2013)

Also ich bin auch 14 und hab visual basic und python ausprobiert, aber wenn man sich nicht wirklich reinhängt (und ich mein nicht nur 2 Wochen), vergisst man vieles  schnell wieder. Du musst dir im klaren sein, dass man Programmieren nicht mal eben so lernt.
Aber versuchs trotzdem und überzeug dich selbst.


----------



## AnonHome1234 (20. Dezember 2013)

Evandar schrieb:


> sondern das er keine Erfahrung hat


 
Selbst das ist völlig scheiß egal, er kann auch mit 10 keine Erfahrung haben und sich das Wissen aneignen.
Man muss halt am Ball bleiben und darf nicht nach 1 Woche alles hinwerfen, man muss lernwillig sein, den Stoff Tag für Tag wiederholen, wie Offset auch bereits geschrieben hat.
Sowas lernt man auch nicht mal eben in nem halben Jahr, dass dauert sehr lange und umso früher man damit anfängt umso besser isses.


----------



## Superwip (20. Dezember 2013)

Es gibt freilich viele sehr verschiedene Ansätze wie (mit welcher Sprache) man mit dem Programmieren anfangen kann, was am sinnvollsten ist hängt wohl auch damit zusammen was man (zuerst) machen will. Will man etwa Mikrokontroller programmieren ist vermutlich C am geeignetsten.

Ich bin der Meinung das eine einfache, imperative Programmiersprache wie etwa BASIC am leichtesten zu lernen ist, mit BASIC kann man heute leider bei weitem weniger anfangen als etwa mit C/C++ was sicher ein gravierender Nachteil dieser Herangehensweise ist.

Allerdings halte ich es auch nicht für unzumutbar schwer etwa mit C zu beginnen.

Am Ende ist wohl keine Herangehensweise wirklich falsch. Mit manchen Herangehensweisen macht man am Anfang vielleicht schneller Fortschritte dafür erspart man sich natürlich auch einiges wenn man etwa nicht zunächst eine "Lernsprache" lernt die man später kaum in der Praxis anwenden kann.


----------



## CR7_Fan (20. Dezember 2013)

Ok wirklich vielen vielen dank !! ich schau mir jetzt am besten die Grundlagen der Informatik an, und nein leider bei uns an der Schule wird leider keine Ag angeboten. Vielen Vielen dank wirklich. Ich bin wenn ich ehrlich bin grad auch ein bisschen überfordert. Ich möchte aber sehr gerne programieren lernen und bin kein Mensch der nach 2 tagen aufgibt.


----------



## AnonHome1234 (21. Dezember 2013)

CR7_Fan schrieb:


> und bin kein Mensch der nach 2 tagen aufgibt.


 
Das sind gute Voraussetzungen, viel Erfolg.


----------



## okeanos7 (21. Dezember 2013)

Johnson schrieb:


> Es gibt eine Buch reihe die Heißt Programmieren lernen. Für jede Programmiersprache gibt es ein Extra Buch. Dieses gibt es auch als DVD mit vielen Videos.
> C basierte Programmiersprachen sind nicht unbedingt für Anfänger geeignet. Kann die Assembler empfehlen für den einstieg damit du dir ein Gefühl aneignen kannst wodrauf es an kommt. Viele Programmiersprachen sind recht ähnlich vom Aufbau her.
> Sonst eignet sich auch der Arduino wenn du auch was über Elektronik lernen möchtest.



nicht dein ernst. .?

assembler als anfang


----------



## AnonHome1234 (21. Dezember 2013)

okeanos7 schrieb:


> nicht dein ernst. .?
> 
> assembler als anfang


 
Wenn man "Cracker" werden will, ist ASM garnicht mal so verkehrt.


----------



## Shona (21. Dezember 2013)

okeanos7 schrieb:


> nicht dein ernst. .?
> 
> assembler als anfang


 Klar damit hab ich auch angefangen  was mehr an meinem Beruf liegt und ich das lernen musste aber so schwer ist es nun auch wieder nicht.


----------



## DarkMo (21. Dezember 2013)

is doch egal, was hier so verlinkt wird. die leute gehen nunmal von sich aus und verlinken die sachen, die ihnen gut geholfen haben. der anfang wird für cr7 eh erstmal viel rumgeschnüffel sein. da kann er auch mal die "kuriosen" links anschauen, bringt einen ja ned um. und entweder es is was für ihn, oder er muss nach anderen dingen suchen. und er kann zu den links ja auch feedback geben: "das hat mir jetz nich so viel geholfen, weil...".

ich bin auch der meinung: bilde dir ein erstes naives schnelles urteil, fang erstmal einfach an und probiere rum. wenn du hilfe bei "lektionen" (oder wie auch immer genannt) oder eigenen veruchen brauchst, kannste ja nen thread aufmachen und fragen (wichtig: es müssen eigene gehversuche ersichtlich sein, einfach ne lösung suchen ohne selbst was zu machen löst nur allergische reaktionen aus - und hilft dir auch nich weiter ^^). mit der zeit wird er dann schon merken, das jetz mal nen bissl hintergrundwissen nich schlecht wäre, da kann man ihm auch da sicher helfen. vllt merkt er auch, dass er mit der sprache nich unbedingt das erreichen kann, was er mag. bzw das irgendwas in ner anderen sprache einfacher geht. dann probiert man halt mal was anderes aus. man erkennt die ähnlichkeiten der sprachen und wird mutiger.

irgendwann kommt man auch zu dem level, wo man die unterschiede der sprachen richtig erfassen kann. aber das is doch am anfang völlig egal. glotzt man sich ne simple funktion in java oder in c... an, wird man kaum unterschiede enddecken, würd ich jetz mal so behaupten  das es bei komplizierteren dingen auch ganz ordentliche unterschiede geben kann... DA sind wir doch noch lange nicht ^^

also mein fazit: lies dich rund und leg erstmal ungestüm drauf los. am anfang will man wider jeder späteren vernunft schnelle erfolge ^^ ich will selbst was geschrieben haben, wie das alles funzt is erstma wurst. also draus los proggen und erste kleine erfolge feiern  der rest kommt bei genug interesse eh mit der zeit.


----------



## Evandar (21. Dezember 2013)

DarkMo schrieb:


> irgendwann kommt man auch zu dem level, wo man die unterschiede der sprachen richtig erfassen kann. aber das is doch am anfang völlig egal. glotzt man sich ne simple funktion in java oder in c... an, wird man kaum unterschiede enddecken, würd ich jetz mal so behaupten  das es bei komplizierteren dingen auch ganz ordentliche unterschiede geben kann... DA sind wir doch noch lange nicht ^^


Genau das meine ich! Erstmal anfangen und Erfahrungen sammeln, dann und auch nur dann, kann er verstehen was ihr hier meintet.


----------



## keinnick (21. Dezember 2013)

Evandar schrieb:


> Genau das meine ich! Erstmal anfangen und Erfahrungen sammeln, dann und auch nur dann, kann er verstehen was ihr hier meintet.



 Trotzdem ist es nicht völlig verkehrt wenn hier Empfehlungen ausgesprochen werden. Ansonsten fängt der TE mit Basic an und ist frustriert weil er in der Praxis damit gar nichts anfangen kann oder gerät an was völlig abgefahrenes (Esoterische Programmiersprache , ok das ist übertrieben )


----------



## Evandar (21. Dezember 2013)

keinnick schrieb:


> Trotzdem ist es nicht völlig verkehrt wenn hier Empfehlungen ausgesprochen werden. Ansonsten fängt der TE mit Basic an und ist frustriert weil er in der Praxis damit gar nichts anfangen kann oder gerät an was völlig abgefahrenes (Esoterische Programmiersprache , ok das ist übertrieben )


Stimmt ich dir ja zu, aber ist doch schon etwas arg übertrieben ihn mit so einigen Unterlagen zu füttern, die Konzepte beschreiben die jeden Anfänger gnadenlos überfordern.  Es ist sicherlich gut gemeint, aber einfach zuviel für jemanden der noch nie eine Zeile Code geschrieben hat.


----------



## fermi (21. Dezember 2013)

Also viele scheinen ja vor Assembler ja geradezu Angst zu haben. Es ist verständlich einfacher ein Programm in einer Hochsprache zu entwickeln als in Assembler, weil man bezüglich Assembler irgendwann den Überblick verliert. Aber vom Umfang und den Verwendeten Befehlen ist Assembler einfacher als eine Hochsprache. Die Befehle wie ADD, Move , Jump und Store erklären sich ja schon von selbst. Und damit allein lassen sich schon sehr coole Dinge konstruieren. Und es gibt Assamblersimulatoren, wo man einfache Programme drin schreiben kann und diese sind auch auf einem Niveau mit dem Mathematikunterricht eines 14 Jährigen. Wir haben in der Schule auch kleine Assemblerprogramme geschrieben und das hat richtig viel Spaß gemacht. Das finde ich gar nicht so dumm damit mal anzufangen, wenn man so einen geeigenten Assemblersimulator findet mit einem dazu passenden Tutorial.


----------



## Shona (21. Dezember 2013)

fermi schrieb:


> Also viele scheinen ja vor Assembler ja geradezu Angst zu haben. Es ist verständlich einfacher ein Programm in einer Hochsprache zu entwickeln als in Assembler, weil man bezüglich Assembler irgendwann den Überblick verliert. Aber vom Umfang und den Verwendeten Befehlen ist Assembler einfacher als eine Hochsprache. Die Befehle wie ADD, Move , Jump und Store erklären sich ja schon von selbst. Und damit allein lassen sich schon sehr coole Dinge konstruieren. Und es gibt Assamblersimulatoren, wo man einfache Programme drin schreiben kann und diese sind auch auf einem Niveau mit dem Mathematikunterricht eines 14 Jährigen. Wir haben in der Schule auch kleine Assemblerprogramme geschrieben und das hat richtig viel Spaß gemacht. Das finde ich gar nicht so dumm damit mal anzufangen, wenn man so einen geeigenten Assemblersimulator findet mit einem dazu passenden Tutorial.



Jap z. B. eine Ampel xD - hab das gerade auf meiner FP gefunden^^ scheinen noch reste aus meiner Ausbildungszeit zu sein

```
include reg51.inc
 
code at 0
 
light equ p2 
 
main: mov ampel, #31h

input: jnb ampel.5, eingabe
            mov ampel, #32h
            mov ampel, #34h
            setb ampel.6
            
            mov ampel, #2ch
            mov ampel, #34h
            mov ampel, #36h
            
            ljmp main
            
end
```


----------



## fermi (21. Dezember 2013)

Ja es gibt Simulatoren, da ist die Notation verständlicher. Dort kommt es dann nur auf die Befehle die dazugehörigen Variablen und vllt noch Sprungmarken an. Das sieht dann schon netter aus


----------



## Shona (21. Dezember 2013)

fermi schrieb:


> Ja es gibt Simulatoren, da ist die Notation verständlicher. Dort kommt es dann nur auf die Befehle die dazugehörigen Variablen und vllt noch Sprungmarken an. Das sieht dann schon netter aus


Ich glaube so ein Programm was du meinst ist RIDE -> RIDE 8051 Integrated Development Environment <- damit haben wir in der Schule gearbeitet


----------



## fermi (21. Dezember 2013)

es gibt Simulaoren für Assembler, die sich nur! auf rund 30 einfache Befehle wie add sUB muL JUMP STORE MOVE usw bechränken. Dann noch jeweils zwei Operanden und Sprungmarken und es geht auch schon los!


----------



## Knaeckebrot93 (21. Dezember 2013)

Ohje man kann nem 14 Jährigen der mit Programmieren anfangen will doch kein Assembler empfehlen ^^.
Klar kann man damit auch einfache Programme schreiben ,aber sobald man bisschen mehr damit machen will als Hello World auszugeben wird es wohl schon echt komplex.

Ich würde ihm auch Java ,oder C# empfehlen ,weil damit kann er auch mal mit relativ wenig aufwand ne GUI programmieren o.ä. .
Nem 14 Jährigen wird es vermutlich nicht soviel Spaß machen erstmal 3 Jahre Konsolen Anwendungen zu schreiben ,bis er ne einigermaßen vernünftige GUI hinbekommt.


----------



## AnonHome1234 (21. Dezember 2013)

Knaeckebrot93 schrieb:


> Ohje man kann nem 14 Jährigen der mit Programmieren anfangen will doch kein Assembler empfehlen ^^.


 
Warum denn nicht?


----------



## Gast20140625 (21. Dezember 2013)

AnonHome1234 schrieb:


> Warum denn nicht?


 Nicht wegen den 14, aber wenn er noch nie was programmiert hat und sich das ganze erstmal anschauen möchte, muss er sich ja nicht direkt Sachen wie Assembler antun.


----------



## Knaeckebrot93 (21. Dezember 2013)

AnonHome1234 schrieb:


> Warum denn nicht?


 
Weil er dann mit ziemlich großer wahrscheinlichkeit nach kurzer Zeit keine Lust mehr daran findet.
Als Anfänger will man auch mal die ein oder andere für sich selbst nützliche Anwendung schreiben ,oder mal eine GUI erstellen.
Viel Spaß dabei sowas mit Assembler zu machen.


----------



## PhilSe (21. Dezember 2013)




----------



## Shona (22. Dezember 2013)

john201050 schrieb:


> Nicht wegen den 14, aber wenn er noch nie was programmiert hat und sich das ganze erstmal anschauen möchte, muss er sich ja nicht direkt Sachen wie Assembler antun.


 Das ist aber kein grund, den Assembler ist ein sehr schöne Sprache und vor allem die Sprach die der PC eigentlich nur versteht.
In was glaubst du sind Treiber geschrieben? bestimmt nicht in C, C++, C# oder Java...Nein sondern in Assembler weil es die Maschinensprache ist die ein Rechner bzw. ein CPU (Microcontroller) versteht.

Was glaubst du was mit einem Programm passiert das du in C, C++ oder C# passiert wenn du es kompilierst? Genau es wir in Assembler umgewandelt ansonsten wüsste die CPU (der Microcontroller) doch gar nicht was er machen soll.



Knaeckebrot93 schrieb:


> Weil er dann mit ziemlich großer wahrscheinlichkeit nach kurzer Zeit keine Lust mehr daran findet.
> Als Anfänger will man auch mal die ein oder andere für sich selbst nützliche Anwendung schreiben ,oder mal eine GUI erstellen.
> Viel Spaß dabei sowas mit Assembler zu machen.


Wieso soll er keine Lust mehr haben, kannst du hellsehen?
Außerdem kann er sich doch immer noch umentscheiden wenn im Assembler zu schwer wird.
Und nein als Anfänger will man ganz gewiss nicht nützliches machen sondern eher etwas das funktioniert und in welcher Sprache das nun ist, ist vollkommen egal hauptsache das ergebnis stimmt.

Ich hatte z. B. ein Buch von meinem Ausbilder bekommen das am Anfang alle Beispielprogramme in Assembler drin hatte und dann umgefähr nach 2/3 wurde alles Widerholt aber diesmal in C. Somit hatte ich ansich Assembler und C gleichzeitig gelernt was sogar dann noch einfacher war beides zu verstehen.



PS: Sollte ich was falsches geschrieben haben dann bitte berichtigen aber das ist das was ich damals gelernt habe.


----------



## Crysis nerd (22. Dezember 2013)

*An den Threadersteller: Das Folgende ist nicht wirklich an dich gerichtet, und hilft dir wohl nicht!*
Shona: Auch deine Assemblerprogramme werden weiterverarbeitet. Was "der PC" versteht ist ein binäres Datum. Das Programm wird Byte für Byte im Speicher abgelegt und keinesfalls in der Form "JUMP" und "MOVE". Nein nein, letztendlich stehen da die Opcodes für deine Befehle mit den jeweiligen Operanden drin. 
Also ist auch dein Assembler scheinbar nicht "ganz unten". Aber warum programmierst du Assembler und nicht direkt in Opcodes? Weil du 
7EFF038B0103
einfach viel schlechter lesen kannst, als 
JUMP LabelA;
ADD ECX EAX;

Und genauso haben sich die Hochsprachen weiterentwickelt: Zur besseren Lesbarkeit. Aber das ist nicht das einzige, was Hochsprachen, wie C++, ausmachen, sondern es werden mehrere Level an Abstraktion hinzugefügt. "Abstraktion", das war dieses tolle Ding, womit man überhaupt sinnvoll mit PCs arbeiten kann:
Wenn man sich anguckt, wie ein PC aufgebaut ist, kann man auf der phsyikalischen Ebene anfangen, dann ist man bei Logik-Bausteinen wie AND und OR, daraus baut man sich kleine Schaltnetze, die diverse Funktionen erfüllen, diese Schaltnetze verkettet und verbindet man auch noch mit Schaltwerken, das alles schließt man an einen Bus an und und und. Alle diese Schritte, sind Schritte von Abstraktion. Wenn man ein Teil für sich fertig hat, betrachtet man nurnoch die Außenansicht und interessiert sich nichtmehr für das innere. Wenn man einen Addierer baut, ist man mindestens schon auf der Ebene der Logikgatter und interessiert sich nichtmehr für das rein physikalische. Und später beim CPU Entwurf arbeitet man meist auf einer sog. Registerebene, wo man schon mit Registern arbeitet. 
Niemand könnte diese unheimliche Komplexität des PCs verstehen und nutzen, wenn man nicht extrem abstrahieren würde. 

Und das ist halt ein Prinzip der Hochsprachen. Dort hat man dann Klassen, die Methoden haben und direkte einen riesigen Haufen von Assemblerbefehlen ausführen. Wenn ich bestimmte Teile meines Programms fertig habe, kann ich sie nutzen und zwar wieder auf einer höheren Abstraktionsstufe, sodass ich von dort aus schneller vorran kommen kann. Genau deswegen wird das meiste in Hochsprachen programmiert.
Im übrigen möchte ich nochmal betonen, dass ich nicht nur meine, dass Hochsprachen einfacher sind und daher besser. Das stimmt nicht, weil ich mich gerne über viel zu einfache Sprachen aufrege. 

Das wollte ich nurmal erwähnt habe. Klar kann ich deine Argumentation verstehen, aber es ist 1. für Anfänger viel schwieriger zu verstehen und 2. Nicht wirklich anwendungsnah, da er später wohl eher nicht im Mikrocontrollerbereich arbeiten wird.

Schönen Abend noch!


----------



## Gast20140625 (22. Dezember 2013)

@Shona:
Natürlich wird das in Assembler übersetzt. Aber wo ist jetzt dabei das Argument es gleich selbst in Assembler zu machen?
Irgendwann ist es nur noch Binärcode. Soll ich jetzt anfangen alles direkt binär hinzuschreiben?

Ja, in Assembler hardwarenah zu programmieren ist effizienter, aber er versucht ja nicht irgendwas großes auf einem uralten Microcontroller wie z.B. nem 8051 zum laufen zu bringen.


EDIT: Man, hab ich jetzt lang getrödelt.


----------



## Evandar (22. Dezember 2013)

Shona schrieb:


> Das ist aber kein grund, den Assembler ist ein sehr schöne Sprache und vor allem die Sprach die der PC eigentlich nur versteht.In was glaubst du sind Treiber geschrieben? bestimmt nicht in C, C++, C# oder Java...Nein sondern in Assembler weil es die Maschinensprache ist die ein Rechner bzw. ein CPU (Microcontroller) versteht.


Neben dem was Crysis nerd schon angesprochen hat, befürchte ich ehrlich gesagt das es heute so einfach nicht mehr gemacht wird. Ich kann mir nicht vorstellen das man Treiber noch in Asm entwickelt. Es mag Ausnahmen gegen, diese sind dann aber sicherlich sehr selten. Zu meiner Studienzeit (auch schon 10 Jahre her) haben wir auch alles in C/C++ entwickelt und dann nur die Stellen die wirklich notwendig waren selbst optimiert. Warum sollte das heute anders sein?

Das Argument, dass Asm die einzige Sprache ist, die der PC versteht zieht an dieser Stelle auch nicht. Soweit ich weiß sind alle relevanten Operations Systeme in C und nicht etwa in Asm entwickelt. Der Grund dafür ist ganz einfach, es einfach leichter beherrschbar ist. Diese Systeme werden übersetzt und sind dann genauso lauffähig, wie Asm oder Oppcode. 

Bei heutigen Compilern würde ich sogar behaupten das jeder halbwegs gute Compiler einen besseren Maschinen Code erzeugt, als die meisten Gelegenheits-Asm-Entwickler. Will hier keinen zu nahe treten, aber das sind einfach Sachen die eine Maschine besser kann als ein Mensch. 



Shona schrieb:


> Was glaubst du was mit einem Programm passiert das du in C, C++ oder C# passiert wenn du es kompilierst? Genau es wir in Assembler umgewandelt ansonsten wüsste die CPU (der Microcontroller) doch gar nicht was er machen soll.


Formale Ergänzung. C# verfolgt den gleichen Ansatz wie Java, der Code der generiert wird, ist als nicht direkt ausführbar.



Shona schrieb:


> Wieso soll er keine Lust mehr haben, kannst du hellsehen?
> Außerdem kann er sich doch immer noch umentscheiden wenn im Assembler zu schwer wird.
> Und nein als Anfänger will man ganz gewiss nicht nützliches machen sondern eher etwas das funktioniert und in welcher Sprache das nun ist, ist vollkommen egal hauptsache das ergebnis stimmt.


Hellsehen kann bestimmt keiner, aber vielleicht hat er da etwas Erfahrung. 

Ich kann mich an meine Anfangszeit noch erinnern. Wir waren zu dritt als wir gesagt haben, wir fangen an. Wollten damals programmieren lerne um ein Spiel nach unseren Wünschen zu programmieren. War ne tolle Idee ... Nach nicht mal 3 Monaten war ich allein.  Es stellte sich heraus, dass unsere Ziele etwas zu hoch waren und es so den anderen beiden die Lust genommen hat. Sicherlich lag es bestimmt nicht nur an den Zielen, aber ich denke wenn wir anders angefangen hätten, dann wäre es besser verlaufen. Ach so, nur zur Info, weil ja einige denke ich hielte 14 für zu früh. Ich war die jüngste Person damals in der Gruppe ... mit 11 Jahren.


----------



## BertB (22. Dezember 2013)

ich fang jetzt auch an, habe mir ein arduino starter paket geholt und wurde in der firma von anderen arduino nutzern ein bisschen eingewiesen
jetzt im urlaub gehts dann los
vielleicht wäre so ein microcontroller auch was für dich, CR7fan ?
da hat man dann gleich noch hardwaregebastel 
da kann man parallel die arduino homepage aufhaben, wo die befehle beispielhaft erklärt werden
ne riesen community gibts auch, massig foren, posts von projekten etc
basiert glaub auf C mit zusätzlich arduinotypischen spezialbefehlen

erinnere mich an c64 basic
von grundstruktur scheints ähnlich


----------



## Offset (22. Dezember 2013)

Ich bin auch am überlegen ob ich nen Arduino kaufen soll. Soll einfach zu programmieren sein und man hat schnell Ergebnisse.


----------



## Knaeckebrot93 (22. Dezember 2013)

Evandar schrieb:


> Neben dem was Crysis nerd schon angesprochen hat, befürchte ich ehrlich gesagt das es heute so einfach nicht mehr gemacht wird. Ich kann mir nicht vorstellen das man Treiber noch in Asm entwickelt. Es mag Ausnahmen gegen, diese sind dann aber sicherlich sehr selten. Zu meiner Studienzeit (auch schon 10 Jahre her) haben wir auch alles in C/C++ entwickelt und dann nur die Stellen die wirklich notwendig waren selbst optimiert. Warum sollte das heute anders sein?
> 
> Das Argument, dass Asm die einzige Sprache ist, die der PC versteht zieht an dieser Stelle auch nicht. Soweit ich weiß sind alle relevanten Operations Systeme in C und nicht etwa in Asm entwickelt. Der Grund dafür ist ganz einfach, es einfach leichter beherrschbar ist. Diese Systeme werden übersetzt und sind dann genauso lauffähig, wie Asm oder Oppcode.
> 
> ...


 
Ich weiß es zwar nicht sicher ,aber ich denke schon das bei wirklich Hardware naher programmierung wie Treibern ,dem Kernel o.ä. weiterhin überwiegend mit Assembly gecodet wird.


@Shona Wir haben hier jemanden der mit dem Programmieren anfangen will und erstmal reinschnuppern will.
Man will dann selbst etwas erschaffen was einem nützlich sein könnte.
Außerdem sind GUIs sehr interessant für nen Anfänger wem macht es schon Spaß Jahrelang Konsolenanwendungen zu schreiben?
Der Thread Ersteller hat mit Sicherheit nicht vor irgendwelche Treiber o.ä. zu coden .
Ich finde JAVA,C#,C,C++ sind gut geeignet für einen Anfänger .
Wenn er z.B. C oder C++ lernt kann er später ja immernoch Assembler lernen ,wenn er sich das antun will ,
Das kann er dann auch in seinen Code einbinden und kann so die Vorteile beider Sprachen kombinieren.
Ich finde man sollte sich aber erstmal auf eine Sprache konzentrieren und sie vernünftig lernen ,alles durcheinander verwirrt nur unnötig.


----------



## BertB (23. Dezember 2013)

Offset schrieb:


> Ich bin auch am überlegen ob ich nen Arduino kaufen soll. Soll einfach zu programmieren sein und man hat schnell Ergebnisse.



der nackte arduino kost auch nicht viel, für ca. nen 20er gibts schon was
Arduino Uno R3 - embedded projects Online-Shop
die software gibts umsonst als download auf der arduino seite

ich hab jetzt mal son starter paket gekauft, da ist halt noch ein haufen gedöns dabei zum basteln: sensoren, 2 zeiliges display, LEDs, widerstände und ein buch für 15 vorgegebene "projekte" zum üben
wenn man das selbst zusammenstellt isses bestimmt billiger, meine eltern schenken mir das dann zu weihnachten
Arduino Starter kit - embedded projects Online-Shop

ich hab allerdings bei reichelt bestellt, aber da isses ausverkauft


----------



## taitoGER (30. Dezember 2013)

Googel mal nach "Java Hamstersimulator"


----------



## GBoos (31. Dezember 2013)

Ich bin ja fuer Python. Wundert mich das das hier so wenig vorgeschlagen wurde. Warum eigentlich? ... Java und C++ halte ich fuer Anfaenger nicht optimal.


----------



## taitoGER (2. Januar 2014)

Weil man Python nicht braucht, bzw. nur in Den seltensten Fällen. Python hat eine einfache Struktur, aber eine Programmiersprache wie c++ zu lernen ist nicht schwer. Desweiteren, wenn man in seinem Berufsleben in die Informatik gehen will, sind c#, c++ und Java nunmal die Sprachen, die am meisten verwendet werden. Und beim Informatik Studium wird auch meistens erstmal Java rein getrieben.

Wie gesagt, es gibt zwar einfacheres als C++, aber das macht C++ nicht schwer bzw. Java


----------



## SebastianB-Photo (10. Februar 2014)

@CR7 Mich würd jetzt interessieren, welche Sprache du verwendet hast. 
Aber ganz ehrlich Leute, es ist doch immer das selbe. Eine Frage, eine Million Antworten ^^


----------



## Grim3001 (10. Februar 2014)

Ich finde codeacademy.com ganz nett. Da kann man sich eine der angebotenen Sprachen aussuchen und mal reinschnuppern.


----------



## Hänschen (11. Februar 2014)

Ist es eigentlich OK wenn man oben anfängt zu Programmieren ?
 Wie wärs wenn man erst einen Microcontroller in Assembler, also maschienennah programmiert ?

 Ich weiss noch als ich mein erstes C Programm las da platzte mir fast der Schädel, da hab ich nix gecheckt.
 Dabei kannte ich Assembler und Basic vorher. Klassen und komische Typ-Zuweisungen wie in den Hochsprachen sind ja ein sehr großer Schritt für einen Laien finde ich.


----------



## XPrototypeX (11. Februar 2014)

Naja am besten ist es eigentlich man fängt mit einer Hochsprache an. Java bietet sich hierbei besonders, da es meiner Meinung nach einer der umfangreichsten und sehr gut dokumentierten APIs hat. Bis du die Basics verstehst und auch anwenden kannst vergeht bestimmt ein halbes bis komplettes Jahr. Vor allem ist es immer gut zu verstehen was hinter den Kulissen passiert. Nicht einfach "oh ich drück jetzt den Knopf und das Programm startet". Später würde ich mir dann eine andere Sprache wie C oder C++ anschauen (Eventuell auch D).

Warum ich gegen C++ als Anfängersprache bin: 

C++ bietet dem Programmierer zu viele Freiheiten. Am Ende kommt viel Murks heraus ganz nach dem Motto es funktioniert doch. Java mit seinem strikten OO Design ist da wesentlich besser.


----------



## DarkMo (11. Februar 2014)

wenn da aber murks bei rauskommt, liegt das aber eher am programmierer, der mit den möglichkeiten nicht zurechtkommt ;P die möglichkeiten überhaupt zu haben, find ich zumindest besser, als sie komplett vor zu enthalten.

aber wegen dem "oben" anfangen... was intressierts nen gärtner, wie die biologie der züchtungen funktioniert? mal ganz blöde gesagt. oder nen "autobauer", der am fließband steht und kabelchens verlegt und ansteckt, wie das alles wirklich funzt? tiefer in die materie gehen kann man immernoch, wenn man möchte, aber möchte man einfach irgendein programm bauen, wird man da ganz sicher NICHT mit assambler anfangen wollen ^^


----------



## XPrototypeX (11. Februar 2014)

Ich finde schon ein Entwickler sollte auch in ansetzten verstehen was unter der Haube passiert. Natürlich nicht bis ins kleinste Detail. Zum Thema murks als Anfänger macht man halt Murks und ich habe auch schon in C++ geschriebene Frameworks gesehen die Klassen verwenden aber auch prozedurale Funktionen drinnen haben. Das finde ich einfach hässlich und sehr undurchdacht. Dann lieber eine Sprache wie Java in der so etwas nur schwer zu machen ist. 

Zu deinem unteren Absatz. Mehr habe ich irgendwie auch nicht geschrieben. Wenn man näher an die Hardware will bitte. Man sollte sich aber erst mal mit dem Konzept der Programmierung auseinander setzten. Dafür eignet sich halt Java oder C# am meisten.


----------



## sepei (12. Februar 2014)

Ich persönlich würde mit VB.Net starten.
Einfache sprechende strukturierte Sprache.
Und wenn man Programmiern von der Logik verstanden hat ist es sowiso egal in welcher Programmiersprache man programmiert. Mittlerweile habe ich schon soviele Sprachen durch das ich teilweise nichtmal mehr IF Syntax von einer Programmiersprache weiß da es bei jeder etwas anders geschrieben wird.


----------



## SebastianB-Photo (17. Februar 2014)

Codecademy ist eine gute Sache! 

Edit: Sehe Grimm hat das auch schon gepostet.


----------



## Eco_F83R (17. Februar 2014)

Aloha 

Also ich habe in den 80ern (schei.. ist das lange her  ) mit dem Commodore 128er Basic angefangen. Irgendwann habe ich mir (X)HTML angetan (was keine Programmiersprache ist!) und kurze Zeit später mit PHP4 weiter gemacht (alles Privat)
Wie schon von anderen erwähnt schlage auch ich vor erstmal mit dem Arduino etwas zu machen. Schnell Erfolg und echt easy zu programmieren (spreche da aus Erfahrung da ich auch erst vor kurzem angefangen habe). Auch schon erwähnt wurde das, sollte es irgenwann mal dazu kommen das du studieren möchtest oder einen Beruf in diesem Bereich wählst, Java und C/C++ die Sprachen sind die sicher am häufigsten benötigt / genutzt werden.
Suche im Netz nach den unterschiedlichen Sprachen. Schau dir Codebeispiele an und entscheide nach dem was dir gefällt. Probiere es aus; entweder es passt oder auch nicht. Dann fängst mit einer anderen Sprache an usw.
Zu Amiga-Zeiten kannte ich jemanden der die Kleine in Assembler programmiert hat. Ich meine er wäre so um die 15 Jahre alt gewesen zu der Zeit (Anfang der 90er Jahre). Ihm hats Spaß gemacht (was wohl aus ihm geworden ist?)

Gruß,
Eco_F83R


----------

