niklas434
Goto Top

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 ? face-sadVon 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 .
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

HaMster33
HaMster33 21.08.2011 um 08:39:18 Uhr
Goto Top
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
64748
64748 21.08.2011 um 09:55:32 Uhr
Goto Top
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
wiesi200
wiesi200 21.08.2011 um 12:02:35 Uhr
Goto Top
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.
Niklas434
Niklas434 21.08.2011 um 13:51:35 Uhr
Goto Top
Naja aller Anfang ist Schwer also klar das ich da noch nicht an komplexe Anwendungen denke. Natürlich wird ein Großteil für Windows gedacht sein. Denn noch möchte ich nicht Komplet umsteigen wenn ich z.b Unix/Linux Programieren möchte. Und ja Objektive C ist erstmal nicht das womit ich anfangen möchte, klar nur ich will generell Anwendungen haben die auch auf einen Mac laufen können. Denke da auch ehr an C++ aber wie sieht das mit Java aus ich meine mit Bluej gibt es ein gutes Open Source lernprogram.


Nur Objektive C das ist mir schon wichtig bin seit langen Iphone Nutzer, möchte keine Apps für die Öffentlichkeit schreiben aber welche die mir das Leben erleichtern.
Niklas434
Niklas434 21.08.2011 um 13:58:29 Uhr
Goto Top
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...
wiesi200
wiesi200 21.08.2011 um 14:09:33 Uhr
Goto Top
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...

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.
64748
64748 21.08.2011 um 14:16:44 Uhr
Goto Top
Hallo,

Zitat von @Niklas434:
Ich meine ein SDK acc für 100€ wäre das geringste problem...
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
Niklas434
Niklas434 21.08.2011 um 14:35:16 Uhr
Goto Top
Okay C++ ist denke ich mal die richtige Wahl face-smile @64748 Ich werde mir Ubuntu auf mein Rechner Klatschen face-smile und mal nebenbei mit Objektive C rumwursteln face-smile danke für den Tipp hast mir schon das 2te mal geholfen face-smile C++ ist schwer aber wo ein wille da ein Weg, Gibt es für C++ gute Lernprograme, ähnlich Bluej für Java ?


Und wegen der Objektive C geschichte ich hab halt gehört das da C oder Java vorkenntinisse von vorteil sind.


Aber ich denke ich werde C++ wobei Java auch noch son bisschen in der Auswahl steht ich meine beide sprachen sind mächtig....
Niklas434
Niklas434 21.08.2011 um 14:41:13 Uhr
Goto Top

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.



Visual Studio Express gibt es auch für C++ face-smile zum glück
KennyNet
KennyNet 21.08.2011 um 15:32:32 Uhr
Goto Top
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
dog
dog 21.08.2011 um 15:57:12 Uhr
Goto Top
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 face-wink.
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 ... ).
kingkong
kingkong 21.08.2011 um 16:14:29 Uhr
Goto Top
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 face-wink

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...
dog
dog 21.08.2011 um 16:21:23 Uhr
Goto Top
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 face-wink
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?"
64748
64748 21.08.2011 um 16:42:22 Uhr
Goto Top
Hallo zusammen,
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 face-wink
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 face-wink
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
Niklas434
Niklas434 21.08.2011 um 16:42:41 Uhr
Goto Top
Klar will ich unabhängig von MS sein ich denke mal da sind C++ und Java gleichermaßen gute alternativen, übrigens mit scriptsprachen anzufangen das möchte ich nicht ;)

Dann kann ich ja gleich mit TurboPascal anfangen :D nein mal im ernst Basic klar gut um ins Programieren reinzukommen keine frage face-smile aber das .net stört mich, die Linux alternativen zu .net sind nicht die besten und ja... in Visual Basic kann eigentlich jeder der ein hauch englisch kann und zusammenhänge erkennen kann, den Programcode verstehen ein wenig Basic kann ich auch so ist das nicht, nur wer in Zukunft Platformunabhängig sein will so wie ich und mehr als Ping Pong spiele und so Programieren will für den ist Basic nix


Java oder C++ soviel steht fest. Nur welche von den beiden das ist jetzt die Frage face-sad
filippg
filippg 21.08.2011 um 17:50:31 Uhr
Goto Top
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
dog
dog 21.08.2011 um 18:15:15 Uhr
Goto Top
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 face-wink
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.
henrik
henrik 21.08.2011 um 18:24:43 Uhr
Goto Top
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
Niklas434
Niklas434 21.08.2011 um 18:28:17 Uhr
Goto Top
Klar wenn man die möglichkeiten von Windows voll ausschöpfen will ist C# gut aber mit Platformunabhängig hat das wenig zu tun face-sad ich meine aller anfang ist schwer , also nach den ganzen anfangs gedöns denke wir mein erstes Projekt ein einfacher BMI rechner sein, Problem nur C# und Mac andererseits verlockt doch schon der einfache zugriff auf die windows apis (hat man mit tw auch schon guten zugriff drauf).........habe mich ja in letzter Zeit auch intensiv mit dem Server 2008 beschäftigt wäre also klar von Vorteil.


Und auch einen PC läuft Mac (stichwort hackintos) aber kann alle Beruigen die 10.3 CD wurde legal für 30€ im Apple store erworben.

Ich denke aber auch wie Markus schon sagte sollte man Linux nicht verachten denn um Linux kommt man heut zu tage nicht mehr rum.
Ich hab mal auf Youtube (Semper Video) was von einen "Basic" für Linux geschaut aber ich fand das alles nicht gut.

Naja Java oder C++ das ist die Frage mit Java lassen sich viele aufgaben sehr gut meistern während meines Praktikums während meiner Realschulzeit bei einem Lokal Carrier habe ich auch zum Beispiel ein DHCP server gesehen der mit Java Programmiert wurde, und der Quellcode war alles andere nur nicht lang. Gut der Mann der das Geschrieben hat war bzw ist Akademiker aber trotzdem, zu Java geht eine Tendenz und C++ natürlich auch.
dog
dog 21.08.2011 um 18:29:02 Uhr
Goto Top
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?")
64748
64748 21.08.2011 um 18:30:49 Uhr
Goto Top
Hallo Henrik,
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.

Gruß

Markus
Niklas434
Niklas434 21.08.2011 um 18:32:46 Uhr
Goto Top
Also Henrik mit Java oder C++ eben nicht, so weit hab ich mich ja auch schon Informiert, nur C++ soll ne Hausnummer sein, ( siehe @dog). Nur mit Basic verbaust du dir einigens da du das leichte Programieren gewohnt bist, deswegen fang ich gar nicht erst damit an. OOP ist das Stichwort.
Niklas434
Niklas434 21.08.2011 um 18:34:31 Uhr
Goto Top
Was ist denn F# für eine Sprache ? face-smile
dog
dog 21.08.2011 um 18:36:10 Uhr
Goto Top
F# ist eine funktionale Sprache, die wie C# auf CLR läuft.
Niklas434
Niklas434 21.08.2011 um 19:41:07 Uhr
Goto Top
Welche Vor-/ Nachteile hat denn Java zu C++ und umgekehrt ? Denn ich habe mal nachgedacht total viele Schulen in meiner Umgebung fangen mit Java an, die Frage ist was ist jetzt sinnvoller?


Der Umstieg von java auf C++/# soll so wie ich gehört hab auch nicht alls zu schwer sein.

Ich möchte ja auch was Lernen womit ich arbeiten kann und nicht son Basic schnurz :D
kingkong
kingkong 21.08.2011 um 20:12:40 Uhr
Goto Top
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 face-wink)

Und jetzt viel Spaß beim Programmieren! :D
Niklas434
Niklas434 21.08.2011 um 22:12:26 Uhr
Goto Top
Danke ich hab mich jetzt auch erst mal für Java entschieden face-smile denke man wird dann einige zusammenhänge in C besser verstehen face-smile
kingkong
kingkong 22.08.2011 um 11:18:02 Uhr
Goto Top
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 face-wink

Wenn Du ansonsten keine Fragen mehr hast, könntest noch den Beitrag als gelöst markieren...
Niklas434
Niklas434 22.08.2011 um 15:20:12 Uhr
Goto Top
Muss euch auch mitteilen das ich mit C++ anfange da ich das jetzt passente Lektüre gefunden habe. C++.net ist denk ich erstmal das beste

Wie heißt es so schön "Es ist noch kein Meister vom Himmel gefallen"

Naja aber das Buch Java ist auch nur eine Insel kann ich Nur jeden empfehlen der C++ oder eine andere OOP kann face-smile ist schon ein klasse buch nur für einen absouluten Anfänger wie mich nicht geeignet denke ich werds mir aber irgendwann mal kaufen.
kingkong
kingkong 22.08.2011 um 15:45:01 Uhr
Goto Top
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
Niklas434
Niklas434 22.08.2011 um 16:17:39 Uhr
Goto Top
Fang ich auch http://www.amazon.de/Einf%C3%BChrung-professionelle-Programmierung-Ulri ... mit dem hier (habs jetzt als ebook vom Kollegen).

Wo weg der es hat ich weiß es nicht :D ich kanns mir aber denken sagen wa mal so.....zumindest schaut das buch recht gut aus ich habs die nacht mal grob überflogen und es setzt keinerlei vorkenntnisse voraus was ja bei "Java ist auch nur eine Insel " der fall ist
Niklas434
Niklas434 22.08.2011 um 20:14:28 Uhr
Goto Top
Zum Coden hab ich mich jetzt für Dev C++ entschieden die C++ Expressverion von MS die haut heut bei ersten Versuchen nur Müll raus (Hallo Welt Programm) :D
64748
64748 22.08.2011 um 20:49:50 Uhr
Goto Top
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
dog
dog 22.08.2011 um 21:03:05 Uhr
Goto Top
OpenSuse wird gerne von Programmierern verwendet

Also für das Statement hätte ich gerne mal einen wissenschaftlichen Beleg. face-wink

Jeder der Linux-Nerd genug ist um damit auch zu programmieren hat erfahrungsgemäß eine ziemliche Aversion gegen SuSE.
64748
64748 22.08.2011 um 21:17:12 Uhr
Goto Top
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 face-wink 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 face-wink

Gruß und noch einen schönen Abend

Markus
kingkong
kingkong 22.08.2011 um 21:28:25 Uhr
Goto Top
Zitat von @dog:

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.
Biber
Biber 22.08.2011 um 21:46:22 Uhr
Goto Top
[OT] @all

...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?"


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]
kingkong
kingkong 23.08.2011 um 13:29:18 Uhr
Goto Top
Charmant formuliert face-wink Hast ja Recht, sind ja auch "nur" 4 Posts gewesen (bzw. jetzt der 5. und letzte), die noch kamen nach dem Haken. Und jetzt hat es sich...
Niklas434
Niklas434 26.08.2011 um 19:37:06 Uhr
Goto Top
Naja Linux ist ja sowieso ne wissenschaft für sich ;) ich denke mal für den anfang sollte es devCC auch tun ;) "Komentar" das find ich schon mal klasse an C++ face-smile
Naja solls ja in Java auch geben nur da ich generell was gegen Groß und Kleinschreibung hab bin ich mir einig das es erstmal C++ sein soll face-smile


Naja das mit diesen Simplen Hallo Welt program in der Konsole (cout) hat gut geklappt face-smile

naja in diesem Sinne

int main()
{
cout << "Danke Leute ! face-smile" << endl
<< "Naja erstmal Windows da Linux eine Wissenschaft für sich ist !" << endl;
P.s ich komme mit C++ noch gut klar
system("PAUSE");
return 0;
}

[Edit Biber] So sähe der Code als Code formatiert aus.
int main()
{
    cout << "Danke Leute ! :)" << endl  
    << "Naja erstmal Windows da Linux eine Wissenschaft für sich ist !" << endl;  // P.s ich komme mit C++ noch gut klar   
    system("PAUSE");  
    return 0;
}

[/Edit Biber]
Niklas434
Niklas434 26.08.2011 um 19:38:28 Uhr
Goto Top
Das hmmm irgendwie geht der ""da nicht ;D also vor P.s einfach "" hindenken face-smile Irgendwie macht das Forum das nicht mit kp vllt liegts an PHP oder Chrome weiß der Geier face-smile
Biber
Biber 26.08.2011 um 21:49:25 Uhr
Goto Top
Moin Niklas434,

Zitat von @Niklas434:
Das hmmm irgendwie geht der ""da nicht ;D also vor P.s einfach "" hindenken face-smile Irgendwie macht das Forum
das nicht mit kp vllt liegts an PHP oder Chrome weiß der Geier face-smile
Keine Ahnung an was es liegt... vielleicht fehlt doch der richtige Pürierstab?

Grüße
Biber
Niklas434
Niklas434 27.08.2011 um 12:31:40 Uhr
Goto Top
Wie zum geier macht man das in diesem forum mit der codebox?
kingkong
kingkong 27.08.2011 um 12:39:07 Uhr
Goto Top
Einfach in der Formatierungshilfe nachschauen - da steht für Quellcode drin: < code> DeinCode </ code>
Die Leerzeichen bei den Code-Tags natürlich entfernen!
Niklas434
Niklas434 28.08.2011 um 18:19:25 Uhr
Goto Top
Naja aber was ich zum Schluss noch sagen möchte, wenn einige kidis via google auf diesen Beitrag Stoßen...

Bevor man mit dem Programieren generell anfängt, was mir bis jetzt geholfen hat ist eine naja sagen wir mal eine gewissermaßen apstrakte denkweise.
Also ums kurz zu fassen was mir jetzt einiges erleichtert ist die Tatsache das ich schon mit Excel und Acces gearbeitet habe.
Naja über Datenbanken muss man jetzt nicht unbedingt bescheid wissen aber Exel kenntnisse bzw. das man die denkweise für solche aufgaben bekommt sind schon von Vorteil.
Ich meine damit in erster linie die wenn funktion bzw wenn(oder, und) denn diese denkweise ist sowohl bei java als auch in c++ bei den if Anweisungen erforderlich....


P.s Es muss nicht das Original von MS sein Libre(Open)Office tut es auch !


z.b
 
 /*

If Anweisung
von Niklas Rogge 
*/

#include <cstdlib>n
#include <iostream>
#include <conio.h>


using namespace std;

int main(int argc, char *argv)
{
    string a1;
    cout << "Kennen Sie sich mir Excel aus? (j/n)" << endl;  
    cin >> a1;
    
    if (a1 == "j")   
    { 
    cout << "Glückwunsch das Programieren wird dir leichter fallen :)" << endl;  
                             }

    if (a1 == "n")  
    
    { 
    cout << "Fangen Sie doch am besten erst einmal mit Excel an !" << endl;  
                             }
                             
    cout << endl << "Diese Antwort hat dir hoffentlich weitergeholfen :) " << endl;  
    
    system ("PAUSE");  
    return 0;



P.s Danke jetzt klappt das mit den Code auch hervorragend
Niklas434
Niklas434 28.08.2011 um 18:59:43 Uhr
Goto Top
   public class Verel01
                       {
                         public static void main(String args)
                         {
                           int v1;
                           v1 = Integer.valueOf(args).intValue();
                           
                           if(v1<0)
                             System.out.println("Die Zahl ist negativ.");  
                           else
                             System.out.println("Die Zahl ist positev.");  
                             System.exit(0);
                         }
                       }	


so sieht das dann ungefähr in Java aus ! (Mit google gefunden,aber man merkt schon C++ und Java sind relativ identisch)

was in c++ cout ist in Java System.out.printIn


baaaaa gut diese Groß und Kleinschreibung in Java ein Grund mehr um erst mit C++ anzufangen.


Naja und um anderen die Entscheidung leichter zu machen beide Sprachen sind mächtig.


aber für C++ spricht aber eindeutig das:

1. Der Quellcode übersichtlicher ist
2. Die Grammatik (Groß/Kleinschreibung)
3. Das man lediglich einen Kompeiler braucht.
5. Wer C++ kann, kann später leichter mit Java erlernen.


6. Aber beide Sprachen sind aktuell und Platformunabhängig also fangt nicht mit Pascal, Turbo Pascal
oder Visual Basic an! Es seiden ihr wollt bei kleinen Windows Anwendungen bleiben.
Aber besser ist es gleich mit Objekt Orientierten Programierung anzufangen !


Ich Persönlich fange zwar mit C++ an werde Java aber auch beachten! Man kann das was ich mache nicht als Parallel Lernen bezeichnen. Aber sich mal mit den Java Quellcode und eclipse auseinandersetzen kann ja nicht schaden aber C++ hat vorrang !

Aber wie gesagt erstmal Tabellen bearbeiten face-smile damit kann man auch einiges machen ! Ich kann nur sagen mir Persönlich hat das bis jetzt geholfen und wenn ihr euch dann damit auskennt dann C++ oder Java! Nix anderes außer VBA (Visual Basic for Application) wenn ihr ins Büro wollt.
99045
99045 28.08.2011 um 19:14:25 Uhr
Goto Top
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?
kingkong
kingkong 28.08.2011 um 21:03:58 Uhr
Goto Top
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!
Biber
Biber 28.08.2011 um 21:17:21 Uhr
Goto Top
...seid mir nicht böse, aber ich das wird mir jetzt zuviel zu philosophisch hier.

Ich schliesse mal diesen Thread, bevor wir zu der Erkenntnis kommen "Eigentlich sind doch sowieso alles Objekte,,,"

back-to-top### Closed ###