Hallo!
Ich finde Programmieren ja total faszinierend, kann es aber nicht. Wie
lerne ich am besten programmieren? Welche Sprache soll ich lernen? Gibt
es da gute Bücher?
Es is stinklangweilig und macht kopfweh aber der Kaffee ist gut.
nej, "was willst du programmieren?" ist hier wohl die Gegenfrage die
erst beantwortet werden muss bevor dir irgendwer vernünftig helfen kann
:)
@ Kurt Zimmermann (Firma PCU) (kurt03)
>lerne ich am besten programmieren?
Bücher lesen, Beispiele durcharebiten, selber kleine Programme
schreiben.
> Welche Sprache soll ich lernen?
Meine Meinung. In dieser Reihenfolge ist es am leichtesten, in die Welt
der Programmierung einzusteigen
1.) BASIC, möglichst ohne GOTO Befehl
Pascal war füher mal recht gut und beliebt, ist leider nicht mehr ganz
up to date, wenn man einen brauchbaren Compiler noch auftreiben kann
(z.B. Delphi), das ist das eine Alternative.
2.) C, der Klassiker und defacto Industriestandard; Aber mit VIELEN
Fallstricken und offenen Messern gespickt. IMO GAR NICHT für Einsteiger
geeignet!!! Da hab ich als schon recht routinierter Programmierer noch
tierisch geflucht!
3.) Assembler, wird heute nur noch selten gebraucht, ist aber im Feld
der Mikrocontrollerprogrammierung bisweilen nützlich
> Gibt es da gute Bücher?
Ja. Direkte Empfehlung kann ich keine geben, weil meine Bücher die ich
damals so hatte alle antiquiert sind, aus Ostzeiten. Der Klassiker ist
immer noch "Programmieren in C", entweder das Original (in deutscher
Übersetzung) oder diverse Klone davon.
http://www.mikrocontroller.net/buecher/
Dann gibt es noch diverse "Schiki Micki Sprachen" wie Java, C# (C Sharp)
etc. Damit kenn ich mich aber nicht aus.
MfG
Falk
Vielleicht können ja mal einige erfahrenere Leute ihre Lernlaufbahn
auflisten, immerhin scheint ihr Weg schonmal mehr oder minder
erfolgreich gewesen zu sein ;)
Also:
Los ging alles mit einem alten Robotron KC87 (2.5 MHz, 16kB Ram und
genauso viel ROM, Programme wurden von klassischen Audio-Kassetten in
Form von Tonfolgen geladen)), an dem habe ich mir anhand der
mitgelieferten Anleitung BASIC beigebracht. An weitere Literatur zu
kommen war da als Schüler zu Ost-Zeiten leider etwas schwierig.
Einige Jahre später gab es dann den ersten PC, an welchem ich mich mit
QBASIC versucht habe, auch hier war die QBASIC-Doku recht hilfreich.
So richtig am PC programmiert habe ich dann erst mit Pascal, auch noch
unter DOS. Hierfür gabs dann in unserer Dorf-Bücherei immerhin schon
einige Bücher aus den späten 80iger-Jahren.
Irgendwann viel mir dann ein Buch über x86-Assembler in die Hände, das
hat dann meine Leidenschaft für Hardware-nahe Programmierung geweckt,
die bis heute noch erhalten geblieben ist. Als Einstieg kann ich hier
Rainer Backer "Programmiersprache Assembler" empfehlen, allerdings ist
das auch schon sehr eingestaubt. Ausserdem wird Assembler am PC schon
seit Jahren nicht mehr im professionellem Bereich eingesetzt. Sogar alle
aktuellen Betriebssysteme sind zu 99.9% in C/C++ geschrieben. Allerdings
gab (gibt?) es bis in die späten 90iger Jahre eine recht aktive
Demo-Coding-Szene wo nach kleinere Animationen und Mini-Spiele in
Assembler (ja, auch unter Windows/OpenGL!) programmiert wurden.
Ende der 90iger Jahre hab ich dann nach einem kurzem auf C/C++
umgesattelt, hier hat mir das Buch "Jetzt lerne ich C++" von
Markt&Technik einen guten Einstieg gegeben. Tiefer in die Programmierung
bin ich dann durch Stefan Zerbst's wunderbares Buch
"3D-Spieleprogrammierung mit DirectX" eingestiegen.
Kurz vor Studi-Beginn (Elektrotechnik/Nachrichtentechnik) hab ich dann
meine Begeisterung für die AVRs entdeckt, die man endlich wieder
sinnvoll in Assembler programmieren kann (zumindest bei den Tinys ist es
teilweise immer noch sinnvoll, komplette Anwendungen in Assembler zu
schreiben).
Meiner Meinung nach ein guter Einstieg:
Besorg dir das alte DevCpp-Paket (das ist eine freie
Entwicklungsumgebung für C/C++) und eine Einführung in die
C-Programmierung. Hoffe es kann hier im Forum jemand dazu ein paar Tipps
geben.
Der DevCpp ist zwar mittlerweile auch schon etwas angestaubt, aber
gerade dadurch ist er auch nicht so komplex wie andere moderne
Werkzeuge. Damit sollte erstmal ein frustfrei(erer) Start möglich sein.
Halte dich zunächst an einfache Konsolen-Anwendungen (also Programme im
'Dos'-Textfenster), die sind wesentlich einfacher zu überblicken als
komplexe grafische Programme und du kannst in Ruhe erstmal alle
Eigenheiten der Sprache C erlernen. Ausserdem kannst du hier schön Zeile
für Zeile durch deine ersten Gehversuche springen.
C auf einem Mikrocontroller ist für den Einstieg nicht zu empfehlen, da
hier extrem viele Fallstricke lauern.
>Vielleicht können ja mal einige erfahrenere Leute
Ach Leute...
Erstens ist es doch für einen heutigen Anfänger völlig schnuppe, wie wir
mal angefangen haben. C-64 und Datasette, oder Pascal an der Uni mit
Teletyper?
Und: Der Threadstarter hat weder gesagt wie alt er ist noch ob er mal
Informatikprofessor werden will oder nur ein paar paar elementare
Basic-Anweisungen abarbeiten will.
Und er hatte auch nich gesagt, ob er unter Windows oder Linux oder gar
auf einem Mikrocontroller lernen möchte.
Programmieren kann man ein Excel-Skript oder einen Texteditor mit Delphi
zusammen klicken. Ist beides irgendwie programmieren,oder?
Also wen der Topic-Eröffner etwas genauer schreibt was er eigentlich
lernen möchte, dann kann man auch etwas detailierter Tipps geben.
Neulich (Ausgabe 17/2008) hatte CT das Visual Studio 2008 Express auf
der CD.
http://www.heise.de/ct/08/17/122/
Kann auch bei MS direkt geladen werden:
http://www.microsoft.com/germany/express/
Für die enthaltenen Sprachen gibt es unzählige Foren, Beispiele
und Bücher. Für kleine Anwendungen bestens geeignet, auch um seine
eigenen
Vorlieben zu entdecken (c oder Basic oder ?)
gruß hans
Früher war alles noch so einfach: Entweder man hatte einen Computer,
oder man hatte keinen. Hatte man keinen,was der Normalfall war, besorgte
man sich einen Ersatz aus Papier und Holz:
http://www.wolfgang-back.com/knowhow_home.php
Damit konnte man programmieren lernen. Viele Möglichkeiten hatte man
nicht, Internetforen gab es auch noch keine, also stellte man keine
Fragen, sondern konnte es nach einigen Versuchen einfach.
War man glücklicher Besitzer eines Apple, PET oder TRS-80, war der
Einstieg in die Programmiereung ebenfalls klar vorgegeben: Auf diesen
Rechnern war genau eine Programmiersprache fest installiert, nämlich
BASIC. In der beiliegenden Gebrauchsanleitung stand geschrieben, wie man
damit programmiert. Nachdem man die Anleitung durchgelesen und jeden
BASIC-Befehl ausprobiert hatte, konnte man programmieren (oder dachte es
zumindest ;-)). Am Stammtisch war man jedenfalls das Genie.
Und heute? Jeder kauft man sich einen PC vom Lebensmitteldiscounter.
Programmieren? Häh, was? Auf dem PC ist weder BASIC noch irgendeine
andere Programmiersprache installiert. Ist ja auch klar: Programmieren
tun heutzutage nur noch die Inder.
Stattdessen kann man im Internet surfen. Immerhin gibt es im Internet
ungefähr 759 verschiedene Programmiersprachen, die man alle umsonst
herunterladen kann. Man weiß nur nicht, welche.
Zum Glück gibt es Internetforen, wo man fragen kann. Hier bekommt man
ungefähr 759 verschiedene Antworten, und am Schluss ist man genauso
gescheit wie vorher.
Am Stammtisch kann man mit der Programmiererei auch nicht mehr prahlen.
Software wird nicht mehr programmiert, sondern kopiert, das ist viel
effizienter.
Also lässt man das Programmieren lieber sein und nutzt die vielen
Gigahertze des Prozessors, um sich Titten anzuschauen.
Ja, ja, so ändern sich halt die Zeiten ...
Dem Kurt kann ich deswegen nur raten, sich auf dem Flohmarkt nach einem
verstaubten Apple mit vergilbtem Handbuch umzusehen. Damit steht seinem
Werdegang zum "Real Programmer" nichts im Wege ;-)
Euer ewig gestriger yalu
also ich hab mit PHP angefangen und fands ziemlich cool und denk im
nachhinein auch, dass es so sinnvoll war. Ich hab damals ne Stufenpage
gemacht und würde auch sagen dass ein konkretes Projekt am Anfang einen
motiviert dran zu bleiben.
An der Uni hatten wir am Anfang auch ein Praktikum in dem man ein
Programm zur Laufzeitanalyse von Gattern schreiben musste und auch hier
fand ich sinnvoll und motivierend wenn auch kompliziert.
In PHP selbst muss man sich um nichts kümmern was dem Anfänger ein paar
Hürden aus dem Weg räumt. Orientiert ist PHP auch an C aber naja das
selbe ist es definitiv nicht! Aber die Syntax ist ähnlich.
so das damit mein post nicht offtopic ist
zu meinem Vorredner hab ich was lustiges:
Also lässt man das Programmieren lieber sein und nutzt die vielen
Gigahertze des Prozessors, um sich Titten anzuschauen.
http://de.youtube.com/watch?v=S7d5suAzdEA
am besten mit einfachem Editor anfangen
nix full blown pattern refactoring enabled dingens
syntaxhighlighting muss sein
eventuell noch compile und run
und eventuell² projektpfade zu includes etc
wegen der Sprache, nimm irgendeine, ist egal welche.
ich kann 5 verschiedene und das werden bestimmt nicht die letzten sein.
Womit ich nicht anfangen würde: C oder PHP, ersteres erfordert eine hohe
Frusttoleranz, beides verleitet zu schlechtem Stil.
Basic ist sicher nach wie vor keine schlechte Wahl, aber inzwischen gibt
es modernere Sprachen die auch nicht schwieriger zu lernen sind. Ruby
oder Python fallen mir da zuerst ein.
Wie dieser Thread enden wird ist abzusehen, nämlich gar nicht...
Ich persönlich habe auf einem Commodore 64 angefangen BASIC zu
programmieren.
Dann später auf dem PC bin ich mit Delphi eingestiegen, womit man meines
Erachtens sehr schnell zu einem Erfolg kommt. Dann kam C, weil es für
den AVR keinen Delphi Compiler gab ;-) Dadurch habe ich C "lieben"
gelernt, es dann auch auf dem PC verwendet und durch die Sehnsucht nach
objektorientiertem Programmieren noch C++ erlernt. Dann
anwendungsbedingt noch etwas Java und PHP gelernt.
Delphi kann ich für den Einstieg in die Windowsprogrammierung sehr
empfehlen, da gibt es auch wie schon genannt eine kostenlose
Express-Version. C# ist vielleicht einen Blick wert, auch da gibt es
eine Umsonst-Version. Bei C/C++ kann ich mich an den Vorredner nur
anschließen; Man kann einfach zu leicht über eine rote Ampel laufen.
irgendwie scheinen sehr viele Menschen Programmiersprache mit
"imperative Programmiersprache" gleichzusetzen.
Es gibt ja viel mehr dadraussen ;)
Die funktionalen werden zumindest die Informatiker noch kennen
und manch einer auch können.
Dann gibt es noch gleichungsbasierte Sprachen. Diese sind
den meisten unbekannt. (wer möchte google nach equation based language)
Den Ansatz finde ich sehr interessant. Ich habe mich auch in Modelica
eingearbeitet. Dymola bietet da eine kostenlose Try-Version
oder man kann OpenModelica als Umgebung nehmen.
[Vielleicht können ja mal einige erfahrenere Leute ihre Lernlaufbahn
auflisten, immerhin scheint ihr Weg schonmal mehr oder minder
erfolgreich gewesen zu sein ;)]
Ich habe 1993 mit QBasic angefangen, bin dann aber innerhalb von 2
Wochen auf PowerBasic (richtiger Compiler, kein Interpreter)
umgestiegen.
1997 dann Umstieg auf VisualBasic, leider wieder Interpreter, sofern ich
mich erinnere. 2005 kam dann Delphi an die Reihe, für die Firma in der
ich jetzt arbeite. Und privat kam vor kurzem dann C für Mikrocontroller
an die Reihe. Allerdings: C/C++ kann man einfach lernen, würde aber
empfehlen mit ner anderen Sprache die Fehler eher "verzeiht" anzufangen
und dann auf C/C++ umzusatteln. Und welche Sprache die beste ist: Musst
du dir selbst aussuchen.
Für Visual Basic, Delphi und C++ gibts in etwa genausoviele Beispiele im
Internet, von welchen du lernen kannst.
Viele Grüße,
Richard
Meine Vorgänger haben eigentlich schon alles gesagt.
Hinzufügen mochte ich nur noch wenig.
Wenn du 15 J alt bist kannst du mit jeden anfangen,es bleibt dir immer
noch genügend Zeit wieder umzusteigen, aber du sammelst Erfahrungen.
Wie ich immer sage "Der Weg ist das Ziel"
Bist du 60J ,dann solltest du zielgerichteter wählen,
denn das Leben ist kurz.
Gruß
Ohne mir alles durchgelesen zu habe: Ich habe mit Basic auf einem
Schneider CPC angefangen. Danach QBasic am PC. Irgendwann kam dann
Pascal dazu. Unter Windows dann Visual Basic. Später PHP (was ich nun
auch mal als Programmiersprache nenne, obwohl ich weiss, dass es eine
Scriptsprache ist). Und nun durch das Studium auch C.
Nachdem ich jetzt recht routiniert in C und PHP bin musste ich mal
wieder ein Programm in Visual Basic schreiben und habe echt geflucht.
Ich würde, auch wenn es vielleicht viele Fall Stricke gibt, lieber
gleich in C anfangen, da man sich sonst so schmutzige
Programmiertechniken, wie sie in Visual Basic üblich sind, gar nicht
erst angewöhnt. (Stichwort: Goto)
Da hier ja auch das Mikrocontroller-Forum ist, wuerde ich auch zur
Mikrocontroller-Programmierung raten. Der Vorteil ist, dass das eine
recht uebersichtliche Platform ist (so wie die guten alten
Homecomputer). Viele Anfaenger wollen gleich epochales leisten, einen
neuen Ego-Shooter oder sowas programmieren - auf dem Mikrocontroller
gibt es das nicht, da kann man sich am Anfang darauf konzentrieren, mit
ein paar LEDs zu spielen, evtl. mit einem Textdisplay. Wichtig ist, dass
man eine bekannte Hardware waehlt, die aus der Packung funktioniert und
nicht erst in Gang gebracht werden muss - gerade als Anfaenger sind zu
viele Fehlerquellen zu vermeiden. Vorteil der AVR-Ecke ist, dass es
dafuer ein Basic gibt. Einfach zu programmieren, nicht all zu viele
Fallstricke, schnelle Erfolgserlebnisse. Damit kann man rumspielen und
waehrendher lernt man, was so ein Computer eigentlich ist und wie er
"denkt". Wenn das klappt, wuerde ich Assembler empfehlen, auf der
gleichen Platform, die gleichen Beispiele. Das groesste Problem an
Assembler ist, dass man ohne jeden Komfort dasteht - alles muss man
selbst machen, in winzigen Schritten. Aber wer durch Assembler durch
ist, weiss, dass auch die grossen und maechtigen Sprachen nur mit Wasser
kochen, was ein Speicher ist, Pointer, etc, pp. Wer das kann, ist bereit
fuer den besten Assembler der Welt: C/C++ ;^) Wer von Assembler her
kommt, hat eigentlich nicht viele Probleme mit C. Wer nur Basic, Java
oder sonstwas kennt, hat meist gar keine Vorstellung davon, wie ein
Computer funktioniert. Was man spaeter dann mal benutzt, ist
Geschmackssache. Nur gelernt haben sollte man die anderen Sprachen
schon.
Andreas Schwarz (andreas) (Admin) wrote:
> Wie dieser Thread enden wird ist abzusehen, nämlich gar nicht...
jaja, so wird es kommen :) 1)
Wie wäre es diesen Fred mit den bereits existierenden Threads die sich
um das gleiche Problem drehen zu verlinken?
ich will das gleich mal machen
Beitrag "Programmierung für Linux und Windows"
wäre doch mal interessant zu erfahren, was daraus geworden ist
1) ein wild gackernder Hühnerhaufen und jedes Huhn empfiehlt was anderes
:)
mein Gegacker lautet deshalb wie folgt
mit C anfangen
Warum? Ganz einfach, ist sehr nützlich für
Mikrocontroller-Programmierung
dirty pittfals? Aber sicher doch, na und? Versuch macht kluch! :)
zu C passt Assembler wunderbar (sind wir wieder bei den Mikrocontrollern
um die sich quasi alles oder vieles dreht)
für die bunten Oberflächen (unter Windows) kann man auch C verwenden,
durch anprogrammieren der guten alten Win32 API (Charles Petzold lesen!)
..
.. wer das zu schwierig, altbacken oder mittlerweile als zu
eingeschränkt empfindet der ..
tja, bei dem fängt die Diskussion erneut an :)
Ich empfehle es mit C-Sharp (C#) zu probieren (hab mir das selber
angesehen und bin dabei es mir reinzupfeifen); erfordert aber eine
andere Denke als das typisch funktionale durchlaufen eines C-Programms
von oben nach unten; man hat es dann mit Objekten und deren
Eigenschaften zu tun (dafür fühlt man sich als "C# Kenner" dann
wahrscheinlich auch schnell bei Java und ein paar anderen Sprachen
beheimatet; man könnte natürlich auch gleich damit anfangen, aber die
Welt der Objekte und Mikrocontroller? Ich weiß nicht, ich weiß nicht ..
;))
Wer nur mal eben was für die bunte Oberfläche stricken möchte, der
sollte sich lieber einer der Skriptsprachen/Interpretersprachen
bemächtigen (ich würde wahrscheinlich Python nehmen)
> Websites haben vor Büchern den Vorteil, dass man die erklärten Programme> direkt in den Programmeditor kopieren kann.
Das ist der größte Nachteil vom Internet. Bei Copy und Paste bringt man
Dinge zum laufen, die man nicht versteht und auch nicht zwangsläufig
100%ige durchdenken muss. Beim abtippen ist man eher gezwungen sich mit
dem Beispielcode zu Beschäftigen und bekommt gleich ein Gefühl für
häufig verwendete Schlüsselwörter und Syntax. Das kommt beim stupiden
abkopieren nicht auf. Und auch der ein oder andere Tipp-Fehler zwingt
zum drüber nachdenken, was man gerade warum tut.
Und am wichtigsten:
Sogut wie alle Anfänger-Beispiele bestehen nur aus wenigen Code-Zeilen,
selbst sehr komplexe (Anfänger-)Beispiele haben nie mehr als 50, 60
Zeilen Code. Wenn man nicht die 20 Minuten zum abtippen hat, hat man
auch nicht die Zeit eine Programmiersprache zu lernen.
> Das ist der größte Nachteil vom Internet. Bei Copy und Paste bringt> man Dinge zum laufen, die man nicht versteht und auch nicht> zwangsläufig 100%ige durchdenken muss. Beim abtippen ist man eher> gezwungen sich mit dem Beispielcode zu Beschäftigen und bekommt gleich> ein Gefühl für häufig verwendete Schlüsselwörter und Syntax.
Deswegen tippe ich (scheinbar schwachsinnigerweise) auch die Beispiele
aus dem Internet ab.
Damit die Abtipperei nicht zu stupide wird, versuche ich, beim Abtippen
gleich ein paar kleinere Modifikationen einzubauen (z.B. andere
Variablennamen). Wenn das Beispiel dann noch läuft, wird es so lange
verbogen und erweitert, bis es das nicht mehr tut. Dann kann man zum
nächsten Abschnitt des Tutorials übergehen. Ist dieses gut gemacht,
findet man dort die Erklärung, wie man es richtig gemacht hätte.
Auf diese Weise lerne ich am schnellsten und vor allem am
nachhaltigsten. Da hat aber jeder seine eigene Methode.
> Ich lerne am schnellsten, wenn ich gleich mal was praktisches damit> umsetze. Dann kommt einem das Lernen/Programmieren nicht so unnütz vor.
Jap, der Extreme-Programming Ansatz. Keine trockene Theorie, gleich und
direkt zum Ziel. Ist ganz gut geeignet wenn man sicher in der Materie
ist, zum lernen ist das allerdings eine echte Katastrophe. Es entsteht
jede Menge brand-gefärhliches Halbwissen und da der von anderen
geschriebene Quark vorerst läuft merkt man es noch nicht einmal...
>daniel (Gast)>irgendwie scheinen sehr viele Menschen Programmiersprache mit>"imperative Programmiersprache" gleichzusetzen.>Es gibt ja viel mehr dadraussen ;)
Mein Eindruck von funktionaler Programmierung ist, dass es scheinbar nur
für Akademiker ist und keine Praxis hat. Kann man
Betriebssysteme/Treiber/GUI/Spiele mit einer funktionalen
Programmiersprache erstellen?
Selbst wenn einige Programmiersprachen den Sinn im lösen von
Mathematischen Problemen haben (=nicht universell heul) -
So stellen Anfänger sich meiner Meinung nicht "Mal was programmieren"
vor.
Hallo Kurt,
> Ich finde Programmieren ja total faszinierend, kann es aber nicht. Wie> lerne ich am besten programmieren? Welche Sprache soll ich lernen? Gibt> es da gute Bücher?
es kommt sehr darauf an, was Du machen willst.
Ich würde als Anfänger mit einer imperativen Programmiersprache
anfangen. Imperativ bedeutet "durch Befehl". Es geht dabei um eine
Sprache, bei der Du dem Rechner Zeile für Zeile sagst, was er zu tun
hat. Das läuft dann etwa so ab:
a = 5; // Gib der Variablen a den Wert 5
b = 7; // Gib der Variablen b den Wert 7
c = a+b; // Addiere a und b und benenne das ganze c.
Das kann auch sein "Zeichne eine Linie von (x1,y1) zu (x2,y2)".
Es gibt auch andere Ansätze (objektorientiert, funktional). Ich empfehle
Dir aber, solche Spezialitäten erst zu lernen, wenn Du imperativ
programmieren kannst. Objektorientiertes Programmieren lohnt sich erst
bei sehr großen Programmen und hilft bei der Organisation des
Programmier- und Programmablaufs. Für den Mikrocontroller brauchst Du
das erstmal nicht, und funktionales Programmieren führt ohnehin ein sehr
bescheidenes Nischenleben.
Wenn Du später einmal Mikrocontroller programmieren willst, würde ich
empfehlen, mit C anzufangen. C ist eine der am häufigsten verwendeten
Sprachen für Mikrocontroller und hat ganz ähnliche Strukturen wie viele
andere Sprachen auch. Ganz grob gilt bei den imperativen
Programmiersprachen ohnehin: Kennst Du eine, kennst Du alle.
C hat den Vorteil, daß Hardwarezugriffe vorgesehen sind. Genau das
brauchst Du beim Mikrocontroller.
Empfehlenswert zum Erlernen von C ist beispielsweise das Buch:
http://www.amazon.de/Programming-Language-Prentice-Hall-Software/dp/0131103628
Willst Du in Richtung Signalverarbeitung gehen, kann ich Dir die
Skriptsprache Matlab empfehlen. Der Vorteil gegenüber C besteht darin,
daß sie viele mächtige Befehle standardmäßig eingebaut hat (inkl. FFT u.
ä) und zur Visualisierung von Daten bestens geeignet ist. Trotzdem
kannst Du auch ganz normale Programmierbefehle (Schleifen, wenn/dann
Entscheidungen) erlernen und ausführen.
Um Klickibunti-Anwendungen zu programmieren brauchst Du Aufsätze auf die
üblichen Programmiersprachen, beispielsweise Borland C++ oder Visual C++
statt C/C++. Das ist aber der zweite Schritt.
Gruß,
Michael
Linux auf die Festplatte! Für Umsteiger/Einsteiger würde
ich SuSe empfehlen.Ist noch am nähesten an der Windows
"ich-klick-mir-was-zusammen" -Welt.(Installation als
Dualsystem klappt auch für DAU's).
Anschließend gehts schnell:
1. Texteditor wählen(Linux hat viele und die besten!)
2. Programm in C schreiben(Hallo Welt als anfang?):
################################################
#include <stdio.h>
int main (int argc, char *argv[])
{
printf("Hallo Welt!\n");
return(0);
}
#################################################
3. Kompilieren(C-GNU-Compiler ist schon installiert):
Textkonsole(shell)öffnen,
folgendes eintippen:
gcc -g -o hallowelt hallowelt.c
Wenn fehlerfrei Programm starten mit ./hallowelt
4. Wenn du Interesse hast was hinter den Kulissen
des Programms vorsichgeht, ist eine -g Option
eingefügt.Damit kannst du den Debugger starten,
in SuSe z.b. ddd hallowelt,ddd ist auch schon
vorhanden.
Alles in allem eine Sache von 5min,bis zum 1.Programm.
Die Möglichkeiten vieles zu probieren und zu erlernen
wird dir nur mit Linux gegeben!Alles ist Opensource!
Alles ist gut dokumentiert.
Windows als Entwicklungsumgebung wird dir schnell
deine Grenzen aufzeigen.
(es gibt auch für windows gute Entw.werkzeuge,aber
unerschwinglich für Privatperson)
Probiers mal aus.
Mfg
Christian
Assembler ist auch keine schlechte Wahl. Du freust dich tierisch über
dein erstes "Hello World", und später hast du mit Zeigern in C/C++ kaum
Probleme.
Stefan wrote:
> [Regieanweisung]>> Der Glaubenskrieg ist eröffnet>> [/Regieanweisung]>> PS: Ich wett alles auf mindestens 50 Antworten in den ersten Tagen...
Das ist eine total sinnlose Frage. Als ob es net tausend Beiträge und
allen möglichen Foren geht...
Denken, Drücken, Sprechen/Schreiben ...
> Windows als Entwicklungsumgebung wird dir schnell> deine Grenzen aufzeigen.
Welche Grenzen?
> (es gibt auch für windows gute Entw.werkzeuge,aber> unerschwinglich für Privatperson)
Alle Visual Studio Express Versionen sind kostenlos.
Von Codegear/Borland gibt's den TurboExplorer für Delphi/C++/C#
kostenlos.
Eclipse, Code::Blocks etc. laufen auch, wobei Eclipse nichts für
schwache Hardware ist und die Debugger (ddd/gdb) wesentlich schlechter
sind als die von MS.
Läubi Mail@laeubi.de wrote:
> http://norvig.com/21-days.html ;)> Ich bin schon bei mehr als 10 Jahren lern aber immer noch was dazu ^^
Wenn das noch die Verantwortlichen verstehen würden, die immer
Fachkräftemangel schreien...
> Windows als Entwicklungsumgebung wird dir schnell> deine Grenzen aufzeigen.> (es gibt auch für windows gute Entw.werkzeuge,aber> unerschwinglich für Privatperson)
Was ist denn das für ein hohles Geschwätz? Da zeigt einer auf wie man
mit gcc und einem simplen Text-Editor sein erstes 'Hallo, Welt' Programm
kompiliert und redet dann davon, es gäbe keine Erschwinglichen
Entwicklungswerkzeuge für Windows?
Hallo! Sag mal, geht's noch? Es gab schon IMMER erschwingliche
Entwicklungswerkzeuge. Damals nannten die sich Turbo Pascal 5.5, 6.0 und
Turbo C++ 3.0, 3.1. Die musste man zwar noch kaufen, aber auch die waren
bezahlbar und billiger als ein MS Office und sogar billiger als ein
Winword 6.0. Damals hätte man sich alle Finger danach geleckt eine
komplexe Entwicklungsumgebung wie Visual C# Express für lau benutzen zu
dürfen oder eine sehr schöne u. einfache integrierte
Entwicklungsumgebung wie diese hier verwenden zu dürfen
http://www.smorgasbordet.com/pellesc/index.htm
Der Programmieranfänger braucht vor allem gute Codebeispiele, die er
verstehen und nachvollziehen kann. Eine gute Hilfe mittels F1-Taste, wie
sie damals die Borland-Produkte aufwiesen, lassen die Fragezeichen im
Gesicht des Einsteigers deutlich kleiner werden, die sich bei einem
leeren Texteditor + Compiler sonst schnell einstellen werden. Ein gutes
Buch das einfache Beispiele schrittweise erläutert hilft Frust zu
vermeiden (ein gutes Skript geht auch, ist aber oft didaktisch nicht so
gut aufgebaut und meistens nicht so ausführlich). Der Rest kommt dann
mit der Zeit. Das Wichtigste ist eigentlich dass man sich wohl fühlt und
am Ball bleibt. DAS richtige Buch + DIE richtige Entwicklungsumgebung
muss jeder für sich selber finden. Das kann am Anfang etwas mühsam sein.
Schon die Frage welche Programmiersprache man sich jetzt "antut" kann
ein zäher Prozess sein. Meine Empfehlung daher: Nix Exotisches am Anfang
nehmen und nicht zuviel verlangen (Sätze wie, "ich will programmieren
lernen, um Spiele selber zu programmieren sind naiv und enden
schließlich in Frustration). Am besten fängt man mit Konsolenprogrammen
an und lässt Fenster mit Menüs (egal ob unter Linux oder Windows) erst
man beiseite. Klappt es mit den Konsolenprogramm(en), dann übergehen zum
Dialog-orientierten Programm mit einfachen Button und danach zum
Fenster-orientierten Programm mit Steuerelementen wie Menüleisten. Von
den Assistenten die gleich ganze Anwendungen zusammenklicken sollte man
als Einsteiger die Finger lassen. Davon lernt man nix! Man muss die
Quelltexte im Ganzen verstehen und nicht einen vorgegebenen Quelltext
irgendwo ergänzen und dann nicht so richtig wissen, an welcher Stelle
eigentlich was passiert.
Gelegenheitsprogrammierer wrote:
> [blablabla]> Der Programmieranfänger braucht vor allem gute Codebeispiele, die er> verstehen und nachvollziehen kann.DAS ist der Punkt.
> Eine gute Hilfe mittels F1-Taste, wie> sie damals die Borland-Produkte aufwiesen, lassen die Fragezeichen im> Gesicht des Einsteigers deutlich kleiner werden, die sich bei einem> leeren Texteditor + Compiler sonst schnell einstellen werden.
Vorallem empfehle ich ein dickes Buch über den C(89,99)-Standard. Das
bringt gegenüber der üblichen "Jetzt lerne ich"- und
"C-Für-Anfänger"-Literatur einen ganz gewaltigen Vorteil: Man hangelt
sich nicht von Beispiel zu Beispiel und steht am Ende im Regen da,
sondern man sieht, dass C überschaubarer und kompakter ist, als man
glaubt. Natürlich sollte man schon grunsätzliche Syntaxkenntnisse
mitbringen, aber immerhin nimmt einem so ein Buch ganz gut das Gefühl,
nur an der Oberfläche zu kratzen. Denn in C "kommt nach Syntax nicht
mehr viel", so zu sagen. Ihr versteht schon.
> Ein gutes> Buch das einfache Beispiele schrittweise erläutert hilft Frust zu> vermeiden (ein gutes Skript geht auch, ist aber oft didaktisch nicht so> gut aufgebaut und meistens nicht so ausführlich).
Am besten sogar eine Person, die einem mal ne Viertelstunde lang Schritt
für Schritt erklärt, wo die { hinkommt und so weiter. Auch das nimmt
einem ganz schnell die Angst vor wilden Sonderzeichenorgien und taugt
ewig mehr als irgendwelche Syntaxbäumchen.
> Der Rest kommt dann> mit der Zeit. Das Wichtigste ist eigentlich dass man sich wohl fühlt und> am Ball bleibt.
Programmieren, programmieren, programmieren!
> DAS richtige Buch + DIE richtige Entwicklungsumgebung> muss jeder für sich selber finden. Das kann am Anfang etwas mühsam sein.
Genau, vorallen Dingen bitte "Buch", so richtig aus Papier. Zumindest
aus eigener Erfahrung hab ich gemerkt, dass man bei Online-Dokus viel
leichter abschweift oder zu Copy&Paste neigt. Kauf dirn Buch, das
kannste aufm Weg zur Arbeit weiterlesen bzw. zurücklesen um zu
rekapitulieren und gut.
> Schon die Frage welche Programmiersprache man sich jetzt "antut" kann> ein zäher Prozess sein. Meine Empfehlung daher: Nix Exotisches am Anfang> nehmen und nicht zuviel verlangen (Sätze wie, "ich will programmieren> lernen, um Spiele selber zu programmieren sind naiv und enden> schließlich in Frustration).
Und man darf durchaus später wechseln, ohne den Kopf abgerissen zu
bekommen! Sah bei mir so aus:
- Rohde&Schwartz-Basic
- QBASIC auf dem ersten eigenen Rechner
- National Instruments' LabVIEW
- Visual Basic
- Turbo Pascal
- PHP, Perl (mal sondiert, dann bei PHP hängen geblieben)
- Delphi (in der Schule)
- C
- C++ (auch mal sondiert, aber keinen Gefallen dran gefunden)
> Am besten fängt man mit Konsolenprogrammen> an und lässt Fenster mit Menüs (egal ob unter Linux oder Windows) erst> man beiseite.
Auch das ist ne gute Empfehlung.
> Klappt es mit den Konsolenprogramm(en), dann übergehen zum> Dialog-orientierten Programm mit einfachen Button und danach zum> Fenster-orientierten Programm mit Steuerelementen wie Menüleisten.
Das ist der schwierigste Schritt.
> Von> den Assistenten die gleich ganze Anwendungen zusammenklicken sollte man> als Einsteiger die Finger lassen. Davon lernt man nix! Man muss die> Quelltexte im Ganzen verstehen und nicht einen vorgegebenen Quelltext> irgendwo ergänzen und dann nicht so richtig wissen, an welcher Stelle> eigentlich was passiert.
Das Problem bei der Sache ist, dass es meistens nur noch Assistenten
gibt: Visual-XXX (ohne .NET) kommt mit Resourcendateien daher, genauso
wie Borland-C. Da hat man als Programmierer fast schon keinen Einfluss
mehr auf das Erzeugen der Bedienoberfläche.
Gegenbeispiel wäre dazu das GTK (mit dem auch Gnome geschrieben ist):
hier schreibt man sich in C seine Oberfläche Stück für Stück zusammen.
Sven Pauli wrote:
>> Am besten fängt man mit Konsolenprogrammen>> an und lässt Fenster mit Menüs (egal ob unter Linux oder Windows) erst>> man beiseite.> Auch das ist ne gute Empfehlung.
Nicht unbedingt - man sollte für solche Aufgaben aber auch das passende
Werkzeug verwenden. C oder C++ sind für grafische Oberflächen sicherlich
das falsche.
>> Klappt es mit den Konsolenprogramm(en), dann übergehen zum>> Dialog-orientierten Programm mit einfachen Button und danach zum>> Fenster-orientierten Programm mit Steuerelementen wie Menüleisten.> Das ist der schwierigste Schritt.
Nein :-)
Das ist sogar einfach - z.B. mit Tcl/Tk
>> Von>> den Assistenten die gleich ganze Anwendungen zusammenklicken sollte man>> als Einsteiger die Finger lassen. Davon lernt man nix! Man muss die>> Quelltexte im Ganzen verstehen und nicht einen vorgegebenen Quelltext>> irgendwo ergänzen und dann nicht so richtig wissen, an welcher Stelle>> eigentlich was passiert.
Das stimmt.
> Das Problem bei der Sache ist, dass es meistens nur noch Assistenten> gibt: Visual-XXX (ohne .NET) kommt mit Resourcendateien daher, genauso> wie Borland-C. Da hat man als Programmierer fast schon keinen Einfluss> mehr auf das Erzeugen der Bedienoberfläche.
Ja, deswegen verwende ich da Tcl/Tk.
> Gegenbeispiel wäre dazu das GTK (mit dem auch Gnome geschrieben ist):> hier schreibt man sich in C seine Oberfläche Stück für Stück zusammen.
Ja, das ist ein echter Krampf - musste ich mir nicht lange antun.
Ein Beispiel für die Einfachheit von Tcl/Tk gefällig?
Hier das übliche "Hello World" - als Button im Fenster. Bei Anklicken
wird dieses geschlossen:
1
button .b -text "Hallo Welt!" -command exit
2
pack .b
Das war's :-)
Für den OP:
Für einen Überblick würde ich mir mal das Wiki zu Tcl/Tk ansehen - dort
sind schöne Beispiele zu sehen, wie man mit schon mit einigen Zeilen
eine GUI stricken kann: hier sogar in Deutsch:
http://wiki.tcl.tk/2548
Übrigens kann man Tcl auch auf Controllern verwenden - mache ich hier
mit großem Erfolg. Allerdings muss ich da meinen Vorrednern Recht geben:
C sollte man in dem Bereich unbedingt können.
Und noch ein Goodie: Tcl/Tk und praktisch sämtliche Erweiterungen stehen
unter BSD-Lizenz, dürfen also ohne Quelltexte weitergegeben werden.
Chris
Musses wohl klarer ausdrücken, wohl gemerkt, ich rede hier von C/C++.
Dass es Alternativen gibt, die einfacher sind (z.B. Skriptsprachen wie
Tcl/Tk, PHP und Co., und die auch alle schöne, bunte Oberflächen machen,
WEISS ICH).
Chris D. wrote:
> Sven Pauli wrote:>>>> Am besten fängt man mit Konsolenprogrammen>>> [...]>> Auch das ist ne gute Empfehlung.>> Nicht unbedingt - man sollte für solche Aufgaben aber auch das passende> Werkzeug verwenden. C oder C++ sind für grafische Oberflächen sicherlich> das falsche.
C und C++ sind für die Programmlogik durchaus die richtige Wahl.
Blöderweise verschleiern aber solche resourcenbasierten
Oberflächen-"Designer", was denn nun wirklich im Programm passiert. QT
(was an sich ne feine Sache ist) treibt das sogar so weit, dass es
selber noch ne ganze Menge C++-Code dazupackt, den der Programmierer
garnicht zu sehen bekommt.
Tk ist für GUI ne prima Sache, aber irgendwie zieht es mich bei
hardwarenaher Programmierung (Auswertprogramme an RS232, Parallelport,
ISA, wasauchimmer) gerne wieder zu C hin. Und richtig flotte Sachen mach
ich auch wesentlich lieber in C als in Tcl/Tk, und wenns dann nachher
wieder als Tcl/Tk-Erweiterung auftaucht.
Was manche (mich eigentlich nicht) noch stören könnte ist, dass die
Oberflächen von Tk von Haus aus nicht uuuunbedingt sooo toll aussehen,
also so richtig ins QT-Feeling von KDE oder ins Aussehen von Gnome
passen die eigentlich nicht.
Sven Pauli wrote:
> Musses wohl klarer ausdrücken, wohl gemerkt, ich rede hier von C/C++.> Dass es Alternativen gibt, die einfacher sind (z.B. Skriptsprachen wie> Tcl/Tk, PHP und Co., und die auch alle schöne, bunte Oberflächen machen,> WEISS ICH).
Gut ;-)
>> C oder C++ sind für grafische Oberflächen sicherlich>> das falsche.> C und C++ sind für die Programmlogik durchaus die richtige Wahl.
Eben. Man beachte den Unterschied: Programmlogik <-> grafische
Oberfläche :-)
> Blöderweise verschleiern aber solche resourcenbasierten> Oberflächen-"Designer", was denn nun wirklich im Programm passiert. QT> (was an sich ne feine Sache ist) treibt das sogar so weit, dass es> selber noch ne ganze Menge C++-Code dazupackt, den der Programmierer> garnicht zu sehen bekommt.
Tja :-/
> Tk ist für GUI ne prima Sache, aber irgendwie zieht es mich bei> hardwarenaher Programmierung (Auswertprogramme an RS232, Parallelport,> ISA, wasauchimmer) gerne wieder zu C hin. Und richtig flotte Sachen mach> ich auch wesentlich lieber in C als in Tcl/Tk, und wenns dann nachher> wieder als Tcl/Tk-Erweiterung auftaucht.
Ja, klar - genau dafür ist Tcl/Tk ja auch gemacht worden: der
Allerweltskram wird skriptmäßig erschlagen und hardwarenahe
Funktionalität wird in C implementiert und als neuer Tcl-Befehl
eingebunden. Die Schnittstelle zu Tcl ist mMn die bestdokumentierte und
einfachste, die ich je gesehen habe.
Wobei ich sagen muss, dass ich selbst bei hardwarenahen Kundenprojekten
selten mehr als 5% wirklich in C implementieren muss.
Das erstaunt mich immer wieder selbst :-)
> Was manche (mich eigentlich nicht) noch stören könnte ist, dass die> Oberflächen von Tk von Haus aus nicht uuuunbedingt sooo toll aussehen,> also so richtig ins QT-Feeling von KDE oder ins Aussehen von Gnome> passen die eigentlich nicht.
Oh, dann hast Du länger nicht mehr bei Tk vorbeigeschaut.
Themenbasiertes Aussehen ist enthalten. Unter Windows und Mac sowieso,
unter X11 auch seit einiger Zeit (Stichwort: ttk).
Das zugegebenerweise hässliche Motif/X-Outfit ist damit glücklicherweise
Geschichte.
Chris
Ich benutze ein wirklich kleines Entwicklungsboard mit NXP LPC11U68
Cortex-M0 + von dieser Seite (https://eigerdb.eu/), wo ich auch einige
interessante grundlegende Tutorials gefunden habe. Deshalb benutze ich
es. Ich denke, dass der Mikrocontroller alle Peripheriegeräte hat, die
Sie benötigen.
Für grafische Oberflächen ist, ohne Scherz, Lazarus Pascal, super.
C/C++ ist gerade für den Anfang frustrierend, meist gibt es dann auch
nicht den bedarf, Wenn Du gut mit Lazarus Pascal arbeiten kannst, gibt
es faktisch keinen Grund zu C++ zu wechseln.
Python hat sicher auch seine Vorteile, ist meines Wissens aber nach wie
vor, für größeres und Grafisch nicht optimal.
Weshalb Lazaraus eine Option ist?
Es ist sehr einfach, gibt sehr günstig unzählige Bücher(Einfach Bücher
für Delpi kaufen) eine sehr freundliche hilfreiche Community, die ein
nicht ständig bei jeder Frage an den Kopf wird, das man sich ein Buch
kaufen und lesen soll, oder google bemühen soll ;-) Solche Antworten
braucht halt wirklich niemand.
Ursprünglich wurde Pascal ja mal als Lehrsprache entwickelt, mit Turbo
Pascal, Delphi / Lazarus ist es aber voll Alltagstauglich geworden.
Das Erstellen geht damit super fix und auch große Projekte sind damit
problemlos möglich.
Unter C++ fällt mir nur MS Visuell C++ ein, was als Alternative taugt.
Im Basic Bericht, wäre Visuell Basic sicher auch nicht schlecht.
Sowohl BAsic als auch PAscal eignen sich später zur µC Programmierung
dank Mikro.com gibt es für alle gängigen µC auch basic und Pascal
http://www.lazarus-ide.org/
Delphi,C++,Assembler,Basic,Java (zeitl. Reihenfolge)
Fazit: Ein motivierendes Buch holen (egal welches oder welche Sprache)
und das durcharbeiten bis du alles verstanden hast.
Tipp: Ohne Codeergänzung usw arbeiten. Besser alles im Kopf. Und: Scheiß
auf deine Eltern usw, wenn die das nicht verstehen oder gut finden. Mach
dein Ding.
Andreas S. schrieb:> Basic ist sicher nach wie vor keine schlechte Wahl, aber inzwischen gibt> es modernere Sprachen die auch nicht schwieriger zu lernen sind. Ruby> oder Python fallen mir da zuerst ein.
Dem würde ich mich Anschließen, ich denke Python ist heute eine gute
Wahl für Anfänger als erste Sprache. Als Ergänzung würde ich allerdings
denn Trick meines Informatik Lehrer nehmen und dem TO empfehlen ein,
zwei Gebrauchsanleitungen vorher zu schreiben. Zum Beispiel für die
Kaffeemaschine oder den Rasenmäher. Dabei sollte eine kleine Anleitung
raus kommen welche es ermöglicht den Gegenstand zu benutzen. Der Vorteil
von diesen Anleitungen ist, das man lernt strukturiert zu denken ohne
Programmieren zu können.
hier mal ein Beispiel für die Kaffeemaschine:
1
Anleitung für eine Kaffeemaschine:
2
3
1.) Maschine aufmachen, nachsehen ob noch ein filter drin ist, wenn einer drin ist raus nehmen und entsorgen.
4
2.) Neuen Filter in die Maschine einlegen, wenn kein Filter im Haus, filter auf die Einkaufsliste und Programm beenden.
5
3.) Kaffee in den Filter einführen, pro Tasse einen Teelöffel Kaffee. Keinen Kaffee im Haus gibt es nicht ;)
6
4.) Wassertank überprüfen ob genügend Wasser drin ist, wenn das Wasser zu wenig ist nachfühlen bis mindestens die Marke für die gewünschte menge Kaffee erreicht ist oder der tank voll ist.
7
5.) Kaffeemaschine Einschalten, wenn die Kaffeemaschine nicht startet stecker überprüfen und ggf einstecken, wenn dann immer noch nicht geht Wartungstechniker Anfordern.
8
6.) Warten bis der Kaffee durch ist.
9
7.) Kaffee genießen!
Das schöne an dieser Art der Anleitung, ohne viel Programmiererfahrung
oder Informatik Kenntnisse fängt man an zu denken wie ein Software
Entwickler, gerade am Anfang kann das eine Hilfe sein.
Ich finde C & Konsolenanwendungen zum anfangen am besten. C ist eine
sehr minimalistische imperative Programmiersprache mit statischer
Typisierung. Man hat alle Standard Sprachkonstrukte, wie z.B.
Datenstrukturen, Funktionen, Schleifen, Bedingungen, etc. aber nicht 100
Konstrukte um das selbe mit ein paar anderen Gewürzen zu Backen, wie
dies z.B. bei C++ der Fall ist. Und dank der statische Typisierung kann
man alle Fehler bei der falschen Nutzung von Variablen und Funktionen
schon im voraus beim Kompilieren erkennen. Bei anderen
Programmiersprachen mit dynamischer Typisierung merkt man Dinge wie den
Typo beim Methodenaufruf erst zur Runtime. Das fehlende bound Checking,
welche es einfach macht sich das Programm zur Runtime zu zerschiessen,
ist ein wenig ein nachteil. Pointer zu haben, und sich selbst mit dem
Memory Management auseinander setzen zu können, ist ein grosser Vorteil.
Klar, man kann schnell mal was vergessen oder doppelt freigeben, aber
mit etwas Übung lernt man recht schnell, damit umzugehen. Bei anderen
Programmiersprachen mit Garbagecollection machen sich viele keine
Gedanken mehr um Memory Management, aber der GC löst die Probleme nicht
magisch. Es gibt immer noch Memoryleaks, wenn man noch irgendwo
Referenzen herumhängen hat, man weiss nie so genau, wann der GC wieder
zuschlagen wird, bei Programmen wie z.B. Games kann man Latenzprobleme
bekommen, wenn der GC sich mal wieder ein paar Frames zeit nimmt, und in
JS hatte ich schon mal eine sich regelmässig updatende Datenstruktur,
bei welcher das herausfinden was noch referenziert ist mit den
Algorithmen der gängigen Browser als derart ineffizient herausstellte,
dass ich 100% CPU last hatte von der der Browser 99% der Zeit mit GC
beschäftigt war, bis ich das gedebugt hatte...
Ich selbst hatte damals mit einer Webseite angefangen. Mit JS kann man
erstaunlich viel machen, es gibt für alles APIs, man hat schon ein GUI
Framework, etc. Irgendwie scheinen aber bei JS viele Probleme zu haben
ihren Code sauber zu strukturieren und werfen weitere Frameworks und
Libraries auf Probleme, noch bevor sie die APIs die der Browser schon
anbietet überhaupt gelernt haben... Nach meiner ersten Webseite hatte
ich damals ein 3D Game mit C++ und OpenGL geschrieben. Es funktioniert,
aber der Code ist eine Katastrophe, würde der heute jemand lesen bekäme
dieser sofort einen Herzinfarkt.
Das wichtigste ist, viel üben, auch Code anderer anschauen, versuchen
Probleme selbst zu lösen, auch mit Debuggern und co., keinen Code
einfach so kopieren, und sich auch mit Algorithmen beschäftigen und sich
verschiedene Lösungen für seine Problem ausdenken. Und nie vergessen, es
gibt immer für alles einen Grund. Ich habe schon Läute gesehen, die
konnten Programmieren ohne die geringste Ahnung zu haben was sie
eigentlich tun. Ich bin nie dahinter gekommen, wie das möglich war.
Ausserdem ist es von Vorteil, von Grund auf alle Abläufe zu kennen, und
sich beim Programmieren nicht nur auf Tools zu verlassen. Eine IDE z.B.
ist ja praktisch, aber man sollte schon in der Lage sein seinen Code
auch ohne diese zu compilieren.
Und zu guter letzt, ich finde auf Linux ist das Entwickeln wirklich am
bequemsten. Dort ist alles vollkommen transparent. Die ganzen Werkzeuge,
die es darauf gibt, und wie viel einfacher man diese darauf nutzen kann,
ist phänomenal. Einige davon gibt es auf anderen OSen noch nicht einmal.
Man sollte beim Programmieren aber allgemein keine Angst vor
Kommandozeilen haben, gerade hier machen diese vieles einfacher.