# Mit welcher Sprache weitermachen ?



## Koyote (13. April 2011)

Hi, habe mal vor 1-2, also mit 11 / 12 angefangen in VB zu probieren. Dann habe ich mich C# beschäftigt. Da ich mich dann mit Hardware beschäftigt habe, habe ich damit aufgehört und weiß auch nicht mehr viel davon. Möchte wieder anfangen und alles noch einmal von Anfang an lernen.
Jetzt die Frage : Welche Sprache lohnt sich mehr ? Lohnen sie sich überhaupt oder soll ich eine neue anfangen ?


----------



## Lan_Party (13. April 2011)

Soweit ich weiß ist Java sehr gefragt. Aber ich persönlich beherrsche noch keine dieser sprachen.


----------



## Koyote (13. April 2011)

Welche braucht man eigentlcih für Android ? Kann man da Apps proggen und auf sein HTC Desire HD schieben ?


----------



## Bauer87 (13. April 2011)

Google benutzt Java (ohne für die Lizenz zu zahlen). Ansonsten könnte man Android auch mit C programmieren, allerdings komtm man damit afaik nicht in den Appstore und muss sein Device rooten, um die Progs dann benutzen zu können.


----------



## Leandros (13. April 2011)

Koyote schrieb:


> Welche braucht man eigentlcih für Android ? Kann man da Apps proggen und auf sein HTC Desire HD schieben ?



Java. Plain old Java.


----------



## Koyote (13. April 2011)

Und wenn ich Programme für den PC proggen will, welche Sprache eignet sich dann am betsen ?


----------



## deckard-cain (13. April 2011)

Aus meinen Erfahrungen macht es keinen Unterschied, ob VB.Net oder C#. Ich programmiere seit über 15 Jahren und seit ca. 5 Jahren .Net. Dabei fahre ich auch zweigleisig, VB.Net und C#. Das sind die beiden primären Programmiersprachen im .Net Framework. 

Such Dir einfach aus, was Dir am besten liegt, für Windows Programmierung sind die unschlagbar.

Hier noch ein hilfreicher Link bzgl. Unterschiede zwischen C# und VB.Net:

VB.NET and C# Comparison


----------



## Veriquitas (13. April 2011)

Das kommt aber auch darauf an was für Programme du für den Pc schreiben willst.


----------



## Koyote (13. April 2011)

Ich denke, ich nehme C#, war das nicht so, das C# schneller ist ?
EDIT: Werde 2008 verwenden, geht das noch oder soll ich bei nem neuanfang auf 2010 umsteigen ?


----------



## Hagrid (13. April 2011)

Bauer87 schrieb:


> ...und muss sein Device rooten, um die Progs dann benutzen zu können.


 

Es reicht doch, in den Einstellungen, ein Häkchen bei "Unbekannte Quellen zulassen" zu setzen... ?!


----------



## deckard-cain (13. April 2011)

Wenn Du sowieso neu anfängst, starte gleich mit 2010 und .Net 4.0. 

Von der Geschwindigkeit her gibt es keinen Unterschied zwischen VB.Net und C#. 
Beide verwenden das gleiche Framework.


----------



## deckard-cain (13. April 2011)

Das neue Framework macht vieles soviel einfacher.
Falls Du Dich mal mit Datenzugriffen beschäftigen musst, schau Dir mal LINQ an.


----------



## Koyote (13. April 2011)

Hm ok, also C# und 2010 !
Welches Buch könnt ihr mir da empfehlen ? Will diese richtigen Anwendungen (Name fällt nicht ein) proggen und nicht Konsolenanwendungen o.Ä.


----------



## KaitoKid (13. April 2011)

Kannst dir ja mal die hier angucken:
Der Visual C# Programmierer
Programmieren lernen mit C#
Visual C#: Grundlagen, Programmiertechniken....

Ich würde aber sagen C++ ist auch nicht schlecht....
Aber für Windows Programmierung geht beides...


----------



## Bauer87 (14. April 2011)

C# vs. C++: C# geht nur für Windows-Programmierung und ist in Sachen Performance unterlegen. C++ dagegen ist eine sehr breite Sprache. Das bedeutet, man kann sehr unterschiedlichen Code schreiben und es gibt zig Bibliotheken für ein und denselben Zweck. Das erschwert das Verständnis für fremden Code, man bekommt dafür aber sehr gute Performance, Plattformunabhängigkeit und quasi unbegrenzte Anwendungsmöglichkeiten. (Spiele werden z.B. meist in C++ geschrieben. Wobei Spiele auch schon ein Beispiel für die Wahlmöglichkeit sind: Mit Direct3D oder OpenGL kann man das gleiche machen, der Weg dahin ist nur unterschiedlich.)

Ne Alternative, wenn man bei ner reinen High-Level-Sprache bleiben will, wäre Java. Das läuft dann z.B. auch auf Smartphones (mit Android) oder als Browserapplet.


----------



## Supeq (14. April 2011)

C#/.net ist meine Empfehlung!


----------



## Koyote (14. April 2011)

Also ist c++ das beste ? Ist das sehr schwer ? Bin ja erst 13.


----------



## KingofKingzZ (14. April 2011)

Naja, was heißt das beste? 
Kommt drauf an was du machen willst. 
Guter C# Code kann (wird) auch schnell sein als schlechter C++ Code. 
Ich habe damals mit C++ angefangen und wenn ich mir anschaue was ich damals so gemacht habe (aus Aufwand & Performance Sicht) wird mit richtig schlecht 
Jedenfalls hast du mit C++ viel Kontrolle und (wenn man wie gesagt richtig programmiert) Geschwindigkeit. Allerdings musst du einiges auch selbst machen wie z.B. dynamischen Speicher selbst freigeben etc. Für mich war es damals bei manchen Dingen schwer durchzublicken und mit C++ wirst du sicherlich auch erst mal nur in der Konsole programmieren, aber meiner Meinung nach hat es sich gelohnt, dass ich C++ gewählt habe. Wenn du C++ kannst sollte es auch nicht wirklich schwer sein auf andere Sprachen umzusteigen.

lg KoK


----------



## Koyote (14. April 2011)

Gut, dann brauche ich mal eine Empfehlung für ein gutes Buch, für C++ 2010.
Sollte gut verständlcih sein, also auch für absolute Anfänger. Gutes Buch = Teuer ist mir schon klar, habe schon 5 Bücher über den ganzen Kram, daher weiß ich, das gute Bücher teuer sein dürfen.
Mal ne Frage, wir haben ja schon 2011, lohnt es sich mit 2010 an zu fangen oder sollte ich auf was neues warten ? Denke eher nicht oder ? Ist ein umstieg schwer, also wenn es dann 2012 gibt oder was weiß ich was ?


----------



## Bauer87 (14. April 2011)

Es gibt C++ von 2003, im Sommer wird eine neue Version rauskommen, der alte Standard wird aber weiter unterstützt. Als Anfänger kann dir die neue Version also recht egal sein. (Du darfst C++ nicht mit der Entwicklungsumgebung Visual C++ von Microsoft verwechseln.) als Buch würde ich was empfehlen, mit dem du nicht nur auf eine Entwicklungsumgebung gedrillt wirst. Ich hab damals „C++ für Schnelleinsteiger“ gelesen. Das ist aber wirklich sehr Grundlegend. Den Rest habe ich dann aus Dokumentationen und fremdem Code gelernt.


----------



## Koyote (14. April 2011)

Achso ok. Welchen editor sollte ich dann verwenden ?


----------



## KingofKingzZ (14. April 2011)

Du könntest dir, falls du in Richtung 2D Spiele o.ä. gehen willst mal "C++ für Spieleprogrammierer" anschauen. 
Der größte Teil des Buches bezieht sich auf die C++ Grundlagen und gibt dann teils Beispiele wie so etwas in einem Spiel verwendet werden könnte. 
Am Ende wird dann noch der Grundstein für ein kleines 2D Game gelegt. 
Eine IDE wie Visual Studio Express kannst du ruhig benutzen, allerdings wirst du wahrscheinlich von den Möglichkeiten erdrückt. Deshalb solltest du erst mal die Sprache lernen, dann wirst du Visual Studio auch zu schätzen wissen. Ich hab damals mit Dev C++ angefangen, allerdings wird das nicht mehr weiterentwickelt und es sind einige Bugs drin. 
Allerdings kann man das für die ersten Konsolenprogramme ruhig verwenden, meiner Meinung nach. Alternativ kannst du natürlich auch einfach nen einfachen Texteditor verwenden und anschließend manuell in der Konsole compilieren.

lg


----------



## Koyote (14. April 2011)

Danke. Also ich will klein Anfangen und die Grundlagen lernen. Dafür bräuchte ich ein Buch und einen ich nenne es mal Editor.


----------



## Veriquitas (15. April 2011)

Einführung in die Programmierung mit C++: Amazon.de: Bjarne Stroustrup, Petra Alm, Dirk Louis: Bücher

Ist ein sehr gutes Buch, wenn nicht sogar das beste. Ich hab damit auch angefangen, dir wird von Anfang an erklärt worauf du dich einlässt und das programmieren nicht gleich programmieren ist. Es gibt in dem Buch zahlreiche Übungen die dir gleich zeigen ob du das verstanden hast was du gelesen hast.


----------



## Skysnake (15. April 2011)

Koyote schrieb:


> Und wenn ich Programme für den PC proggen will, welche Sprache eignet sich dann am betsen ?


Die BESTE Programmiersprache gibt es nicht, genau wie es das Beste Kfz nicht gibt. Kommt halt immer drauf an was du machen willst/musst. Ist wir mim Ferrari und dem Umzugswagen. Der Ferrari ist sau schnell und sau gut zum über die Autobahn brettern, wenn du aber deinen Umzug machen willst, wirst du mit dem keinen Blumentopf gewinnen... Ich hoffe du verstehst was ich meine.



Koyote schrieb:


> Also ist c++ das beste ? Ist das sehr schwer ? Bin ja erst 13.


Schwer ist relativ. Bist du dümmer/begriffsstutziger weil du erst 13. bist? Ich hoffe nicht. Bzgl. Beste siehe oben.
C/C++ liefert dir aber halt dennoch einen guten Einstieg, genau wie Java, da es eben eine richtige Programmiersprache und keine Skriptsprache wie z.B. VB ist. Man lernt halt sehr viel mehr als man in anderen Sprachen brauch, bzw die Unterschiede sind eher gering. Dafür hat man aber halt am Anfang etwas mehr Aufwand, der sich aber später bezahlt macht. Von C/C++/Java auf XY umsteigen ist deutlich einfacher als andersrum.



Koyote schrieb:


> Achso ok. Welchen editor sollte ich dann verwenden ?


Am BESTEN! ja hier wirklich am Besten einen Simplen Texteditor. Damit denkst du mehr über deinen Code nach und viele Sachen schleifen sich einfach ein, wie am Ende eines Befehls etc etc. Macht das debuggen zwar etwas schwerer, aber es lohnt sich auf Dauer. Hab auch mit Visual Studio/DevC++ angefangen und dann später beim Umstieg auf Linux mit einem schnöden Editor arbeiten müssen. Da hab ich erst gemerkt, das ich mich oft zu sehr auf die IDE verlassen habe. War sehr lehrreich auch mal komplett ohne Hilfe aufm Cluster arbeiten zu müssen


----------



## Koyote (15. April 2011)

Ok, vielen Dank. Werde dann mit C++ und nem normalen Editor arbeiten. Erst einmal muss der PC (Tagebuch) fertig gemacht werden


----------



## Bauer87 (15. April 2011)

@Editor: Ich stehe ja auf Editoren im Stil von Vim/Emacs, für Windows dürfte Notepad++ interessant sein. Solche Tools kombinieren Komfort mit Kontrolle und Anforderung an den eigenen Kopf. Sprich: Syntax-Highlighting ist da, Autovervollständigung passiert nicht ganz von allein und kompilieren muss man außerhalb. (Vor allem das ist wichtig, wenn man es lernen will.)


----------



## KaitoKid (15. April 2011)

Wie kann man denn mit Notepad++ die Progs kompilieren?
Mit meinem Buch "C++ für Spieleprogrammierer" arbeite ich mit VSC++ 2008, wie sieht's ansonsten mit g++ aus?
Und soll ich mir dann ein Buch wie "Die C++ Programmiersprache" von Bjarne Stroustrup, oder "Der C++ Programmierer" von Ulrich Breyman holen, sozusagen als Standardbuch/Nachschlagewerk, und um alle anderen Aspekte von C++ kennenzulernen?


----------



## Bauer87 (16. April 2011)

Mit Notepad++ kann man (natürlich) nicht kompilieren. Genau darum geht es doch: Man schreibt den Quellcode und ruft dann (manuell) den Compiler auf. So lernt man dann, was der Compiler macht, und macht in der Folge weniger Fehler. Als Compiler kann man z.B. GCC (also g++) nehmen, oder den Intel-Compiler (der recht gut ist aber AMD-Prozessoren bewusst benachteiligt), oder halt den Compiler von MS. Wichtig ist nur, dass man sich bewusst macht, dass Compilieren eben nicht bedeutet, eben auf den Knopf „Run“ zu drücken, sondern dass da wirklich was mehr oder weniger komplexes passiert.

PS: Ich programmiere in Qt Creator, schreibe aber auch Programme ohne Qt. Dafür benutze ich dann ein Makefile, das den g++ aufruft. Der Vorteil daran ist, dass jeder das Programm kompilieren kann, auch wenn er andere Editoren bevorzugt: So ein Makefile läuft einfach in jeder Umgebung.


----------



## Veriquitas (17. April 2011)

@ Bauer 87 mich würde mal interessieren ob du das beruflich machst oder wie lange du schon programmierst. Du scheinst ziemlich viel Ahnung zu haben...


----------



## Bauer87 (17. April 2011)

@ Veriquitas: Ich programmiere (erst) seit vier Jahren und momentan vor allem in der Uni (studiere Physik), wo ich zur Zeit Vorlesungen zu Datenanalyse und Simulation von Vielteilchensystemen höre. Am der Uni lernt man auch Notgedrungen verschiedene Compiler kennen. Jeder Fachbereich hat andere Rechner mit anderen Betriebssystemen und teilweise natürlich auch anderen Compilern. (Fängt schon damit an, dass die Physik Linux nutzt, das Rechenzentrum aber auch für Nicht-Techniker ist und daher Windows einsetzt.)

Dann hab ich mal an einer (leider wegen Zeitmangel nie vollendeten) HL2-Total-Conversion mitgearbeitet und schreibe in meiner Freizeit 2D-Spiele. (Wobei die wirklich einfach gehalten sind und zum Teil noch unter Designentscheidungen aus meinen ersten Monaten leiden müssen. So hab ich mit dem Debugger umgehen gelernt ^^.)

Am meisten über Compiler gelernt hab ich wohl deshalb, weil ich bei einigen Open-Source-Projekten nicht auf fertige Builds warten wollte und mir den Quellcode aus den Repositories gezogen habe. Teilweise compiliert der wegen irgendwelchen Kleinigkeiten nicht und da lernt man dann, nen Compile-Output zu analysieren. Da braucht dann ein Funktionsaufruf in Zeile 252 die Parameter in anderer Reihenfolge, weil der Programmierer mit ner anderen Version der Bibliothek arbeitet und keine Precompiler-Anweisungen dafür verteilt hat.


----------



## Crymes (19. Mai 2011)

Ich werfe das mal so rein: Bei Dice wurden vor Kurzem Prigrammierer (Engine) gesucht mit C++ und C# Erfahrung.
Diese Sprachen werden also auch für große Projekte genutzt.


----------



## Maxanier (20. Mai 2011)

Hi

Ja, C++ ist wird häufig verwendet, da es sehr umfangreich ist, ist aber meiner Meinung nach auch für Anfänger geeignet, ich hatte keine Probleme Grundkenntnise in c++ zu erlernen,
Zur Zeit programmiere ich aber in C# da man mit XNA relativ einfach vernünftige Spiele erstellen kann.


----------

