PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Programmieren lernen! Mit was fange ich am besten an?



Cyberfreak
23.11.04, 09:59
Mit was fange ich am besten an?

Ich habe mir in der Bücherei bereits das eine C++ Buch in die Hand genommen und reingeschaut , doch die ersten 10 Seiten haben mich schon total überfordert.
Fange ich vieleicht falsch an?
Wie sollte ich am besten vorgehen? Kann mir jemand vieleicht ein gutes Buch empfehlen? Welche Grundkenntnisse benötige ich? Schon mal danke im Vorraus für die Antworten... :)

Tomek
23.11.04, 10:02
Du solltest zuerst Programmierlogik lernen und verstehen, wie z.B. Struktogramme erstellen. Diese Grundkenntnisse wirst du in allen Programmiersprachen benötigen. Dann würde ich mit der Programmiersprache C beginnen.

comrad
23.11.04, 10:07
Die Programmiersprache ist reine Geschmackssache und Sache dessen, was du machen willst. Da du nur üben möchtest, würde ich dir eine abstrakte Sprache empfehlen, denn alleine das Speichermanagement in C dürfte anfangs sehr vom Lernen der Programmierlogik ablenken.
Wenn du auf dem Papier einen Algorithmus bilden kannst, kannst du dich an das Handwerkszeug wagen und den Algorithmus in Syntax quetschen.

Pascal ist eine sehr beliebte Lernsprache. Sie ist nicht beschnitten (enthält also alles was man so braucht "pointer", "felder", "file-io" usw), aber sehr einfach zu lernen und zwingt zum ordentlichen programmieren.

Auch wenn hier einige vielleicht meinen, dass Pascal alt und langweilig ist, ist und bleibt es eine klasse Sprache um Programmieren (Programmieren != Syntax hacken) zu lernen.

comrad

Hela Wann
23.11.04, 10:13
Ich stimme comrad zu. Lerne zu erst die Logik kennen und "denke" die Programme. Wenn Du das kannst, dann ist die Sprache reines erlernen, so wie deutsch oder englisch, aber die Logik der Programme ist überall die selbe, oder wehnigstens eine sehr ähnliche.

Hela

Cyberfreak
23.11.04, 10:14
1.Also braucht man quasi als allererstes Mathematische Grundkentnisse?

2.Welche Genau?

3.Ist Pascal mit C verwand?

4.Sagen die Leute das sie alt ist weil sie nicht mehr verwendet wird oder weil sie nicht so viel kann?

Cyberfreak
23.11.04, 10:15
Ich stimme comrad zu. Lerne zu erst die Logik kennen und "denke" die Programme. Wenn Du das kannst, dann ist die Sprache reines erlernen, so wie deutsch oder englisch, aber die Logik der Programme ist überall die selbe, oder wehnigstens eine sehr ähnliche.

Hela

Ja , die Programmierlogik das hat Tomek auch grade erwähnt , aber ich versteh nicht ganz was er damit meint.?!

Thomas Engelke
23.11.04, 10:20
Pascal ist eine reine Lernsprache. Für das Lernen von allgemeingültigen Programmierrichtlinien (Algorithmik, Programmlogik) ist sie sehr gut geeignet.

Wenn man allumfassend Programmierung lernen wollen würde, so gäbe es dafür wahrscheinlich ein paar Vorschläge: Phyton als einfache Skriptsprache, C als hardwarenahe Low-Level-Sprache und Java als klare und saubere OO-Sprache.

C++ ist für den Anfang denkbar ungeeignet (siehe hier (http://catb.org/~esr/jargon/html/L/languages-of-choice.html)).

TME

Tomek
23.11.04, 10:21
Was Programmierlogik nun genau ist, verrät dir Google, wie z.B. hier:
http://www.petra-budde.de/fachinfomatikerDW/sites/programmierlogik.php3

Cyberfreak
23.11.04, 10:32
Danke sehr an alle , ihr habt mir sehr weitergeholfen.

nidhoegg
23.11.04, 10:52
Ich habe auch mal angefangen, mich in C++ einzuarbeiten, hab es aber dann aufgegeben. Die Sprache erscheint mir einfach total überladen und unstrukturiert - zumindest auf den ersten Blick, daher hab ich es dann doch aufgegeben. Ich habe dann mal ein wenig mit Python herumgespielt und glaube, daß Python wirklich eine sehr gute Sprache ist, um objektorientiertes Programmieren zu lernen. Sie ist sehr einfach und klar strukturiert und ist eine Skriptsprache, was den Vorteil hat, daß Du Dein Programm sofort ohne Kompillierorgien testen kannst. Zu Python gibt es eine Menge Dokus im Netz und auch einen freundlichen deutschen IRC-Channel.
Die andere Möglichkeit wäre C zu lernen. C ist sehr übersichtlich und auch verhältnismäßig einfach zu lernen finde ich, aber eben eine prozedurale Sprache ohne Objektorientierung.
Im Moment ist C die Sprache meiner Wahl.
Nicht zu vergessen ist dabei natürlich noch Java. Das nutze ich aber aus persönlichen Gründen nicht :D

Spiff
23.11.04, 11:22
Wenn ich noch meinen Senf dazu abgeben darf ;)

Ich bion auch der Meinung, dass man heutzutage besser mit einer Skriptsprache anfängt das Programmieren zu lernen.

Mit welcher man da anfängt ist glaube ich relativ egal. Ich liebe Perl, andere mögen lieber Python oder Ruby. Jede hat wohl ihre Stärken und Schwächen

Wenn man dann die ersten Programme erfolgreich geschrieben hat und "richtige" (was immer das heißen mag) Programme schreiben möchte, könnte man sich nach einem kurzen Abstecher über C, heutzutage auch mal Mono ansehen denke ich.

t.knopp
23.11.04, 11:41
Pascal ist eine Lehrsprache. Deshalb eignet sie sich besonders für den Einstieg. Ansonsten würde ich Java empfehlen. Die ersten Tage sind mit sicherheit härter als bei Pascal, dafür lernt man auch OO. Mit C oder C++ würde ich nicht anfangen. Ich programmiere fast nur in C und C++ aber für Anfänger ist das nichts. Das gute an Java ist auch, dass ein Umstieg auf C, C++ leichter möglich ist.

dark_red
23.11.04, 12:09
So brutal wie von euch beschrieben ist C++ auch wieder nicht. Allerdings sind die meisten Bücher dazu zu oberflächlich (teiweise sogar falsch oder bringen dem Leser schlechte Angewohnheiten bei) oder zu "hardcore" (Stroustrup?) :ugly:

Gut OOP Programmieren (Java) lernen kannst du mit Objektorientierte Programmierung mit Java" (ISBN 3-8273-7073-6) (http://www.pearson-studium.de/main/main.asp?page=bookdetails&ProductID=37199). Das Buch verfolgt einen anderen Ansatz als andere OOP/Java Bücher, liest sich sehr gut und man kann wirklich programmieren (und nicht Syntax schreiben bzw Beispiele aus dem Buch kopieren). In den meisten Kapiteln bekommt man eine Einführung und darf dann ein Beispiel erweitern und dann wird die Lösung besprochen. Hat mich überzeugt. Leichtes Wissen in einer prozedualen Programmiersprache (Schleifen, Operatoren usw) sollte man aber bereits haben.

delmonico
23.11.04, 12:10
Meine erste war Basic. Lass die Finger davon, alles Mist ;) Dann irgendwann habe ich mal was mit C und C++ gemacht aber damit bin ich nicht schnell genug ans Ziel gekommen. Meine Meinung: Wenn du Programme für Endanwender schreiben willst, nimm scriptsprachen, Python finde ich zum Beispiel sehr geil - du wirst schneller vorwärts kommen und solange z.B. das zugrundeliegende Toolkit in C geschrieben ist, ist das ganze von der Geschwindigkeit her mehr als OK, wird haben für so sachen eh alle zuviel Rechenleistung ;)

Wennst natürlich mal Betriebssysteme oder ne 3D-Grafikengine coden willst, biste vielleicht doch bei C besser beraten.

Java fällt für mich schon direkt aus dem Raster weil ich dafür kein freies Runtime Environment kenne und damit das ausführen auf einem freien System nicht möglich ist.

Kurz: nimm Python... jaaa... tuuuu es ;)

comrad
23.11.04, 12:49
Ich glaub er weiss jetzt sogar noch weniger als vorher, was er überhaupt will und soll und geht jetzt lieber wieder daddeln *g*

na, ich hoffe nicht. gute programmierer braucht das land. und keine die 25 syntaxe der verschiedensten sprachen können ;)
kaffeeverträglichkeit ist auch wichtig *g*

comrad

delmonico
23.11.04, 12:55
kaffeeverträglichkeit ist auch wichtig *g*
Wer muss kaffeeverträglich sein? Der programmierer oder die sprache? :D

btw ich denke schon, man sollte mehrere Sprachen kennen, zumindest ansatzweise und halt ihre Vor- und Nachteile. Würd ich heut noch qbasic programmieren, hätt ich probleme :D

steve-e
23.11.04, 14:44
Du solltest zuerst Programmierlogik lernen und verstehen, wie z.B. Struktogramme erstellen. Diese Grundkenntnisse wirst du in allen Programmiersprachen benötigen.

Du hast nicht zufällig ein paar Links/Buchempfehlungen parat?

cybercrow
23.11.04, 19:07
Du hast nicht zufällig ein paar Links/Buchempfehlungen parat?

Wenn du wirklich etwas lernen willst, dann gibt es das absolute Top-Buch:
Struktur und Interpretation von Computerprogrammen (http://www.bookzilla.de/shop/action/productDetails?aUrl=90006951&artiId=1239655)
Die englische original Version gibt es auch online: http://mitpress.mit.edu/sicp/

Es wird auch eine ganz andere Programmiersprache verwenden als bisher empfohlen -> scheme.
Aber diese Sprache schult den Geist und das Buch ist ein absoluter Bestseller der vom MIT kommt wo dieses Buch und die Sprache scheme zur Einführungsveranstaltung Informatik gehört. Ich denke die Leute beim MIT wissen ganz genau warum scheme die erste Sprache ist die sie ihren Studenten beibringen.
Das was du da lernst macht dich zu einem besseren Programmierer für den Rest deines lebens, egal welche Sprache du später verwendest.

cybercrow
23.11.04, 19:20
Mit was fange ich am besten an?

Ich habe mir in der Bücherei bereits das eine C++ Buch in die Hand genommen und reingeschaut , doch die ersten 10 Seiten haben mich schon total überfordert.
Fange ich vieleicht falsch an?


Nochmal etwas zur ursprünglichen Frage ;)
Ich denke das wichtigste beim programmieren ist das du Spaß dabei hast. Es muß also was sein was du machen willst und nicht etwas was theoretisch für den Anfang am besten ist.
Wenn du also C++ programmieren willst kannst du sehr wohl damit anfangen. Allerdings mußt du mit den Büchern etwas aufpassen (hast du ja selber schon gemerkt ;)), da viele schon C Kenntnisse voraussetzen oder das man schon eine andere Programmiersprache kann.
Ein gutes, einfaches und nicht so teueres Buch für eine Einstieg in C++ ist z.B. C++ Objektorientiert Programmieren von Anfang an (http://www.bookzilla.de/shop/action/productDetails?aUrl=90006951&artiId=1298746)

Scar KS
23.11.04, 19:45
Lern doch Ook!
Ook! Ook. Nein besser nicht :D
Such dir erstmal eine Scriptsprache aus.
Das ist am Anfang motivierend und bringt dir Grundkenntnisse bei.
Zu empfehlen sind python, perl, ruby.
Php ist nicht so geeignet finde ich.
Schau dir später mal Java an, und dann C++.
Scar

http://de.wikipedia.org/Brain****#Ook

steve-e
23.11.04, 20:48
Wenn du wirklich etwas lernen willst, dann gibt es das absolute Top-Buch:
Struktur und Interpretation von Computerprogrammen (http://www.bookzilla.de/shop/action/productDetails?aUrl=90006951&artiId=1239655)
Die englische original Version gibt es auch online: http://mitpress.mit.edu/sicp/

Es wird auch eine ganz andere Programmiersprache verwenden als bisher empfohlen -> scheme.
Aber diese Sprache schult den Geist und das Buch ist ein absoluter Bestseller der vom MIT kommt wo dieses Buch und die Sprache scheme zur Einführungsveranstaltung Informatik gehört. Ich denke die Leute beim MIT wissen ganz genau warum scheme die erste Sprache ist die sie ihren Studenten beibringen.
Das was du da lernst macht dich zu einem besseren Programmierer für den Rest deines lebens, egal welche Sprache du später verwendest.

Ich muss die Recht geben, ich hatte wirklich vor etwas zu lernen.
Wir fangen jetzt in der Schule an mit dem Programmieren, bin mir aber nicht sicher wie viel dabei jetzt rauskommt.

Hab mir auch gedacht, dass die Grundlagen erstmal wichtig sind, eine Sprache (z.b Python) sollte dann das geringe Problem darstellen. (?)

Hagbard
23.11.04, 20:59
Phyton als einfache Skriptsprache

es heisst Python. Wenn ich Phyton lese rollen sich mir immer die Zehnägel hoch :ugly:

@TOPIC:
Ich würde erstmal mit einer Scriptsprache (vorzugsweise Python) anfangen. Python hat zum beispiel eine einfache Syntax und somit kannst du dich voll auf die Programmierlogik konzentrieren.

mfg

Thomas Engelke
24.11.04, 16:20
es heisst Python. Wenn ich Phyton lese rollen sich mir immer die Zehnägel hoch :ugly:

Eine große Entschuldigung. Ich empfehle ein paar Hiebe mit einer 9-schwänzigen Katze auf meinen Rücken :ugly:

TME

cybercrow
24.11.04, 16:26
Wir fangen jetzt in der Schule an mit dem Programmieren, bin mir aber nicht sicher wie viel dabei jetzt rauskommt.


Naja, dann ist die Frage doch schon beantwortet. Du fängst mit der Sprache an, die ihr in der Schule verwendet. Wenn du vorher noch nicht programmiert hast und jetzt anfägst zwei Sprachen auf einmal zu lernen (schule && privat), kann das eigentlich nur schief gehen.
Ihr werdet in der Schule sicher bei Null anfangen. Also einfach in der Schule lernen und dir parallel dazu noch ein Buch zu der entsprechenden Programmiersprache besorgen und bei interesse die Sache vertiefen die du sowieso in der Schule lernst oder vorraus lernen.

Hagbard
24.11.04, 16:29
Eine große Entschuldigung. Ich empfehle ein paar Hiebe mit einer 9-schwänzigen Katze auf meinen Rücken :ugly:

TME

geht klar ;)

mfg

Furzeimer
24.11.04, 18:02
Wenn du Programme für Endanwender schreiben willst, nimm scriptsprachen, Python...
Oh mein Gott! Da rollen sich bei mir alles hoch. Python ist zwar eine tolle Sprache, aber Scriptsprachen sind höchstens zum Prototyping zu benutzen.(ok, es gibt auch Ausnahmen, z.B. Bittorrent) Die dynamische Typisierung erlaubt es enorm schnelle Ergebnisse zu erzielen (eben genau richtig zum Prototyping), aber sobald das Programm einige 10.000 Zeilen lang ist, wird es unmöglich Fehler durch die dynamische Typisierung zu finden.

Im Moment halte ich Java für eine sehr geeignete Sprache. Leicht zu erlernen, enorme Vielfalt an Bibliotheken, benutzbares Alter und viele tolle Neuerungen in 1.5 (z.B. Generics).

Leider ist nicht alles mit Java machtbar (z.B. Devicetreiber). Solltest du also auch hier irgendwann mal etwas machen wollen, so kommst du nicht an C/C++ vorbei. Die Sprache ist mitlerweile so alt, dass man sie meiner Meinung nach als "verwurstet" und nicht mehr zeitgemäß betrachten kann. Allerdings lernt man in C/C++ auch viel durch die Pointerarithmetik. Auf diese Weise ist man auch bei Java ordentlicher und vermeidet Speicherlecks z.B. durch gehaltene Referenzen in Collections.
Ich persönlich finde es noch sehr wichtig, sobald man mit der OO Programmierung anfängt, UML zu erlernen. Es ist ISO Standard und wird in vielen Unternehmen als Beschreibungssprache vorrausgesetzt.
Außerdem zwingt man sich dazu, sich wirklich im vornherein Gedanken zu dem Produkt zu machen.

Zu Pascal kann ich leider wenig sagen, da ich wenig damit gearbeite habe, aber ich glaube Pascal ist wie Video2000. Es setzt sich eben nicht immer das Beste durch :o

Bis denne

Furzeimer