• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Programmieren für Einsteiger

Caput

Member
Hallo,

ich hab bis jetzt keine Ahnung vom Programmieren und will das jetzt unbedingt lernen. Was ich letztendlcih programmieren will, weiß ich noch nicht.

Kann mir jemand ein Programmiersprache empfehlen, mit der man die Gründzüge des Programmierens recht einfach lernt und die Anfängergerecht ist???

P.S.: Es sollte nat. ein kostenloses Prog. geben, wo ich reinschreiben kann ---> Für Linux natürlich (Suse 9.2)
 

nbkr

Guru
Kommt immer darauf an, was Du machen willst. Willst Du sehr Hardwarenah programmieren -> C(++). Willst Du schnell in OOP einsteigen und evlt. ein wenig Scripten oder gar Oberflächen schreiben -> Python. Willst Du Webseiten programmieren -> PHP. Willst Du plattformunabhängig sein -> Java (obwohl das PHP und Python auch sind). Willst Du die Theorie des Programmierens verstehen, allerdings ohne wirklich Produktiv was zu machen -> Pascal (an die Pascalprofis: nicht steinigen).

Also wie gesagt, such dir ein Projekt was Du machen willst, dann kann man genaueres über die Sprache sagen.

Übrigens gibt es für alle genannten Programmiersprachen kostenlose Umgebungen.
 

cero

Guru
Fang doch erst einmal mit einer Scriptsprache (Perl, Python, PHP,...)
an, dann musst Du Dich nicht mit Compiler, Debugger, etc.
rumschlagen. Wenn Du die Grundzüge gelernt hast, kannst Du
immer noch zu einer Compilersprache (C/C++) wechseln.
Sonst überleg Dir was nbkr geschrieben hat - was willst Du am
ehesten machen?
 

Dr. Glastonbury

Advanced Hacker
Werde ich hier in Einzelteile zerlegt, wenn ich jetzt was von QBasic erzähl?

Mal kurz, was ich daran so toll finde^^:
- man kann sehr schnell einfache bis mittlere Projekte durführen
- is ne Interpretersprache; man kann aber auch kompilieren
- sowohl Hardware-programmierung (Soundblaster, Schnittstelle), als auch Anwendungsprogramme lassen sich leicht erstellen
- mit der Future-library hat man die volle VESA-"Bandbreite" zur Verfügung und noch hunderte weitere neue Features
- durch DOS braucht man keine großartigen Anforderungen

Dazu gibs noch n Haufen weitere Vorteile
Nachteil ist natürlich ganz klar, dass man kein klassen- und objektbasiertes Programmieren lernt, wobei das ja bei PHP auch ned der Fall wäre.

Aber ich hab durch Basic Programmieren gelernt; zwar bin ich kein besonderer Crack, aber für die Programmierung von nem Roboter hats gereicht ;).
 

cero

Guru
Dr. Glastonbury schrieb:
Werde ich hier in Einzelteile zerlegt, wenn ich jetzt was von QBasic erzähl?
Auf keinen Fall. IMO hat jede Sprache seine Daseinsberechtigung, egal
ob sie jemanden gefällt oder nicht. Wir haben doch die Auswahl - das ist
doch das tolle :D
 

nbkr

Guru
Dr. Glastonbury schrieb:
Nachteil ist natürlich ganz klar, dass man kein klassen- und objektbasiertes Programmieren lernt, wobei das ja bei PHP auch ned der Fall wäre.

Naja, also mit PHP5 geht das ganz wunderbar. Ok, ist nicht ganz so strikt wie Java oder Python, aber immerhin.

Ansonsten: QBasic? War das nicht das mit dem

Code:
10 print "Spagehtiiiiiii"
20 goto 10

??? Davon würde ich einem Anfänger abraten, ja es ist leicht zu verstehen, aber wenn man das erstmal drin hat und dann auf was anderes (und sei es "nur" prozedurale Programmierung) umsteigen will tut man sich schon schwer.
 

regexer

Advanced Hacker
cero schrieb:
Fang doch erst einmal mit einer Scriptsprache (Perl, Python, PHP,...)
an, dann musst Du Dich nicht mit Compiler, Debugger, etc.
rumschlagen. Wenn Du die Grundzüge gelernt hast, kannst Du
immer noch zu einer Compilersprache (C/C++) wechseln.
Wenn man dieses Vorgehen wählt, ist perl nicht schlecht, da es sich an C orientiert. So würde einem der Umstieg Scriptsprache --> zu C/C++ nicht schwer fallen.
 

bmg4ever

Newbie
nbkr schrieb:
Willst Du die Theorie des Programmierens verstehen, allerdings ohne wirklich Produktiv was zu machen -> Pascal (an die Pascalprofis: nicht steinigen).

:D

zurück zum thema:
Also ich bin ganz gut mit PHP als absoluter Grundlageneinstieg gefahren. Das macht aber auch nur Sinn, wenn du auch wirklich ne Idee für ne Website hättest. Zwar gibt es mittlerweile auch PHP-Compiler, aber dann nehm lieber gleich eine klassiche Compilersprache, wie C/C++.

Für C kann ich dir www.pronix.de empfehlen. Das Open-Book ist einfach klasse.

Desweiteren denke ich, dass es als Einsteiger nicht schlecht wäre mit einer vernünftigen Entwicklungsumgebung zu arbeiten. Also so etwas wie Visual Studio oder Borland Produkte (oder andere gute unter Linux, da fallen mir nur gra keine Beispiele ein). Es ist einfach praktisch, wenn die IDE die Funktionsbibliothek kennt und einem immer live anzeigt welche Parameter für eine Funktion benötigt werden.
 

Keepers

Advanced Hacker
QBasic ist in der Tat eine sehr leicht zu erlernende Sprache, meine aller ersten Anfaenge mit 10 hab ich darin gemacht. Hui das war lustig staendig irgendwelche Sinnlosen Textadventures oder Testprogramme gebastelt um mich Vokabeln abzufragen *g*

Zu C:

C ist, imho, auch eine Anfaengersprache. Der Syntax ist nicht zu komplex und mit den Grundlagen des Programmierens kann man doch sehr schnell Erfolge erzielen. Wuerde ich zumindest empfehlen. Der Umstieg von C -> C++ oder einer anderen OOP war fuer mich etwas schwieriger; doch man kriegts auf jeden Fall hin.

Eine gute Seite zu C ist mit Testaufgaben auch www.c-programme.de
 

Dr. Glastonbury

Advanced Hacker
nbkr schrieb:
Ansonsten: QBasic? War das nicht das mit dem

Code:
10 print "Spagehtiiiiiii"
20 goto 10

??? Davon würde ich einem Anfänger abraten, ja es ist leicht zu verstehen, aber wenn man das erstmal drin hat und dann auf was anderes (und sei es "nur" prozedurale Programmierung) umsteigen will tut man sich schon schwer.

Also QBasic hat schon keine einzelnen Programmzeilen mehr. Functions und SUBs wie bei Pascal gibts auch - eigentlich isses sogar besser als Pascal - wenn man mal davon absieht, dass es einem keine Strichpunkte abverlangt (die da -> ;).

Also ich denke schon, dass man mit QBasic n guten Einstieg macht ;)
 

scg

Hacker
Ne feine Sache ist auf jeden Fall Java.

Freie Entwicklungsumgebung am besten Eclipse 3.1 unter www.eclipse.org

Gibts nen Haufen Online-Doku oder auch gute billige Bücher z.B. bei www.terrashop.de .
 

TeXpert

Guru
scg schrieb:
Ne feine Sache ist auf jeden Fall Java.

Freie Entwicklungsumgebung am besten Eclipse 3.1 unter www.eclipse.org

ich bin mittlerweile recht stark von netbeans begeistert ;) das Autocomplete funktioniert sehr gut, man merkt halt die Java-runtime :) aber bei genug PS im Rechner lässt sich damit sehr gut arbeiten.
 

taki

Advanced Hacker
Ich kann nur sagen, dass ich von C++ mit Qt3 und KDE begeistert bin. Dieses Framework macht es relativ leicht, sehr schnell Erfolgserlebnisse zu erhalten. Sicher, auch hier geht ohne Anstrengungen nichts. Aber die Klassen der Qt-Bibliothek nehmen einem schon sehr viel Arbeit ab. Mit KDE macht das ganze dann noch mehr spaß, weil man sich auf das Wesentliche seiner Applikation konzentrieren kann und nicht für alles mögliche das Rad neu erfinden muss...

Mein Einstieg waren ein schon etwas verstaubtes, aber im Kern immer noch sehr gutesn Einsteigerbuch namens "C++ programmieren mit Linux" (Verlag? hab es gerade nicht zur Hand weil nicht zuhause... Erschienen im Jahr 2000), viele interessante Seiten auf developer.kde.org, von wo ich auch die Emfehlung für das sehr aufschlussreiche Buch "Effektiv C++" hatte. Die Klassenreferenz von Qt3 ist sehr gut aufgebaut. Die von KDE ist auch gut, aber dort vermisse ich Beispiele. Die findet man aber, wenn man ein par KDE-Sourcen zur Hand hat. Ich liebe Open Source. Es gibt keinen besseren Weg zum Lernen als in die Sourcen gut funktionierender Programme zu schauen. Und vor allem lernt man dabei ganz schnell, dass es nie DEN EINZIGEN richtigen Weg gibt. Es ist ein immerwährender Prozess. Mit der Zeit findet man immer wieder neue bessere Lösungen für ein Problem, das man einmal gelöst zu haben meinte. Aber genau das macht auch mit den wesentlichen Reiz aus :)
 
Oben