Mit welcher Programiersprache anfangen ?
Ich möchte Programmieren lernen mir auch die nötige Fachlektüre besorgen und auch die Zeit!
Ich möchte Platformunabhängig programieren weswegen Visual Basic wegfällt mit ausnahme der VBS die werde ich mir schon noch vornehmen.
Ich denke da an Java (6) oder C zumal ich hinterher auch einen leichteren einstieg in Objektive C haben möchte !
Mit was anfangen ? Von gibt es zig Varianten zb C# und C++ ?
Java denk ich hätte alleine wegen bluej vorteile und Java sollen sich ja auch nicht als zu verschieden sein.
Was mir wichtig ist halt das man hinterher in Objektive besser reinkommt, da ich schon Ios anwendungen Programieren möchte.
Hoffe ihr könnt mir helfen.
Gruß Niklas
P.s und ja ich habe bereits google benutzt .
Ich möchte Platformunabhängig programieren weswegen Visual Basic wegfällt mit ausnahme der VBS die werde ich mir schon noch vornehmen.
Ich denke da an Java (6) oder C zumal ich hinterher auch einen leichteren einstieg in Objektive C haben möchte !
Mit was anfangen ? Von gibt es zig Varianten zb C# und C++ ?
Java denk ich hätte alleine wegen bluej vorteile und Java sollen sich ja auch nicht als zu verschieden sein.
Was mir wichtig ist halt das man hinterher in Objektive besser reinkommt, da ich schon Ios anwendungen Programieren möchte.
Hoffe ihr könnt mir helfen.
Gruß Niklas
P.s und ja ich habe bereits google benutzt .
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator Biber am 28.08.2011 um 21:18:27 Uhr
Geschlossen, als es am Schönsten war.
Content-ID: 171817
Url: https://administrator.de/forum/mit-welcher-programiersprache-anfangen-171817.html
Ausgedruckt am: 22.12.2024 um 21:12 Uhr
48 Kommentare
Neuester Kommentar
Auch wenn die Frage sehr subjektive Antworten nach sich ziehen wird, wenn Argumente mitgeliefert werden kann man denke ich die Auswahl auf einige Sprachen beschränken.
Ich bin nicht sicher welchen Anteil C++ hat, aber ich würde dir raten damit anzufangen. Und wenn du platfromunabhängig werden willst solltest du dich gleich mit dem Qt-Framework von Nokia beschäftigen. Die bieten viele integrierte Patterns, haben schöne Gui-Tools und du musst dir um die Platform keine Gedanken machen. Du schreibst deine Programme und auf jedem System auf dem du compilieren kannst, kannst du auch dein Programm ausführen.
C# ist auch interessant, aber unterscheidet sich syntaktisch nicht von C++ (bis auf Feinheiten vielleicht). C# ist allerdings eine .NET-Sprache, da sieht die Sache mit der Platformunabhängigkeit schon wieder kritischer aus ;)
Java lernt sich leichter als C++ (Achtung Subjektivität :D) und ist in jedem Fall Platformunabhängig. Allerdings kann man mit C++ teilweise effizienter schreiben und die Programme arbeiten schneller. Der Unterschied ist mittlerweile sehr klein geworden, aber er ist noch da.
Vielleicht hilft dir das ein bisschen. Für Web-Anwendungen und Thin-Clients wirst du wohl um PHP noch herum kommen. Und es gibt eine Menge Alternativen ;)
Grüße
HaMster
Ich bin nicht sicher welchen Anteil C++ hat, aber ich würde dir raten damit anzufangen. Und wenn du platfromunabhängig werden willst solltest du dich gleich mit dem Qt-Framework von Nokia beschäftigen. Die bieten viele integrierte Patterns, haben schöne Gui-Tools und du musst dir um die Platform keine Gedanken machen. Du schreibst deine Programme und auf jedem System auf dem du compilieren kannst, kannst du auch dein Programm ausführen.
C# ist auch interessant, aber unterscheidet sich syntaktisch nicht von C++ (bis auf Feinheiten vielleicht). C# ist allerdings eine .NET-Sprache, da sieht die Sache mit der Platformunabhängigkeit schon wieder kritischer aus ;)
Java lernt sich leichter als C++ (Achtung Subjektivität :D) und ist in jedem Fall Platformunabhängig. Allerdings kann man mit C++ teilweise effizienter schreiben und die Programme arbeiten schneller. Der Unterschied ist mittlerweile sehr klein geworden, aber er ist noch da.
Vielleicht hilft dir das ein bisschen. Für Web-Anwendungen und Thin-Clients wirst du wohl um PHP noch herum kommen. Und es gibt eine Menge Alternativen ;)
Grüße
HaMster
Hallo Niklas,
hast Du denn schon eine Vorstellung, was Du damit programmieren möchtest?
Du nennst als Sprachen VB, C und Java, die decken aber schon sehr unterschiedliche Bereiche ab. Also in welche Richtung soll's denn gehen und warum möchtest Du Objective C lernen?
Markus
hast Du denn schon eine Vorstellung, was Du damit programmieren möchtest?
Du nennst als Sprachen VB, C und Java, die decken aber schon sehr unterschiedliche Bereiche ab. Also in welche Richtung soll's denn gehen und warum möchtest Du Objective C lernen?
Markus
Hallo,
wie schon geschrieben. Es kommt drauf an in welchem Bereich du Programmieren willst.
Wenn du mit Objektive C für z.B IPhone Programmieren willst. Meiner Meinung nach hat das relativ wenig mit C# und C++ zu tun. Ich arbeite etwas mit C# und hab fast nen Anfall bekommen als ich mir Objektive C anschauen wollte. Aber ich lasse mich auch gerne eines besseren belehren.
wie schon geschrieben. Es kommt drauf an in welchem Bereich du Programmieren willst.
Wenn du mit Objektive C für z.B IPhone Programmieren willst. Meiner Meinung nach hat das relativ wenig mit C# und C++ zu tun. Ich arbeite etwas mit C# und hab fast nen Anfall bekommen als ich mir Objektive C anschauen wollte. Aber ich lasse mich auch gerne eines besseren belehren.
Zitat von @Niklas434:
Danke für den Tipp mit QT wär ich gar nicht drauf gekommen, und das Favorisiert natürlich auch C++.
Tjaa jetzt Schwank ich zwischen C++ und Java. Gibt es für C++ auch ein gutes lernprogramm?
Naja wie sieht das denn mit der Combo C++ und Objective C aus ? Ich meine ein SDK acc für 100€ wäre das geringste
problem...
Danke für den Tipp mit QT wär ich gar nicht drauf gekommen, und das Favorisiert natürlich auch C++.
Tjaa jetzt Schwank ich zwischen C++ und Java. Gibt es für C++ auch ein gutes lernprogramm?
Naja wie sieht das denn mit der Combo C++ und Objective C aus ? Ich meine ein SDK acc für 100€ wäre das geringste
problem...
Also ich würd da auch eher tendieren C++ wobei man mit Mono auch unter Linux weit mit C#.Net kommen würde.
Dafür gibt's Visual Studio Express.
Aber wie gesagt das man da viel für Objective C verwenden kann bin ich eher nicht der Meinung es verwirrt sogar.
Hallo,
nix kaufen! Installier Dir Linux, da hast Du fast alle Sprachen kostenlos, also zum Lernen reicht das doch aus. Dann kannst Du auch C++, Objective, C, Java usw mal ausprobieren.
Im übrigen gibt's eine ganze Menge interessanter Programmiersprachen die hier noch nicht genannt worden sind.
Mittlerweile gibt's viele Sprachen für die Java-VM, bzw. Portierungen von Sprachen auf die Java-VM, z.B. JRuby oder Clojure (ein Lisp-Dialekt). Da kommst Du schnell auf das Thema DSL (Domain-Specific-Languages), also Sprachanpassungen für spezielle Anforderungen, und das sind die Themen der Zukunft.
Du musst also nicht unbeding Java lernen um Dich mit dessen Umgebung vertraut zu machen. Probier einfach mal alles aus. Programmieren lernt man sowieso nur durch programmieren.
Markus
nix kaufen! Installier Dir Linux, da hast Du fast alle Sprachen kostenlos, also zum Lernen reicht das doch aus. Dann kannst Du auch C++, Objective, C, Java usw mal ausprobieren.
Im übrigen gibt's eine ganze Menge interessanter Programmiersprachen die hier noch nicht genannt worden sind.
Mittlerweile gibt's viele Sprachen für die Java-VM, bzw. Portierungen von Sprachen auf die Java-VM, z.B. JRuby oder Clojure (ein Lisp-Dialekt). Da kommst Du schnell auf das Thema DSL (Domain-Specific-Languages), also Sprachanpassungen für spezielle Anforderungen, und das sind die Themen der Zukunft.
Du musst also nicht unbeding Java lernen um Dich mit dessen Umgebung vertraut zu machen. Probier einfach mal alles aus. Programmieren lernt man sowieso nur durch programmieren.
Markus
Noch ein kleiner Tip von mir:
Schau mal bei Google nach dem Stichwort Open Course Ware, denn wenn Du einigermaßen gut Englisch sprichst (setze ich einfach mal voraus, wenn Du Programmieren lernen und das alles dann auch verstehen willst) kannst Du Dir die Onlinekurse von den Unis MIT oder auch Stanford angucken.
Ich komme aus dem kaufmännischen Bereich und befasse mich nur privat viel mit PCs, möchte nun aber auch eine erste Programmiersprache lernen. Habe mich für Java entschieden und kann Dir für den Fall den Kurs von Stanford nur empfehlen. Nennt sich Programming Methodology JAVA und ist für Einsteiger ohne Vorkenntnisse gedacht.
Link: http://www.youtube.com/watch?v=KkMDCCdjyW8
Andernfalls kannst Du solche Open Course Ware Quellen, in diesem Fall ganze Vorlesungen, auch erstmal als Schnupperkurse angucken. Meistens wird bereits in der ersten Vorlesung erwähnt welcher Stoff genau vermittelt wird oder auch welche Aufbaukurse und Sprachen anschließend möglich sind.
Wie Du und andere bereits vorher schon erwähnten, sind sich viele Sprachen im Groben sehr ähnlich. Es sollte also nicht all zu schwer sein weitere Programmiersprachen zu lernen, wenn man eine halbwegs gut kann und beherrscht. Die Frage ist halt nur, ob Du persönlich besser mit Büchern allein oder doch zusätzlich noch mit Videos klar kommst.
Grüße aus Essen
Schau mal bei Google nach dem Stichwort Open Course Ware, denn wenn Du einigermaßen gut Englisch sprichst (setze ich einfach mal voraus, wenn Du Programmieren lernen und das alles dann auch verstehen willst) kannst Du Dir die Onlinekurse von den Unis MIT oder auch Stanford angucken.
Ich komme aus dem kaufmännischen Bereich und befasse mich nur privat viel mit PCs, möchte nun aber auch eine erste Programmiersprache lernen. Habe mich für Java entschieden und kann Dir für den Fall den Kurs von Stanford nur empfehlen. Nennt sich Programming Methodology JAVA und ist für Einsteiger ohne Vorkenntnisse gedacht.
Link: http://www.youtube.com/watch?v=KkMDCCdjyW8
Andernfalls kannst Du solche Open Course Ware Quellen, in diesem Fall ganze Vorlesungen, auch erstmal als Schnupperkurse angucken. Meistens wird bereits in der ersten Vorlesung erwähnt welcher Stoff genau vermittelt wird oder auch welche Aufbaukurse und Sprachen anschließend möglich sind.
Wie Du und andere bereits vorher schon erwähnten, sind sich viele Sprachen im Groben sehr ähnlich. Es sollte also nicht all zu schwer sein weitere Programmiersprachen zu lernen, wenn man eine halbwegs gut kann und beherrscht. Die Frage ist halt nur, ob Du persönlich besser mit Büchern allein oder doch zusätzlich noch mit Videos klar kommst.
Grüße aus Essen
Ich meine ein SDK acc für 100€ wäre das geringste problem...
Das hast du falsch verstanden.
Xcode (was man für die ObjC-Entwicklung braucht, weshalb man auch einen Mac braucht) ist kostenlos.
Die 100€ sind für den Fall, dass man
a) sein Programm auf einem iPhone testen will
b) sein Programm kostenpflichtig im App Store anbieten will
c) Beta-Versionen von iOS haben will
C und C++ sind so ziemlich die schlechtesten Sprachen um mit Programmieren anzufangen, weil man sich dann nach 2 Stunden sagt: Das war doch das falsche Thema für mich (den Effekt habe ich damals sehr gut bei meinem Uni-Kurs beobachten können).
An C kann man sich rangwagen, wenn man alle Programmierkonzepte verstanden hat (und selbst dann wird man sich da noch mehr als genug ärgern) und C++ ist nur C in hässlich .
C wurde 1970 erfunden und galt selbst da schon als technisch veraltet - dass wir uns heute immer noch damit rumplagen ist einfach nur peinlich. C und seine Hässlichkeit ist der Hauptgrund für alle Computerviren!
Als Anfängersprache würde ich immer PHP empfehlen, weil man da erstmal prozedural anfangen kann, später auf OOP wechseln kann und dann der Sprung auf Java eher trivial ist.
ObjC ist selbst eine relativ einfache Sprache, aber nur mit ObjC-Kentnissen kommt man nicht weit, weil man auch immer wieder C-Funktionen benutzen muss (siehe http://www.wilshipley.com/blog/2006/10/pimp-my-code-part-12-frozen-in.h ... ).
Ich finde C++ eigentlich nicht hässlich. Objektorientiert zu programmieren erleichtert das Leben teilweise schon erheblich, zumindest meiner Meinung nach. Mit C würde ich nicht einsteigen, wenn ich nochmal die Wahl hätte - ich habs nämlich gemacht (im Rahmen meines Studiums). C# ist wohl auch ein ganz netter Einstieg.
Mit Skriptsprachen programmieren lernen zu wollen ist meines Erachtens gewagt. Und warum prozedural anfangen? Ich wäre froh gewesen, wenn ich von Anfang an objektoriert programmieren gelernt hätte - aber wie gesagt, mit C ist das etwas schwer
Ich würde grundsätzlich sagen:
1.) Wenn die Anwendungen nicht ganz so performanceoptimiert sein sollen sind C# und Java eine gute Wahl (wobei Einsteiger diese Optimierung sowieso vermutlich nicht besser hinbekommen als es bei C# und Java automatisch der Fall ist),
2.) Wenn man bereit ist, mit Qt zu arbeiten und seine Anwendungen entweder nur unter der GPL veröffentlichen will oder eben eine Lizenz kaufen würde und zusätzlich MS-unabhängig sein will, dann C++
3.) Wenn man für Mikrocontroller und ähnliches programmieren will, dann C
4.) Und für Apple bleibt nur Objective-C (außer man versucht es wieder über Mono for iPhone und C#, was zum Beispiel mittels Delta Engine ganz funktionieren soll, wenn man den Demos glauben darf)
P.S.: Sobald man eine grafische Oberfläche haben will, die plattformunabhängig ist, fallen C und reines C++ raus. Dann bleibt da nur Qt...
Mit Skriptsprachen programmieren lernen zu wollen ist meines Erachtens gewagt. Und warum prozedural anfangen? Ich wäre froh gewesen, wenn ich von Anfang an objektoriert programmieren gelernt hätte - aber wie gesagt, mit C ist das etwas schwer
Ich würde grundsätzlich sagen:
1.) Wenn die Anwendungen nicht ganz so performanceoptimiert sein sollen sind C# und Java eine gute Wahl (wobei Einsteiger diese Optimierung sowieso vermutlich nicht besser hinbekommen als es bei C# und Java automatisch der Fall ist),
2.) Wenn man bereit ist, mit Qt zu arbeiten und seine Anwendungen entweder nur unter der GPL veröffentlichen will oder eben eine Lizenz kaufen würde und zusätzlich MS-unabhängig sein will, dann C++
3.) Wenn man für Mikrocontroller und ähnliches programmieren will, dann C
4.) Und für Apple bleibt nur Objective-C (außer man versucht es wieder über Mono for iPhone und C#, was zum Beispiel mittels Delta Engine ganz funktionieren soll, wenn man den Demos glauben darf)
P.S.: Sobald man eine grafische Oberfläche haben will, die plattformunabhängig ist, fallen C und reines C++ raus. Dann bleibt da nur Qt...
Und warum prozedural anfangen?
OOP ist zwar toll, aber um wirklich zu verstehen, warum man sowas macht muss man erstmal ein paar Jahre Datenstrukturen zwischen Funktionen hin- und herschieben
Zudem sind OOP-Konzepte noch mal schwerer als simpler prozeduraler Code, weshalb man erstmal den verstanden haben sollte (OOP baut ja auch darauf auf).
Warum es Singletons gibt wird z.B. kaum ein Anfänger verstehen, der nicht schon mit Datenbanken gearbeitet hat und sich die Frage gestellt hat: "Wie gebe ich jetzt die DB-Verbindung weiter?"
Hallo zusammen,
Wenn ich's heute nochmal machen müsste, dann würde ich mit funktionaler Programmierung anfangen, also z.B. Common Lisp oder Haskell lernen. Der große Unterschied im Lernen liegt darin, dass man prozedural Programmieren einfach so anfangen kann, ohne jedes Verständnis und Konzept läuft erstmal alles (ok, das ist etwas vereinfacht)
Bei funktionalen Sprachen muss man zunächst die Konzepte begreifen um überhaupt ein simples Programm zustande zu bekommen.
Ich bin kein Programmierer, wohl interessieren mich die Konzepte und ich würde in manche Programmiersprache gerne tiefer einsteigen wenn ich die Zeit dazu hätte.
Gruß
Markus
Zitat von @dog:
> Und warum prozedural anfangen?
OOP ist zwar toll, aber um wirklich zu verstehen, warum man sowas macht muss man erstmal ein paar Jahre > Datenstrukturen zwischen Funktionen hin- und herschieben
Ich habe selbst mit Basic angefangen, auf einem programmierbaren Taschenrechner, es ist lange her. Aber ich kann heute noch sehr gut in allen möglichen Sprachen tollen Basic-Code schreiben > Und warum prozedural anfangen?
OOP ist zwar toll, aber um wirklich zu verstehen, warum man sowas macht muss man erstmal ein paar Jahre > Datenstrukturen zwischen Funktionen hin- und herschieben
Wenn ich's heute nochmal machen müsste, dann würde ich mit funktionaler Programmierung anfangen, also z.B. Common Lisp oder Haskell lernen. Der große Unterschied im Lernen liegt darin, dass man prozedural Programmieren einfach so anfangen kann, ohne jedes Verständnis und Konzept läuft erstmal alles (ok, das ist etwas vereinfacht)
Bei funktionalen Sprachen muss man zunächst die Konzepte begreifen um überhaupt ein simples Programm zustande zu bekommen.
Zudem sind OOP-Konzepte noch mal schwerer als simpler prozeduraler Code, weshalb man erstmal den > verstanden haben sollte (OOP baut ja auch darauf auf).
OOP-Konzepte gibt's schon in Lisp, das ist mehr als 40 Jahre alt. Außerdem sollte man hier bedenken, dass heute fast alle Sprachen Objektorientierte Programmierung ermöglichen, bzw. dass man sie kaum nutzen kann ohne Objektorientiert zu programmieren. Klar, wenn ich selbst wiederverwertbaren Code schreiben will, muss ich tiefer einsteigen.Warum es Singletons gibt wird z.B. kaum ein Anfänger verstehen, der nicht schon mit Datenbanken > gearbeitet hat und sich die Frage gestellt hat: "Wie gebe ich jetzt die DB-Verbindung weiter?"
Naja, aber keiner bleibt lange Anfänger und irgendwann wird er es verstehen.Ich bin kein Programmierer, wohl interessieren mich die Konzepte und ich würde in manche Programmiersprache gerne tiefer einsteigen wenn ich die Zeit dazu hätte.
Gruß
Markus
Hallo und JUHU! Endlich mal wieder ein Thread, wo jeder seinen Senf dazugeben kann. Da will ich natürlich nicht zurückstehen:
Ich würde C++ keinesfalls zum Einstieg empfehlen. Ich finde C++ unnötig kompliziert. Das Herumgewurstel mit Zeigern und den verschiedenen Datentypen fügt gerade beim Einstieg unnötige Komplexitiät hinzu. Schwierig finde ich auch, dass der Sprachstandard selber keinerlei GUI bietet bzw. dass es kein wirklich von allen akzeptiertes Framework gibt. Jeder backt also etwas anderes. Damit läuft C++ zwar auf einem haufen Plattformen, ist aber alles andere als Plattformunabhängig. Das ist bei Java, C# und Konsorten anders: Hier hat ein Anbieter die Führung und definiert ein großes Framework mit einer Vielzahl an Klassenbibliotheken, die für alle Plattformen ziemlich verbindlich sind (auch wenn Subsets u.U. nicht überall verfügbar sind). Das führt auch dazu, dass Tutorials sehr viel universeller sind. Ist ja schön, wenn du eine Aufgabe lösen willst, und ein tolles C++-Tutorial dafür findest. Schade nur, wenn das auf MS MFC aufbaut, du aber Qt verwendest.
Die Idee mit TurboPascal anzufangen finde ich gar nicht so blöd. TP ist blood simple, man kann sich dabei nicht in syntaktischen Feinheiten und tollen, aber nicht unbedingt leicht zu durchschauenden Sprachfeatures verlieren, sondern lernt das, um dass es einem eigentlich geht: Programmieren. Aber okay: vielleicht ist TP wirklich etwas überholt, und man kommt damit auch nicht so sehr weit - vor allem, weil oben erwähntes umfangreiches Framework auch hier fehlt (gut, dann kann man mit Delphi weitermachen, da ist alles da was man braucht). Außerdem macht es glaube ich nicht wirklich Sinn, prozedural zu lernen, nur um dann auf Objektorientiert umzustellen. Also lieber gleich OOP anfangen - oder vielleicht tatsächlich funktional. Angeblich ist das die Zukunft, und funktionale Programmierung fällt angeblich viel, viel leichter, wenn man in seinen Denkansätzen nicht auf OOP festgefahren ist.
Ich selber finde C# eine tolle Sprache. Sie hat in den letzten Jahren durch Einführung neuer Sprachfeatures auch etwas an Übersichtlichkeit verloren, ist aber m.E. immer noch sehr konsequent und damit gut durchschaubar. Man kann damit Stand-Alone-Anwendungen implementieren, Websiten, Apps für WinPhone, Webservices, hat die Grundlagen für PowerShell-Skripte, einfachen Zugriff auf Windows-APIs (COM etc).
Java ist als Lernsprache sicher auch gut geeignet. Ich fand es schade, dass der Zugriff auf native Windows-Schnittstellen kompliziert ist. Und ich habe lieber eine Sprache, in der ich alles auf meinem favorisierten Betriebssystem einfach machen kann, als eine, mit der ich auf fast allen Plattformen ratz-fatz ein "Hello World" zum laufen bringe, beim Zugriff auf betriebssystemnahe Komponenten aber endlos grübeln muss.
Gruß
Filipp
Ich würde C++ keinesfalls zum Einstieg empfehlen. Ich finde C++ unnötig kompliziert. Das Herumgewurstel mit Zeigern und den verschiedenen Datentypen fügt gerade beim Einstieg unnötige Komplexitiät hinzu. Schwierig finde ich auch, dass der Sprachstandard selber keinerlei GUI bietet bzw. dass es kein wirklich von allen akzeptiertes Framework gibt. Jeder backt also etwas anderes. Damit läuft C++ zwar auf einem haufen Plattformen, ist aber alles andere als Plattformunabhängig. Das ist bei Java, C# und Konsorten anders: Hier hat ein Anbieter die Führung und definiert ein großes Framework mit einer Vielzahl an Klassenbibliotheken, die für alle Plattformen ziemlich verbindlich sind (auch wenn Subsets u.U. nicht überall verfügbar sind). Das führt auch dazu, dass Tutorials sehr viel universeller sind. Ist ja schön, wenn du eine Aufgabe lösen willst, und ein tolles C++-Tutorial dafür findest. Schade nur, wenn das auf MS MFC aufbaut, du aber Qt verwendest.
Die Idee mit TurboPascal anzufangen finde ich gar nicht so blöd. TP ist blood simple, man kann sich dabei nicht in syntaktischen Feinheiten und tollen, aber nicht unbedingt leicht zu durchschauenden Sprachfeatures verlieren, sondern lernt das, um dass es einem eigentlich geht: Programmieren. Aber okay: vielleicht ist TP wirklich etwas überholt, und man kommt damit auch nicht so sehr weit - vor allem, weil oben erwähntes umfangreiches Framework auch hier fehlt (gut, dann kann man mit Delphi weitermachen, da ist alles da was man braucht). Außerdem macht es glaube ich nicht wirklich Sinn, prozedural zu lernen, nur um dann auf Objektorientiert umzustellen. Also lieber gleich OOP anfangen - oder vielleicht tatsächlich funktional. Angeblich ist das die Zukunft, und funktionale Programmierung fällt angeblich viel, viel leichter, wenn man in seinen Denkansätzen nicht auf OOP festgefahren ist.
Ich selber finde C# eine tolle Sprache. Sie hat in den letzten Jahren durch Einführung neuer Sprachfeatures auch etwas an Übersichtlichkeit verloren, ist aber m.E. immer noch sehr konsequent und damit gut durchschaubar. Man kann damit Stand-Alone-Anwendungen implementieren, Websiten, Apps für WinPhone, Webservices, hat die Grundlagen für PowerShell-Skripte, einfachen Zugriff auf Windows-APIs (COM etc).
Java ist als Lernsprache sicher auch gut geeignet. Ich fand es schade, dass der Zugriff auf native Windows-Schnittstellen kompliziert ist. Und ich habe lieber eine Sprache, in der ich alles auf meinem favorisierten Betriebssystem einfach machen kann, als eine, mit der ich auf fast allen Plattformen ratz-fatz ein "Hello World" zum laufen bringe, beim Zugriff auf betriebssystemnahe Komponenten aber endlos grübeln muss.
Gruß
Filipp
oder vielleicht tatsächlich funktional. Angeblich ist das die Zukunft,
Sicher, funktionale Programmierung ist der feuchte Traum aller Mathematiker, die mit der Praxis nichts zu tun haben
Wahrscheinlich bin ich wirklich zu festgefahren, aber nach einem halben Jahr LISP konnte ich vollends nicht mehr verstehen, warum irgendjemand freiwillig funktional programmieren wollte(1) - da doch lieber C.
(1) Ja mir ist die Argumentation bekannt, dass es durch das Fehlen von Nebenwirkungen ja viel viel viel besser parallelisierbar ist, wenn wir bald 128-Tausend CPU-Kerne haben.
Hallo Niklas,
ich stehe vor einer ähnlichen Fragestellung wie du, habe aber mit einem Buch, das Objective-C behandelt, bisher gute Erfahrungen gemacht. Nennt sich Mac-Programmierung für Kids und man bekommt erstmal allgemeine Einblicke in ObjC, bevor es dann an Cocoa geht.
Aber ich habe noch eine Frage an alle: verbaut man sich mit ObjC oder mit C++ o. ä. seine Zukunft fürs Programmieren?
Viele Grüße
Henrik
ich stehe vor einer ähnlichen Fragestellung wie du, habe aber mit einem Buch, das Objective-C behandelt, bisher gute Erfahrungen gemacht. Nennt sich Mac-Programmierung für Kids und man bekommt erstmal allgemeine Einblicke in ObjC, bevor es dann an Cocoa geht.
Aber ich habe noch eine Frage an alle: verbaut man sich mit ObjC oder mit C++ o. ä. seine Zukunft fürs Programmieren?
Viele Grüße
Henrik
Aber ich habe noch eine Frage an alle: verbaut man sich mit ObjC oder mit C++ o. ä. seine Zukunft fürs Programmieren?
Nö, wie kommst du darauf?
Beides sind Sprachen, die derzeit sehr beliebt sind.
Das kann man im Trend-Index schön nachgucken: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
(Achtung, der Index sagt eher "Wie viel wird nach der Sprache gegoogelt?" als "Wie viele Firmen suchen jemanden mit Kenntnissen der Sprache?")
Hallo Henrik,
Gruß
Markus
Zitat von @henrik:
Aber ich habe noch eine Frage an alle: verbaut man sich mit ObjC oder mit C++ o. ä. seine Zukunft fürs > Programmieren?
nein, so kann man das nicht sagen. Wichtig ist, dass Du im Auge behälst, dass es noch andere Sprachen/Konzepte gibt und neugierig bleibst. Und als professioneller Programmierer musst Du sowieso mehrere Sprachen beherrrschen.Aber ich habe noch eine Frage an alle: verbaut man sich mit ObjC oder mit C++ o. ä. seine Zukunft fürs > Programmieren?
Gruß
Markus
Das hängt auch von der Verwendung ab - wenn Du ohne Zusätze wie Qt grafische Oberflächen bauen willst, dann ist vermutlich Java für den Anfang die bessere Wahl (ich denke, Qt ist anfangs auch etwas schwer zu verstehen).
Zu Java gibt es aus dem Galileo-Verlag ein ganz gutes Buch - auch als Openbook. Schau mal hier nach, da gibt es Bücher für C, C# und für Java: http://www.galileocomputing.de/katalog/openbook/?GPP=opfli4l2 ... Wenn es Dir gefällt, kannst Du Dir ja überlegen, ob Du es vielleicht kaufen möchtest. Das habe ich beim C#-Buch gemacht - ist halt für mich doch nochmal was anderes, wenn ich es gedruckt vor mir liegen habe (mit 2. Monitor wird das vielleicht besser )
Und jetzt viel Spaß beim Programmieren! :D
Zu Java gibt es aus dem Galileo-Verlag ein ganz gutes Buch - auch als Openbook. Schau mal hier nach, da gibt es Bücher für C, C# und für Java: http://www.galileocomputing.de/katalog/openbook/?GPP=opfli4l2 ... Wenn es Dir gefällt, kannst Du Dir ja überlegen, ob Du es vielleicht kaufen möchtest. Das habe ich beim C#-Buch gemacht - ist halt für mich doch nochmal was anderes, wenn ich es gedruckt vor mir liegen habe (mit 2. Monitor wird das vielleicht besser )
Und jetzt viel Spaß beim Programmieren! :D
Ehrlich gesagt glaube ich genau das nicht - Java ist doch ein gutes Stück abstrakter als C. Mit C# und ggf. C++.NET wirst Du dann weniger Probleme haben, aber bei C musst Du Dich um Sachen wie Speicherverwaltung selbst kümmern. Aber eine Sprache reicht sowieso nicht, wenn man einen ordentlichen Einblick bekommen möchte
Wenn Du ansonsten keine Fragen mehr hast, könntest noch den Beitrag als gelöst markieren...
Wenn Du ansonsten keine Fragen mehr hast, könntest noch den Beitrag als gelöst markieren...
Sorry, aber fang nicht mit C++.NET an. Wenn C++, dann machs "pur". Wenn Du C++ gar nicht kennst, dann sind in C++.NET einige Stolpersteine enthalten. Zumal Microsoft selbst die Sprache quasi nicht mehr unterstützt. Es gibt einige Projekte, die mittels C++.NET in die .NET-Welt überführt wurden (weil das auch auf CIL übersetzt und man dann mit C# weiter arbeiten kann) - aber für neue Projekte wird das definitiv nicht mehr verwendet.
Also, fang mit reinem C++ an, dann schau Dir vielleicht mal Qt an (für grafische Oberflächen) oder gleich C# oder Java oder ... Nur nicht C++.NET für den Anfang
Also, fang mit reinem C++ an, dann schau Dir vielleicht mal Qt an (für grafische Oberflächen) oder gleich C# oder Java oder ... Nur nicht C++.NET für den Anfang
Guten Abend Niklas,
ich würde Dir empfehlen für solche Sprachen Linux zu benutzen. Du kannst ja einfach OpenSuse in einer Virtuellen Maschine mit Virtualbox installieren (OpenSuse wird gerne von Programmierern verwendet), oder Slackware, da hast Du gleich alle Programmiersprachen einschließlich der Kernelheader standardmäßig installiert. Gui brauchst Du ja nicht.
Linux deswegen, weil der gcc-Compiler der auf jeder Distribution läuft als einer der Besten überhaupt gilt. Und wenn dann was nicht läuft, dann liegt's an Dir und nicht an der Entwicklungsumgebung.
Markus
ich würde Dir empfehlen für solche Sprachen Linux zu benutzen. Du kannst ja einfach OpenSuse in einer Virtuellen Maschine mit Virtualbox installieren (OpenSuse wird gerne von Programmierern verwendet), oder Slackware, da hast Du gleich alle Programmiersprachen einschließlich der Kernelheader standardmäßig installiert. Gui brauchst Du ja nicht.
Linux deswegen, weil der gcc-Compiler der auf jeder Distribution läuft als einer der Besten überhaupt gilt. Und wenn dann was nicht läuft, dann liegt's an Dir und nicht an der Entwicklungsumgebung.
Markus
Hallo dog,
wissenschaftlich ist es nicht, aber bei Linuxquestions.org kann man an den Postings sehen welche Distribution jemand benutzt und ich finde im "Programming" Forum viele Suse Benutzer. Warum es so ist, das weiß ich nicht andererseits bin ich kein Programmierprofi und weiß nicht worauf die achten. Ich möchte hier nicht vom Thema abschweifen, es ist ein heißes Eisen
Gruß und noch einen schönen Abend
Markus
wissenschaftlich ist es nicht, aber bei Linuxquestions.org kann man an den Postings sehen welche Distribution jemand benutzt und ich finde im "Programming" Forum viele Suse Benutzer. Warum es so ist, das weiß ich nicht andererseits bin ich kein Programmierprofi und weiß nicht worauf die achten. Ich möchte hier nicht vom Thema abschweifen, es ist ein heißes Eisen
Gruß und noch einen schönen Abend
Markus
Zitat von @dog:
Jeder der Linux-Nerd genug ist um damit auch zu programmieren hat erfahrungsgemäß eine ziemliche Aversion gegen SuSE.
Jeder der Linux-Nerd genug ist um damit auch zu programmieren hat erfahrungsgemäß eine ziemliche Aversion gegen SuSE.
Das unterschreib ich sofort!
Ehrlich gesagt finde ich nicht, dass der gcc in irgendeiner Weise für die ersten Versuche besser oder schlechter ist als der MS-Compiler. Klar, später, wenn es um bestimme Plattformen geht, kann man sich da Gedanken machen - aber anfangs sind die Unterschiede doch marginal.
[OT] @all
...nur zur Erinnerung...
Der Beitragsersteller hat hier sinngemäß auf das Höflichste angefragt
Ebenso ernsthaft und höflich wurde geantwortet
Ist ja auch alles richtig.
Aber der werte Fragende hat einen Haken an diesen Beitrag gemacht und läuft nun erstmal los - und das wäre eigentlich ein schöner Abschluss für diesen Thread.
Grüße
Biber
[/OT]
...nur zur Erinnerung...
Der Beitragsersteller hat hier sinngemäß auf das Höflichste angefragt
"Ich möchte auch mal gerne in einer von diesen Koch-Shows im Fennsehn mitmachen.
Sollte ich als erstes Fleisch braten üben oder Spätzle schaben oder Milchreis fritieren?"
Sollte ich als erstes Fleisch braten üben oder Spätzle schaben oder Milchreis fritieren?"
Ebenso ernsthaft und höflich wurde geantwortet
- "Ich mag am liebsten al dente"
- "Ohne den richtigen Pürierstab geht gar nix"
- "Es gibt auch Kochbücher mit Bildern."
- "Ist egal - wenn du erst bekannt bist, verdienst du eh die Kohle als Werbeträger für Dosensuppen"
Ist ja auch alles richtig.
Aber der werte Fragende hat einen Haken an diesen Beitrag gemacht und läuft nun erstmal los - und das wäre eigentlich ein schöner Abschluss für diesen Thread.
Grüße
Biber
[/OT]
Moin Niklas434,
Grüße
Biber
Zitat von @Niklas434:
Das hmmm irgendwie geht der ""da nicht ;D also vor P.s einfach "" hindenken Irgendwie macht das Forum
das nicht mit kp vllt liegts an PHP oder Chrome weiß der Geier
Keine Ahnung an was es liegt... vielleicht fehlt doch der richtige Pürierstab?Das hmmm irgendwie geht der ""da nicht ;D also vor P.s einfach "" hindenken Irgendwie macht das Forum
das nicht mit kp vllt liegts an PHP oder Chrome weiß der Geier
Grüße
Biber
Der Thread ist seit 6 Tagen als gelöst markiert. Hat das irgend einen tieferen Grund, dass du hier Selbstgespräche führst? Oder hast du keine Freunde, mit denen du dich unterhalten kannst?
Niklas, nichts für ungut, aber Deine Beispiele sind trivial. Sowas brauchst Du nicht zu posten, dazu gibt es genügend Tutorialseiten im Netz - und Kaputtnick hat auch Recht!
Übrigens würde ich nach solch kurzer Zeit noch nicht anfangen und Java gegen C++ abwägen. Auch Java hat Vorteile. Und insbesondere die Übersichtlichkeit des Quellcodes ist eine Sache für sich. Wenn Du nicht nur Formatierungen meinst (hoffentlich!), so schau Dich mal bei Mehrfachvererbung bei C++ um. Da ist dann nichts mehr übersichtlich!
Übrigens würde ich nach solch kurzer Zeit noch nicht anfangen und Java gegen C++ abwägen. Auch Java hat Vorteile. Und insbesondere die Übersichtlichkeit des Quellcodes ist eine Sache für sich. Wenn Du nicht nur Formatierungen meinst (hoffentlich!), so schau Dich mal bei Mehrfachvererbung bei C++ um. Da ist dann nichts mehr übersichtlich!