# Welche Sprache lernen?



## Britzi (8. Oktober 2003)

Hallo
Wollte in den nächsten Ferien anfangen eine Programmiersprache zu lernen!
Allerdings weiß ich nicht welche welche Vorzüge und  Nachzüge sowie Eignungsgebiete hat!
Ich bin ein kompletter Neuling mit viel gedult!
Suche eine Sprache mit  der man  Anwendungen jeglicher Art entwickeln kann!
Weiß, dass das hier nicht so wirklich in dieses Forum passt, aber wusste nicht, wo ich diese Frage sonst stellen sollte!
Sorry

Britzi


----------



## Dario Linsky (8. Oktober 2003)

Das hängt ganz davon ab, was Du genau damit machen willst. "Anwendungen jeglicher Art" ist immer noch ein ziemlich allgemeiner Begriff. Dafür würde ich Dir am ehesten C++ empfehlen, weil man damit wirklich so ziemlich alles umsetzen kann - ist aber auch relativ schwer zu lernen.
Im Allgemeinen würde ich aber eher zu C#, Ruby oder Java (für serverseitige Anwendungen) tendieren.


----------



## Britzi (8. Oktober 2003)

Also ich hatte anfangs nur an die Entwicklung kleiner Hilfstools gedacht und vielleicht später dann auch an grafische Dinge.

Von C# und Ruby hab ich noch nie was gehört!
Sind dies ältere oder moderne Sprachen und wie sind sie aufgebaut?
Also Java is mit irgendwie unsympatisch!


Britzi


----------



## Dario Linsky (8. Oktober 2003)

> Also ich hatte anfangs nur an die Entwicklung kleiner Hilfstools gedacht und vielleicht später dann auch an grafische Dinge.


Irgendwie kann ich mir darunter immer noch nichts vorstellen. Welche Art Hilfstools? Konsolenprogramme, die im Hintergrund laufen oder welche mit grafischer Oberfläche? Wenn letzteres, für welche Systeme? Oder meinst Du mit "grafische Dinge" die typischen Windows-Anwendungen?

C# ist ziemlich neu, gerade mal 3 Jahre alt IIRC, und basiert auf dem .NET-Framework von Microsoft. Die innere Struktur des Frameworks und auch teilweise die Syntax von C# erinnert (mich zumindest) sehr an Java. Ruby ist auch noch relativ jung und bietet IMHO eine Menge geniale, wenn auch teilweise ungewohnte Möglichkeiten an - was für Dich als Neuling aber im Grunde Ruby zu einer nicht so geeigneten Sprache macht, falls Du später auf andere Sprachen umsteigen willst.
Was spricht Deiner Meinung nach denn gegen Java? IMHO ist Java eine sehr brauchbare und produktive Sprache - das einzige was ich daran nicht so ganz mag, sind die GUI-Bibliotheken...


----------



## Britzi (8. Oktober 2003)

> _Original geschrieben von Dario Linsky _
> *Irgendwie kann ich mir darunter immer noch nichts vorstellen. Welche Art Hilfstools? Konsolenprogramme, die im Hintergrund laufen oder welche mit grafischer Oberfläche? Wenn letzteres, für welche Systeme? *



Ich denke dabei an Programme mit einer Oberfläche!
Diese Programme sollen auf Win Plattformen wir Xp laufen.

Denke jeder fängt mal klein an!
Was genau für Progs kann ich nicht genau sagen, da ich ja noch nix kann und
deswegen ka von der Umsetzung habe!



Also du würdest mit zu C# raten?

Britzi


----------



## boelkstoff (8. Oktober 2003)

Vielleicht solltest Du mal sagen, was Du bis her kannst

Ich würde Dir zu folgenden Schritten empfehlen:
vorraussetzung Du hast NULL (!=0) Ahnung

html
html nach xml w3 spezifikation
javascript
php
und dann java oder c(++;#)

ich persönlich bevorzuge java, aber das könnte auch schlecht sein, da Sun z.Z. nicht gut da steht und MS einfach zu mächtig ist (leider)


----------



## Britzi (8. Oktober 2003)

Also ich kann html und ein etwas Flash Mx!
Die Sprachen die du nennst sind doch fast reine Web Sprachen und keine Programmsprachen, oder?
Man kann doch mit html z.B. keine Programme erstellen, oder?


----------



## Patrick Kamin (8. Oktober 2003)

*-*

Hallo,
da ich schon zur Genüge solche Threads miterlebt habe, möchte ich euch gleich von vornherein bitten, hier niemanden wegen seinen Aussagen blöd anzumachen, sonst ist dieser  Thread hier ganz schnell dicht.

Also warum jemand erst HTML lernen soll, bevor er zu einer Programmiersprache wechselst, musst du mir nochmal erklären   

Aber nun zur eigentlichen Frage. Generell würde ich, wenn jemand noch überhaupt keine Programmiererfahrungen besitzt, keine OOP Sprache empfehlen. Gleichzeitig die grundlegenden Sachen wie Datentypen, Iterations-Verfahren und bedingten Anweisungen zu verstehen *und* sich dann noch mit den OOP Prinzipien herumzuschlagen, kann meiner Meinung nach nicht gut gehen. Vorallem glaube ich - jaja ich wiederhole mich - , dass man erstmal prozedural programmiert haben muss, bevor man die Vor- / Nachteile von OOP richtig abschätzen und einsetzen kann.

Deshalb würde ich dir ganz klar zu Pascal raten, es gibt mittlerweile 32Bit Compiler und die Syntax ist wie eh und je sehr leicht zu verstehen, somit also von der Pragmatik her, gut geeignet um die grundlegenden Sachen zu erlernen. Wenn du die erstmal verstanden hast, kannst du zu anderen Sprachen wechseln.


----------



## Dario Linsky (8. Oktober 2003)

> Vorallem glaube ich - jaja ich wiederhole mich - , dass man erstmal prozedural programmiert haben muss, bevor man die Vor- / Nachteile von OOP richtig abschätzen und einsetzen kann.


Nun ja, andererseits heisst es auch oft, dass wenn man erstmal durch prozedurale Programmierung "verdorben" ist, nie so richtig mit OOP klarkommen wird. Ich hab auch mit C angefangen, und mich beim Umstieg auf C++ und Delphi anfangs ziemlich schwer getan.
Gerade C# und Java sind IMHO auch nicht schwerer zu lernen als Pascal oder C. Ich denke trotzdem, dass C# keine schlechte Sprache für den Anfang ist.

PS: Was heisst, dass es Sun schlecht geht?


----------



## Andreas Gaisbauer (8. Oktober 2003)

Hallo,

Ich würde die auch zu C# oder Java raten - sind beide nicht sonderlich schwer, wobei ich gestehen muss das mir Java persönlich auch etwas unsympatisch ist (eigentlich Grundlos, is rein subjektiv). Was auch oft zum Einstieg empfolen wird wäre Delphi - hab aber darin fast keine Erfahrung, so das ich dir nix genaues drüber sagen kann. Ich hab damals mit C angefangen und muss sagen, das es im Nachhinein eigentlich ein sehr schöner Einstieg war, da 
a) der Sprachumfang nicht so gewaltig ist (man aber eigentlich trotzdem ALLES damit machen kann)
b) sich sehr viele syntaktische regeln moderner Sprachen sehr an C erinnern, was (für mich zuminderst) das einarbeiten in neue Sprache sehr erleichtert. 
Wenn du also nur auf Windows Platformen entwickeln möchtest, liegst du mit C# schon richtig...

ciao
Andreas


----------



## Dario Linsky (9. Oktober 2003)

Delphi ist ja im Grunde auch nichts anderes als Pascal mit aufgesetzter Objektorientierung. Ist zwar auch nett für Einsteiger, aber IMHO fehlen da ein paar Dinge, die bei C# vorhanden sind - deswegen mach ich auch kaum noch was damit.
Wobei Delphi eigentlich keine Programmiersprache ist, sondern nur die Entwicklungsumgebung für Object Pascal (das ja inzwischen ebenfalls auf "Delphi Language" umgetauft worden ist).


----------



## Valentin- (9. Oktober 2003)

Hm ich weiß nicht, aber ich halte eure Vorschläge in Sachen C# und Java für
ein wenig hochgegriffen bei Programmieranfängern, denn sie sind, C#
mehr als Java doch sehr OOP (Objekt Orientierte Programmierung für dich Britzi).
Ich würde für ihn an seiner Stelle doch eher mit Delphi anfangen der Builder
von Borland ist für umme und bietet auch ganz nette Features bzw. überlässt
einem nicht allzu viel Dinge bei denen man etwas kaputt machen kann.
C# und Java hingegen sind doch allein von der Einrichtung her mit deutlich 
mehr Aufwand verbunden. Man verliert schnell die Lust, wenn nicht alles auf
Anhieb läuft und so lange er sich nicht .NET Studio leisten kann wird auch
bei .NET rumfummeln müssen.



> Im Allgemeinen würde ich aber eher zu C#, Ruby oder Java (für serverseitige Anwendungen) tendieren.



C# ist auch Serverseitig möglich bzw. Java ist auch Serverlos lauffähig.
Nur mal nebenbei, nicht das wir Britzi unnötig verwirren.

Also Britzi ich rate dit Delphi.


----------



## Thomas Kuse (9. Oktober 2003)

Ich empfehle Dir auch Borland Delphi ab Version 3.0.

Wenn Du Delphi beherrschst kannst du mit Kylix unter Linux programmieren, und du kannst Dich dann leicht mit dem Borland C++ Builder  anfreunden, da der diegleiche IDE benutzt!

Ausserdem sind Delphi, C++ und Assembler unter Borland Projekten kombinierbar!


----------



## Britzi (9. Oktober 2003)

> Man verliert schnell die Lust, wenn nicht alles auf
> Anhieb läuft und so lange er sich nicht .NET Studio leisten kann wird auch
> bei .NET rumfummeln müssen.



Naja, das wäre kein Problem!
Bin noch Schüler und bekomme Schülerlizenzen!
Und ich wills ja nur lernen um Privat Dinge zu entwickeln!


Also irgendwie hört sich Delphi leicht negativ an, so als könne man dort nicht so viele Dinge tun oder die Sprache ausbauen!

Was genau versteht ihr unter Objektorientierter Programmierung?
Wieso ist das für mich nach euren Aussagen eher ungeeignet?

Ich denke damit hätte man doch später viel mehr möglichkeiten, oder?


----------



## Valentin- (9. Oktober 2003)

nein mit Delphi kann man genauso viel machen wie mit anderen Sprachen nur 
vieles gibt es einfach schon was man nicht mehr selbst machen muss.
OOP ist sehr komplex.
http://www.oszhdl.be.schule.de/gymnasium/faecher/informatik/oop/
Die Schülerlizenz ist auch nicht unbedingt billig.

Sicher hast du später "mehr" Möglichkeiten, aber um die Möglichkeiten
überhaupt zu bekommen solltest du klein anfangen und dich nach oben
arbeiten, du fährst ja auch mit 5 jahren nicht gleich Auto, sondern erstmal
Fahrrad..


----------



## Thomas Kuse (9. Oktober 2003)

Wie ich das mitbekommen habe, hast du bisher noch keine Höhere Programmiersprache benutzt, also wirst du die nächsten Jahre Delphi auf keinen Fall ausgereizt bekommen.


----------



## Britzi (9. Oktober 2003)

Ok, dann werde ich mich wohl am besten mir Delphi beschäftigen!

Was brauche ich dazu?
Muss ich ein Prog kaufen oder gibt es kostenlose Progs?
Kennt wer ein gutes Einstiegstut?


----------



## Patrick Kamin (9. Oktober 2003)

*-*

Ich würde dir von Delphi (als Entwicklungsumgebung) ebenso abraten, wie vom erlernen von Java, c, c++ oder c#.  Gleich mit Ereignis-Orientierter Programmierung anzufangen ist ebenfalls blödsinn. Editor + Compiler langen vollkommen am Anfang und die Verwirrung über Projekt-Einstellungen bleiben dir ebenso erspart. Also schau mal bei http://www.freepascal.org vorbei und such bei Google nach "Pascal tutorials", wobei ich eher zu einem Buch raten würde.


----------



## Andreas Gaisbauer (9. Oktober 2003)

> _Original geschrieben von Valentin- _
> *
> C# und Java hingegen sind doch allein von der Einrichtung her mit deutlich
> mehr Aufwand verbunden. Man verliert schnell die Lust, wenn nicht alles auf
> ...


Naja, der Aufwand der Einrichtung hält sich doch sehr in grenzen (das .Net  Framework ist ja bei XP mit SP1 (?) ja defaultmäßig dabei). Visual Studio ist auch nicht nötig, da für den Einstieg SharpDevelop (OpenSource C# IDE)  mehr als ausreichend ist, wenns denn überhaupt schon eine IDE sein muss... -> http://www.icsharpcode.net/OpenSource/SD/

ciao


----------



## JoelH (9. Oktober 2003)

*hmm,*

da dieser Thread eh keinem wirklich hilft brech ich mal ne Lanze für Delphi. Das einzig schlechte an Delphi ist sein Preis, ansonsten ist es eine durchdachte Syntax und die Möglichkeiten der Sprache sind vollkommen gleich zu setzen mit anderen Hochsprachen. 

Naja und wenn du dir das nicht leisten kannst, ich kann es auch nicht , programmeire damit auf der Arbeit gibbet Lazarus für freepascal. Ist auch ganz nett, steckt aber noch in den Kinderschuhen http://www.lazarus.freepascal.org/

Willst du Websachen machen würd ich php emfehlen.

Ansonstenzum OOP lernen find ich ruby cool http://www.ruby-lang.org


----------



## Blaschki (9. Oktober 2003)

Also nur mal so sagen wie ich programmieren gelernt habe.

1. QBASIC
2. Pascal
3. Delphi
Dann kam ein wandel
5. HTML
6. XML
4. Lingo (bei Macromedia Sockwave Studio)
7. PHP und da bin ich jetzt


----------



## Dario Linsky (9. Oktober 2003)

Ich denke auch, dass man zum Einsteigen in eine Programmiersprache nicht unbedingt direkt mit einer Entwicklungsumgebung wie der von Delphi konfrontiert werden sollte. Das verwirrt nur.
Zum Thema OOP: Gerade da denke ich, dass es sinnvoll ist, direkt damit zu lernen, sonst wird man sich beim Umstieg später mit einigen Missverständnissen auseinandersetzen müssten.
Aus dem Grund würde ich weiterhin zu C# oder Java tendieren, da diese Sprachen auch nicht mehr schwerer zu lernen sind als Pascal/Delphi und IMHO einen grösseren Bereich abdecken (Plattformunabhängigkeit, Webanwendungen, ...).



> Das einzig schlechte an Delphi ist sein Preis


Das Argument zählt nicht, es gibt ja immerhin auch eine kostenlose Version zum Lernen (siehe Delphi-Forum).


----------



## SixDark (9. Oktober 2003)

Hallo @all!

Ich möchte mich hier jetzt auch mal einmischen...  

Also, ich habe 'damals' mit BASIC auf 'nem Comodore VC20 angefangen, aber ich glaube das spielt heute keine Rolle mehr. Turbo PASCAL war dann auch ganz gut, aber als ich VisualBasic 4.0 entdeckt habe (das war damals die aktuelle Version), war mein Herz verloren! Seitdem programmiere ich VisualBasic, heutzutage natürlich mit der DOTNET-Version. VB ist sehr einfach und man kann damit Programme für Windows-Systeme entwickeln, sollte also für Dich durchaus in Betracht kommen können.
Aber eine Programmiersprache zu empfehlen halte ich für sehr subjektiv, da jeder meist das empfiehlt, was er selber für das Beste hält. Delphi ist sicherlich auch nicht verkehrt obwohl ich schon seit Jahren nichts mehr in Delphi programmiert hab.

Das schwierigste ist glaub ich erstmal das Konzept hinter einer Programmiersprache zu verstehen. Ich würde durchaus einen Anfang mit einer OOP-Sprache empfehlen, ich hatte bei meinem Wechsel von Prozedural nach OOP ganz schön Schwierigkeiten das neue Konzept zu verstehen und umzusetzen. Wenn man gleich damit beginnt hat man sicher dieses Problem nicht. Und die Zukunft ist nun mal die OOP.
Man sollte sich zuerst mal sie Datentypen, die es gibt zu gemüte führen. Danach macht man sich an das OOP-Konzept und versucht sich an kleinen Beispielen.

Ich selbst empfehle auf jeden Fall die Benutzung einer IDE (VisualStudio oder NetBeansIDE etc.), da man dort sehr schnell lernen kann (natürlich nur wenn man das auch will!) und selbst komplizierte Problem relativ schnell und einfach lösen und verstehen kann.

Ich arbeite selbst mit dem VisualStudio.NET (für VisualBasic, C#, C++, J# und ASP) und mit der NetBeansIDE (für Java). Mit Java hab ich erst vor ein paar Wochen angefangen (so nebenbei, wenn ich mal Zeit hab) und muß sagen es geht eigentlich ganz gut voran.
Für das VisualStudio.NET 2003 Professional ist eine Schulversion für ca. 100 EUR verfügbar. Die NetBeansIDE (für Java) von SUN ist kostenlos. SharpDevelop (für C#) ist ebenfalls kostenlos.

MfG
..::Six Dark::..


----------



## Dario Linsky (9. Oktober 2003)

Eine hochkomplexe Entwicklungsumgebung wie Visual Studio wird für einen Anfänger meiner Meinung aber dennoch eher hinderlich sein, weil dabei nicht die Sprache selbst im Vordergrund liegt. Wenn man sich den Code schnell zusammenklicken kann, mag das zwar produktiv sein, aber zum Lernen hat man dabei IMHO keine grossartigen Vorteile, eher Nachteile.
Zum Thema Visual Basic: Da zwischen VB.NET und C# eigentlich fast nur noch syntaktische Unterschiede bestehen, sollte die Entscheidung nicht mehr besonders schwer fallen. Ausserdem denke ich, dass durch das .NET-Framework VB auch nicht mehr mit den Vorgängerversionen zu vergleichen ist.
Ich hab selbst eine ganze Zeit lang mit Visual Basic gearbeitet hab, und würde Dir auf jeden Fall davon abraten.


----------



## Britzi (10. Oktober 2003)

Also alles in Allem habt ihr mich eigentlich dazu gebracht an C# zu denken!
Ich denke wenn man diese Sprache lernt kann man nix falsch machen, da sie hoch aktuell ist!
Ok, sich alles selbst zusammen zu klicken ist nix!
Aber man kann doch auch direkt Programmieren, oder?
Was brauche ich alles um mit dieser Sprache vernümpftig anzufangen?


----------



## Dario Linsky (10. Oktober 2003)

> Was brauche ich alles um mit dieser Sprache vernümpftig anzufangen?


Im Grunde genommen eigentlich nur das .NET-Framework von Microsoft (oder alternativ dazu Mono). Ein Buch wär natürlich auch ganz hilfreich, da wäre für Einsteiger IMHO "C# lernen" von Addison-Wesley zu empfehlen (gibt es auch als Ebook).
Und logischerweise ein Editor zum Code eintippen. Da gibt es aber einige (von Notepad bis Visual Studio). #Develop ist ein ganz gutes Mittelmaß und dazu auch kostenlos. Das steht aber auch alles noch mal ausführlich in besagtem Buch.
Nur solltest Du bei der Wahl der Entwicklungsumgebung wie gesagt darauf achten, nicht gerade ein hochkomplexes Teil zu nehmen, das Dich eher verwirrt als weiterbringt (z. B. wirst Du einen Forms-Designer anfangs nicht brauchen).


----------



## JoelH (10. Oktober 2003)

> _Original geschrieben von Dario Linsky _
> * Wenn man sich den Code schnell zusammenklicken kann, mag das zwar produktiv sein, aber zum Lernen hat man dabei IMHO keine grossartigen Vorteile, eher Nachteile.*



Sehe ich nicht ganz so dramatisch, denn wer schnell was zusammenklick hat zwar was schön aussieht aber nichts bewirkt und dann merkt man recht schnell dass das alleine noch kein Programm ausmacht.

Eine IDE bzw. eine Sprache mit vielen Komponenten ist ja gewissermassen die Idee der OOP. Warum das Ras jedesmal neu erfinden wenn man ein RAD-Tool dafür benutzen kann  

Natürlich bleiben die absoluten Basics da au der strecke, aber dies muss kein Nachteil sein,wenn ich nur an Stringbehandlung und C/C++ denke wird mir schlecht.


----------



## SixDark (10. Oktober 2003)

Hi!

Schnell was zusammenklicken hatte ich eigentlich nicht angesprochen! Ich hab durch die IDE sehr viel gelernt. Wenn man ein Problem hat, dann klickt man sich dieses Problem zusammen (falls möglich) und schaut sich dann den Code an, der generiert wird. Deswegen schrieb ich auch "wenn man das auch will"! Wer nicht lernen will, der lernt nix... egal ob mit 'nem Text-Editor oder 'ner IDE.

MfG
..::Six Dark::..

PS: Aber ich glaube mit C# kannst Du nix falsch machen!


----------



## Klon (10. Oktober 2003)

Dieser Thread geht auf die "gleiche" Frage ein:
http://www.tutorials.de/tutorials131973.html


----------



## JoKne (10. Oktober 2003)

Also, ich geb jetzt auch mal meinen Senf dazu!
Ich bin 16 Jahre alt, immernoch ein völliger Newbie und hab ungefähr mit 13 Html angefangen, darauf folgte dann Visual Basic 6.0!Mich hat das damals und heute noch fasziniert, man kann dort mit wenig Aufwand viel bewerkstelligen und ich glaube Britzi stellt sich das ein bisschen zu einfach vor, denn einfach mal 2 - 3 klicks machen und dann sofort fertig ist auch bei VB6 nix!
Ich empfehle ganz klar Visual Basic  + Kompendium "Visual Basic 6.0 schritt für schritt" von "Microsoft Press"!

Ich denke gerade im Anfang ist es wichtig auch mal Erfolge zu sehen ohne das man erstmal 500 Seiten gelesen hat, und das ist bei diesem Buch genau der Fall!
Und wie er sagte: "kleine Hilfstools" das ist ja definitions- und Ansichtssache aber ich denke mit VB kann man sehr schnell "kleine Hilfstools" erstellen!

Werf doch mal einen Blick auf http://www.activevb.de dort kannste dir mal en genaueres Bild  über VB machen!

Bis jetzt hab ich Html,xml.PHP,CGI,Java, Javascript, VB programmiert, aber mit c# hatte ich schon beim installieren vom compiler die ersten Probleme^^!

Naja hoffe ich konnte dir helfen und hab nicht zuviel Newbie Müll geschrieben!


----------



## JoelH (10. Oktober 2003)

> _Original geschrieben von JoKne _
> *
> Ich empfehle ganz klar Visual Basic  + Kompendium "Visual Basic 6.0 schritt für schritt" von "Microsoft Press"!
> *


Iss halt auch nicht gerade die billigste Lösung.


----------



## JoKne (11. Oktober 2003)

> Iss halt auch nicht gerade die billigste Lösung.




Ist was dran  Buch kostet neu 30 euro und wie vb6 im Preis liegt weiß ich leider gerade nicht!Aber vielleicht kommt man ja gebraucht dran!
Aber für den Einstieg in die Welter des Programmierens ist Vb meiner Meinung nach Ideal!


----------



## JoelH (11. Oktober 2003)

> _Original geschrieben von JoKne _
> *Aber vielleicht kommt man ja gebraucht dran! *



Genau die richtige Einstellung eines Programmierers *kopfschüttel* => Hoffentlich raubkopieren sie mein Programm so oft wie möglich, dadurch wird es bekannt aber ich bekomm leider keine Kohle dafür 

 *kopfschuettel2*


----------



## Terrance & Philipp (11. Oktober 2003)

Ich glaube eher er hat gemeint VB6 und das Buch gebraucht zu kaufen. Z.B. bei eBay zu ersteigern...

Ich habe mit HTML angefangen und dann ein Weilchen was mit VB gemacht. Irgendwann hab ich dann PHP gelernt und jetzt bin ich am C++ lernen.


----------



## JoKne (11. Oktober 2003)

> Ich glaube eher er hat gemeint VB6 und das Buch gebraucht zu kaufen. Z.B. bei eBay zu ersteigern...



So hab ich mir das eigentlich gedacht!
Seitwann sind den raubkobien gebraucht?
Da hätte ich wohl eher gesagt vielleicht kann dir ja jemand das Ding brennen!
Oder saugs dir doch bei Kazaa,emule etc. omg!

Hab bei ebay geschaut und da musste für die Normale VB 6 Edition ca. 150 Euro hinlegen, schülerlizenzen dürften denke ich mal noch ein wenig günstiger sein!


----------



## JoelH (11. Oktober 2003)

*hmm,*

sorry. Da hab ich wohl was verpeilt.


----------



## SixDark (11. Oktober 2003)

Wie er ja weiter oben schon erwähnt hatte würde er auf eine Schülerlizenz zurückgreifen. Das komplette VisualStudio.NET 2003 Professional kostet für Schüler ca. 100 EUR! Nicht empfehlen kann ich die reine VisualBasic.NET für einen Normalpreis von ca. 130 EUR! Diese Version bietet nicht mal annähernd einen vernünftigen Versionsumfang.

..::Six Dark::..


----------



## won_gak (17. Oktober 2003)

Also ich halte den Einstieg über PHP nicht soooo verkehrt.

1. PHP hat eine Syntax, die stark an C angelehnt ist, oder sogar übereinstimmt
2. Ideen für Web-Projekte findet man ständig, sodass man auch gleich das Projektmanagement üben kann
3. OOP geht auch
4. kostenlos


----------



## SixDark (17. Oktober 2003)

PHP ist aber meines Erachtens (man möge mich berichtigen) keine Programmiersprache, sondern eine Scriptsprache. Außerdem fällt es mir sehr schwer eine *.EXE Datei zu erstellen.   Zum anderen benötigt man auf dem System einen Webserver mit PHP und da sind manche schon überfordert. Auch kann ich eben nicht mal eben schnell den Laptop mitnehmen und mein Tool mal jemandem vorführen.......

Halte ich für keine gute Idee.

..::Six Dark::..


----------



## won_gak (17. Oktober 2003)

Ja klar ist PHP eine Scriptsprache.

Aber die Argumente sind trotzdem stimmig. Außerdem zeige ich Leuten meine Scripts auf meinem Laptop. LAMP, oder WAMP auf dem Laptop ist auch kein Problem.


----------



## Tim C. (17. Oktober 2003)

> PHP ist aber meines Erachtens (man möge mich berichtigen) keine Programmiersprache, sondern eine Scriptsprache. Außerdem fällt es mir sehr schwer eine *.EXE Datei zu erstellen.


Auch dafür gibt es mitlerweile Möglichkeiten und Programme die das Übernehmen. Das ist aber wegen der starken Verknüpfung von PHP mit dem Web überhaupt nicht sinnvoll teilweise.

Selbst PHP Präsentationen mit Webserver + PHP +MySQL von CD sind mittlerweile möglich.

mfG
Tim

und auf inne Mittagspause


----------



## Christian Fein (17. Oktober 2003)

EXE wofuer brauch mann eine EXE !!
chmod +x programm <- ist exe genug 

PHP zum Programmieren lernen?

Ja und Nein. Einerseits bietet PHP eine Syntax die bei vielen Programmiersprachen weiterhilft (eigentlich alle C Style Programmiersprachen).
Anderseits verleitet PHP zum dirty Stile (kein konsequentes OOP vorteilhaft), deshalb oft resultierende Mixes.

Zudem vermittelt PHP nicht mal annähernd den Umgang mit verschiedenen Datentypen, 
Konvertierungsschwierigkeiten (z.b long in in).

Anderseits bietet PHP ziemlich schnell erfolgserlebnisse, die mann braucht um nicht das Handtuch zu werfen.

Alles in allem:
Programmieren lernen mit PHP? 
Ok aber nur wenn mann nach dem Verstehen und anwenden können von PHP, mann seinen Horizont durch eine Starke OOP Sprache wie Java erweitert.


----------



## Astardes (17. Oktober 2003)

Erst einmal sollte man sich überlegen wofür man eine Programmiersprache braucht. Dazu gehören unter anderem Plattformunabhängigkeit ja/nein, Sicherheitsaspekte und welche Möglichkeiten die Programmiersprache bieten sollte. Das schränkt die Anzahl der Programmiersprachen schon stark ein.


----------



## won_gak (17. Oktober 2003)

> _Original geschrieben von Christian Fein _
> *Ok aber nur wenn mann nach dem Verstehen und anwenden können von PHP, mann seinen Horizont durch eine Starke OOP Sprache wie Java erweitert. *


 oder C++, oder C#, oder... *g*


----------



## Christian Fein (17. Oktober 2003)

> _Original geschrieben von won_gak _
> *oder C++, oder C#, oder... *g* *



Das C# wirklich plattformunabhängig ist, währe mir neu


----------



## Astardes (17. Oktober 2003)

Microsoft-Produkte sind immer wahnsinnig plattformunabhängig *g*
Win 95, Win 98, Win NT, Win 2000, Win XP, Win 2K3


----------



## won_gak (17. Oktober 2003)

> _Original geschrieben von Christian Fein _
> *Das C# wirklich plattformunabhängig ist, währe mir neu *


von plattformunabhängig war doch nicht die Rede. OOP, oder?


----------



## Dario Linsky (17. Oktober 2003)

> Das C# wirklich plattformunabhängig ist, währe mir neu


C# an sich ist IMHO schon plattformunabhängig, da es ja nicht zu nativem Code, sondern zu diesen IL-Assemblies kompiliert wird. Das einzige, was an C# nicht richtig plattformunabhängig ist, ist das offizielle .NET-Framework von Microsoft. Aber wozu gibt es Mono?
Und AFAIK gibt es ja auch von Microsoft ein auf Unix-Plattformen portiertes Framework namens Rotor, das hab ich aber noch nicht ausprobiert.


----------



## Christian Fein (17. Oktober 2003)

Eine Plattformunabhängige Sprache in der ich nicht plattformunabhängig programmieren kann ist ->nicht<- Plattformunabhängig.


----------



## Dario Linsky (17. Oktober 2003)

Seh ich ja auch so. Daran ist aber nicht die Sprache schuld, sondern die MS-Marketing-Politik. C# ist grundsätzlich schon plattformunabhängig - für alle Plattformen, auf denen es eine VM dafür gibt. Dass es offizielle VM's im Augenblick nur für Windows-Systeme gibt, ändert ja nichts an der PU der Sprache.

PS: Kann man eigentlich mit Mono kompilierte Assemblies auch auf Windows laufen lassen (oder auch andersrum)? Hab ich irgendwie noch nie ausprobiert. Müsste aber eigentlich gehen (sofern Windows.Forms bzw. Gtk# nicht genutzt wird), und dann sind diese Assemblies auch plattformunabhängig.


----------



## JoelH (17. Oktober 2003)

*hmm,*



> _Original geschrieben von SixDark _
> *PHP ist aber meines Erachtens (man möge mich berichtigen) keine Programmiersprache, sondern eine Scriptsprache. *



Und was ist der Unterschied ? Das eine wird interpretiert das andere compiliert, so gesehen ist VB auch eine Scriptsprache da es kein richtiges native Programm erzeugt sondern immer die vbrun.dll (oder wie das Ding sich schimpft braucht).

Eine Scriptsprache ist auch eine Programmiersprache !


----------



## tuxracer (17. Oktober 2003)

Also meines erachtens ist es bei weitem am besten, sich zuerst mit einer zwar völlig alten, aber dennoch sehr wichtigen Sprache zu beschäftigen.

QBASIC  (ist Gratis downloadbar) am besten Version 4.5 verwenden, weil am gebräuchlichsten

Diese Sprache ist sehr einfach zu erlernen, legt den ersten Grundstock für weiteres, und es ist relativ einfach, etwas zu bewerkstelligen, was funktioniert.


Wenn Du das Gefühl hast,Du bist jetzt Sattelfest genug in Bezug auf Grundkonstruckte wie Schleifen, Verzögerungen, Bedingungen usw.., kannst Du mal die sprache wechseln, und zwar zu VisualBasic, oder auch zu VisualBasic for Applications(VBA), was mit Office 2000 oder auch Office Xp mitgeliefert wird.

VBA kostet dich nix, hat aber den Nachteil, das es speziell nur für Office spezielle Befehle verwendet.
VB ist vielseitiger, kostet aber ne Stange Geld, genauso der nachfolger Visual.NET

beide Sprachen sind objektorientiert, aber die Basis ist BASIC, weshalb ich zum Beginn QBASIC vorgeschlagen habe.

Nachdem Du dann wieder das Gefühl hast, das Du Dir sicher bist, was Du da machst, kommt  ANSI C an die Reihe, weil dies heute in etwa der kleinste gemeinsame Nenner zu Java , C++,usw.. ist.

Das heisst, wenn Du dann C beherschst, kannst Du die anderen Sprachen eigentlich schon, zumindest verstehst Du dann, falls Du Code in irgendeiner dieser Sprachen  vor Dir hast, was gemeint ist.

Klar ist dies ein langer, beschwerlicher Weg, aber so hast Du ne Basis die hält.


----------



## Alexander Schuc (17. Oktober 2003)

> _Original geschrieben von Dario Linsky _
> *Seh ich ja auch so. Daran ist aber nicht die Sprache schuld, sondern die MS-Marketing-Politik. C# ist grundsätzlich schon plattformunabhängig - für alle Plattformen, auf denen es eine VM dafür gibt. Dass es offizielle VM's im Augenblick nur für Windows-Systeme gibt, ändert ja nichts an der PU der Sprache.
> 
> PS: Kann man eigentlich mit Mono kompilierte Assemblies auch auf Windows laufen lassen (oder auch andersrum)? Hab ich irgendwie noch nie ausprobiert. Müsste aber eigentlich gehen (sofern Windows.Forms bzw. Gtk# nicht genutzt wird), und dann sind diese Assemblies auch plattformunabhängig. *



ad Plattfomunabhängigkeit:
Genau meien Meinung.

ad Mono:
Ja, natürlich funktioniert das.


----------



## SixDark (17. Oktober 2003)

> Ich denke dabei an Programme mit einer Oberfläche!
> Diese Programme sollen auf Win Plattformen wir Xp laufen.



Lest ihr eigentlich die vorhergehenden Beiträge bevor ihr antwortet Derjenige, der diesen Thread eröffnet hat schrieb ganz klar was er will, was soll jetzt eine Diskusion um Plattformunabhängigkeit etc.? Last Ihn doch erstmal mit einfachen Sachen anfangen...  

..::Six Dark::..


----------



## Christian Fein (17. Oktober 2003)

> _Original geschrieben von SixDark _
> *Last Ihn doch erstmal mit einfachen Sachen anfangen
> *



Java ist einfach.


----------



## JoelH (17. Oktober 2003)

*hmm,*



> _Original geschrieben von Christian Fein _
> *Java ist einfach. *



Bei Java sucht man länger nach der richtigen Methode in der richtigen Klasse als dass man lernt zu programmieren.


----------



## Christian Fein (17. Oktober 2003)

*Re: hmm,*



> _Original geschrieben von JoelH _
> *Bei Java sucht man länger nach der richtigen Methode in der richtigen Klasse als dass man lernt zu programmieren. *



Das ist Humbug.

system.io.Reader.read() <- muss mann nicht suchen wenn mann weiss weiss wie ein OOP Framework aufgebaut ist.


----------



## JoelH (17. Oktober 2003)

*Re: Re: hmm,*



> _Original geschrieben von Christian Fein _
> *Das ist Humbug.
> 
> system.io.Reader.read() <- muss mann nicht suchen wenn mann weiss weiss wie ein OOP Framework aufgebaut ist. *



Das bekommt der Anfänger natürlich mit in die Wiege gelegt und die ganze OOP mit dazu  Nix für ungut, aber am Anfang sucht man sich wirklich tot. Es gibt da intiuitivere Sprachen find ich. Ich sag damit nicht dass sie besser sind, sie sind für den Laien einfach.


----------



## Christian Fein (17. Oktober 2003)

*Re: Re: Re: hmm,*



> _Original geschrieben von JoelH _
> *Das bekommt der Anfänger natürlich mit in die Wiege gelegt und die ganze OOP mit dazu  Nix für ungut, aber am Anfang sucht man sich wirklich tot. Es gibt da intiuitivere Sprachen find ich. Ich sag damit nicht dass sie besser sind, sie sind für den Laien einfach. *



Sicher bekommt mann es nicht in die Wiege gelegt. 
Aber wer mit der Java SDK API zurecht kommt,
kommt dann ebenso schnell mit Qt, .NET VCL oder sonstwas
klar. 

Irgendwann muss mann es ja lernen


----------



## JoelH (18. Oktober 2003)

*hmm,*

joo aber da ist der intuitive Weg , IMHO einfacher.

Nehmen wir =>

```
10 PRint" JoelH"
20 GOTO 10
```

Das hat mich fasziniert, ich hab es auf anhieb kapiert und es hat mich seit 20 Jahren in seinem Bann gehalten.

Ich sehe das von der pädagogischen Seite, man hatte direkt Erfolg und musste sich genau 2 Befehle merken !

Zu diesem Programm braucht man keine OOP. Es sind Alogorythmen, die sich direkt in Sprache umwandeln lassen und dadurch direkt verstanden werden. 

Es macht hierbei keine Sinn, bzw. es wird nciht verstanden, dasss dies ein Strukturierter Programmierannsatz ist und es dazu noch eine OOP ANsatz gibt, es gibt KI Ansätze usw. . Das ist den Anfänger total egal. Er ist mit 2 Befehlen der Gott des Tages und wenn amn ihm eienn Tag später noch if erklärt glänzt er 3 Wocehn lang. 

Das Javaframework sit ja ganz nett udn auch durchdacht. Gott beware ich sage was gegen die Götter => RA = Sonnengott = SUN  Aber es ist ein Problem sich suchen zu müssen wo die Methode steht damit ich was ausgeben darf. 

Warum hat ich Assembler woh nicht durchgesetzt ? Sie ist immerhin die beste Programmiersprache (schnell und konkret) . Weil sie kryptisch sit. Und so sind es aufgeplusterte Sprachen. Ein Anfänger braucht erstmal direkte , kleien Erfolge und ohne Hardcoreleherer mit viiiiiieeeeel Motivationsgabe sehe ich für Java schwarz.

Das hat nichtmal was mit der OOP an sich zu tun. nimm Ruby, da ist es mehr OOP als bei Java aber trotzdem ist durch die weniger grosse 'Grundausstattung' das intuitive Verstehen der Sprache viel höher.

Aber alles ist subjektiv in dieser Hinsicht !


----------



## Rena Hermann (18. Oktober 2003)

Ein kluger Mensch sagte mir mal "Lern keine Programiersprache sondern lern programmieren"
Meiner Meinung nach hatte er recht - wichtig ist das Prinzip, das Grundverständnis des Programmierens an sich ... der Rest ist Syntax und dafür gibt's Referenzen. Von daher ist es imho egal womit du anfängst solange du nach dem Prinzip forschst und nicht wie in der Schule im Fremdsprachenunterricht Vokabeln (Befehle) auswendig lernst.

Just my 0,2 Euro ....

Gruß
Rena

PS: Wobei der Unterschied zwischen Programmiersprachen und Scriptsprachen ja schon angesprochen wurde ... und selbst da gibt es Paralellen.


----------



## JoelH (18. Oktober 2003)

*hmm,*

@rena
Der Typ hatte Recht. Aber du machst da wieder den selben Fehler den ich C.F. ankreide. Natürlich ergibt sich die Syntax aus der Sprache und der Algo ist trotzdem der selbe. Aber genau da ist ja mein 'pädagogischer' Ansatz , denn der Umkehrschluss ist der selbe aber der Anfänger hat IMHO mehr davon, wenn er eine einfach Syntax geliefert bekommt und dadurch den Algo lernt !

DIes ist IMHo das Erfolgsrezept von M$. Siehe VB und das OS an sich. Es wir eine komplizierte Sache einfach verkauft. Auf die Tücken bzw. die Beschränktheit wird nicht hingewiesen. Dies ist erstmal gut. Davon muss man sich aber auch lösen können, wenn amn alles verstetht. Da ist der User dann aber zu fual und mag kein Linux weil es so komplizietrit ist, dass dadurch neue Möglichkeiten entstehen versteht er nicht oder mag es ncht einsehen. Trotzdem hat er Recht, M$ ist einfach aber den Horizont kann man erst erweitern wenn man darüberhinaus blickt. Darum gebe ich ja auch C.F. nicht unrecht wenn er sagt Java ist gut, es ist aber nur was für die die den Grundtext verstanden haben udn ihren Horizont erweitern wollen.


----------



## tuxracer (20. Oktober 2003)

@Rena

Bin ich ganz Deiner Meinung, ich hab so geschrieben Fang mit was altem an(QBasic) weil gut fürs Verständnis, dann VB oder VBA(weil schon Objektorientiert, dann C( weil die Mutter aller modernen Sprachen, und dann sollte man soweit sein, eigentlich egal welche Sprache, soweit zu verstehen, das man darauf programmen kann, ohne gleich Probleme zu bekommen, weil dann das verständnis da ist.

Ist ein langer Weg

Deine Formulierung ist einfach kürzer und besser


----------



## Pflaumi (9. November 2003)

Und wie wär's mit SQUEAK SMALLTALK? Ist für Einsteiger gedacht, die Objektorienierte Programmierung erlernen wollen.

ist übrigens Open Source (und auch für Schulen super geeignet, man könnte -fast- schon im Kindergarten mit dieser Programmiersprache anfangen


----------



## Christian Fein (10. November 2003)

*Re: hmm,*



> _Original geschrieben von JoelH _
> *
> Das hat nichtmal was mit der OOP an sich zu tun. nimm Ruby, da ist es mehr OOP als bei Java aber trotzdem ist durch die weniger grosse 'Grundausstattung' das intuitive Verstehen der Sprache viel höher.
> *



Tut mir leid, aber das ist falsch. Ich mag ja ruby, aber Ruby ist nicht stark typisierend. Auch wenn Veriablen den Datentyp annehmen, so ist dieser dennoch
dynamisch. Das ist etwas das bei Java anders geregelt ist und eher dem OOP Paradigma entspricht.

Darüber hinaus sind beide Sprachen komplett OOP.

@Rena:
Du hast natuerlich recht. Es geht darum das Programmieren zu lernen, dieses sollte aber mit einer Programmiersprache geschehen. Pseudo code ist zu theoretisch wenn mann nicht eine einzige Sprache beherrscht.
Ich rate zu Java weil es einfach, klar ist und die moderne Art der Programmierung beibringt.
C ist prozedual und sollte heutzutage nicht dafür geeignet sein Programmieren zu lernen. C++ überfordert den Lernenden, wenn er OOP und Pointerkonzepte (Zeiger auf Funktionen, Zeiger auf Methoden) in den Kopf geballert bekommt.
Visual Basic, versaut den Programmierstil, durch unnötige Metaschichten. Bei VB ist nicht interressant wieso etwas so geht, weil alles dicke versteckt wird.
Aber genau das sollt mann  lernen.
Object Pascale lass ich zum Programmieren lernen auch noch durchgehen.
Script Sprachen wie Perl und Ruby, Python oder ähnliche sollte mann lernen wenn mann nicht Applikationen programmieren will (obwohl das auch gut möglich ist) sondern administrative Aufgaben automatisieren will.
Mann lernt zu wenig der Compilerkonzepte, umgang mit dem Debugger u.ä.
Eine weitere schöne Sprache (Lisp) ist auch eher weniger verbreitet.

Also Java oder Pascale
Da aber "Real Programmers Don't Use Pascal"
http://www.pbm.com/~lindahl/real.programmers.html
bleibt Java


----------



## ITSE (11. November 2003)

Ich glaube der ganze Thread bringt dem ursprünglichen Ersteller nix mehr...

Es gibt nun mal nicht die ultimative Programmiersprache...

Durch meinen Horizont kann ich folgendes dazu"senfen"...:

Man sollte sich nicht auf 1 Sprache beschränken.
Auf jeden Falls sollte man eine der großen Sprachen beherrschen, wie z.B. C/C++ oder Java usw... Das aus ganz einfachem Grund: Es bauen einfach sehr viele Sprachen auf die C-Syntax auf!
Man lernt nie aus.


----------

