32bitfloat hat geschrieben:Xin hat geschrieben:
Berlin, da besteht derzeit hoher Bedarf an Dir, wenn ich das richtig mitbekomme. Gute Wahl

Hier ja, in meiner Heimat nicht so

aber der Umzug war's wert.
Von wo kommst Du?
32bitfloat hat geschrieben:Xin hat geschrieben:Dir sollte als Professional nur klar sein, dass C++ eine Nummer größer als C# ist.
Ja das weiß ich...aber trotzdem reizt mich die Sprache irgendwie mehr. Kann das nicht recht begründen...
Nicht trotzdem, sondern gerade deswegen sollte sie Dich reizen. ^^
32bitfloat hat geschrieben:Xin hat geschrieben:Welche Sprache hast Du bisher gelernt?
"Gelernt" im Sinne von "ich beherrsche komplett" noch gar keine. Bei C++ bin ich über einige Konsolenprogrämmchen und Spielereien mit QT4 noch nicht hinaus gekommen, bei PHP würde ich mir zumindest ein solides Grundwissen bescheinigen (schwer einzuschätzen) - diesbezüglich will ich mich zurzeit in Richtung MVC bewegen. Ich bin also ziemlich unerfahren in die Ausbildung reingegangen.
Wie kam es dann zu der Ausbildung?
Bißerl Qt ist doch schonmal ein wenig Handarbeit.
32bitfloat hat geschrieben:Xin hat geschrieben:
Wenn man versteht, warum C++ ist, wie es ist, folgt daraus, dass man PHP hasst.

Warten wir's ab

noch bin ich PHP sehr zugetan. Könntest du mir trotzdem erklären, was genau du damit meinst? Ich sehe die Sprachen schon deswegen nicht als gleichrangig (= vergleichbar), weil PHP eine Scriptsprache ist und ich beide für unterschiedliche Ziele einsetzen würde.
Programmiersprachen sollen Probleme lösen.
Wenn ich ein Problem in einem Tag berechnet habe und Du in 3 Jahren (und das ist recht optimistisch gerechnet), dann weiß ich nicht, warum ich das nicht vergleichen kann, nur weil PHP eine Skriptsprache ist und C nicht.
Du musst entweder warten oder 1000fach bessere Hardware ranschaffen.
PHP ist dynamisch typisiert. Variablen verändern sich nicht nur im Wert, sondern auch im Typ. Eine Funktion kann also nicht davon ausgehen, dass die übergebenen Daten valide sind, sondern noch nichtmals, dass die Daten überhaupt den richtigen Typ haben. Um das sicherzustellen verbraucht man weitere Rechenzeit. Das ganze muss ja zur Laufzeit geschehen.
In C, besser noch in C++ ist es möglich das alles über die semantische Analyse zu ziehen: es wird alles zur Kompilierzeit geklärt. Der Code ist entweder semantisch sauber oder er kompiliert nicht. Zur Laufzeit sind keine weiteren Prüfungen erforderlich. Zusätzlich, dass PHP interpretiert werden muss, muss es auch noch noch mehr Quelltext interpretieren. Somit kann es Dir sehr leicht passieren, dass Du nach 30 Jahren auch noch wartest.
Ohne semantische Prüfung kann es Dir dann noch passieren, dass Du nach 30 Jahren feststellst, dass das Programm fehlerhaft war und das Ergebnis aufgrund eines semantischen Fehlers nicht stimmt, den Dir C++ nicht kompiliert hätte.
Programmiersprachen sollen Probleme lösen.
Wer sagt, dass interpretierende Sprachen nicht mit kompilierende Sprachen vergleichbar sind, versucht Unterschiede aufzubauen, um den Vergleich zu verhindern. Die Frage ist immer, was die Sprache mir anbietet, um meine Probleme zu lösen. PHP wird im Web gerne verwendet, weil man nur "print" schreiben muss, um HTML auszugeben. PHP war aber ursprünglich keine Programmiersprache, sondern nur Präprozessor. Zur Programmiersprache ist PHP chaotisch gewachsen.
PHP ist hervorragend, um mal eben schnell eine Website mit MySQL zu verbinden.
Schreib Dir entsprechende Klassen in C++ und es geht noch besser. Diesen Aufwand muss man einmal machen oder sich mit jemanden zusammentun, der das schon getan hat. Ich schreibe meinen Kram gerne selbst.
Code: Alles auswählen
User user( "xin", "Sascha" );
Database db( "localhost", "user", "pw" );
db.Connect( "database" );
db.write( user );
legt einen User an, bzw. aktualisiert ihn, falls er zuvor aus der DB geladen wurde. Das bietet mir PHP auch nicht standardmäßig, oder? Ich muss der Klasse User eine Funktion mitgeben, die mir sagt, welche Member gespeichert werden sollen. Das funktioniert assoziativ (Foreign Keys) und aggregativ, wie auch mit Pointern, 1:1 und 1:n.
Die Tabelle erzeuge ich auch automatisiert:
Code: Alles auswählen
TableDescription userDescription;
user->GetTableDescription( userDescription );
db.CreateTable( userDescription );
db ist eine Datenbank. Ob das jetzt MySQL ist oder was anderes ist eigentlich egal - bisher habe nur MySql implementiert. Objekte lassen sich aber auch gleich als JSON und XML ausdrücken und auf die Platte schreiben.
Keine Ahnung, wie weit PHP da inzwischen ist, aber wozu brauche ich das, wenn ich es in einer kompilierenden, semantisch prüfenden Sprache habe?
32bitfloat hat geschrieben:Xin hat geschrieben:
Literatur? Das liest man von 22jährigen eher seltener. Was schreibst Du?
So selten ist das gar nicht...Fantasy beziehungsweise RPG-Kram. Waren bis jetzt aber nur Kleinigkeiten; ich würde gerne mal was Größeres (Roman) angehen, aber...siehe oben
Phantasie ist nicht mein Thema.
Für Romane habe ich auch einige Ideen, aber ich bevorzuge eher Thriller.
32bitfloat hat geschrieben:Xin hat geschrieben:solange Du PHP noch magst.

...wollen wir Wetten abschließen?

Könnte ich mich überzeugen, dass Du C++ wirklich lernen willst, bereit bist das durchzuziehen und würde ich Dir C++ beibringen, so dass ich sicher sein kann, dass Du es richtig verstehst, würde ich ein Monatsgehalt gegen ein Monatsgehalt setzen.
Wenn Du C++ wirklich kannst, habe ich keinen Zweifel daran, dass Du freiwillig kein PHP mehr anfasst, sondern dass Dich mit ausreichend Geld dafür bestechen muss.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.