Hallo,
Wollte mich eigentlich raushalten, aber:
Original von Bytestream
Mit PHP einzusteigen halte ich für eine schlechte Idee. Die Sprache hat 0 Konzept, jede Menge sicherheitsrelevante Fehler in der Sprache selbst
Entweder liebt man PHP oder man haßt es...
Aber das man mit PHP keine sicheren Anwendungen erstellen kann, ist vollkommen falsch.
Es gibt viele Stolpersteine in PHP und einige Sachen, die man mit PHP machen kann, sind wirklich riskant, z.B. per include Scripts von fremden Servern laden, aber es hängt eindeutig vom Programmierer ab, ob sein Code nun sicher oder unsicher ist.
Leider gibts sehr viele schlechte PHP Programmierer, da es für viele die erste und einzige Programmiersprache ist, nicht viel Zeit/Interesse haben sich mit Sicherheitsrelevanten Dingen zu beschäftigen.
Ich kenne einige Webdesigner, die schnell PHP lernen mussten, weil sie es für ihren Job brauchen (kaum eine Seite kommt heute noch ohne PHP, ASP o.ä. aus).
Dort zählte es nicht, gut/sauber/sicher zu Programmieren, sondern dass man schnell ein Gästebuch/Formmailer hinbekommt und die Zeit für solch eine Weiterbildung haben viele nicht.
Beachtet man aber bestimmte Grundprinzipien, z.B. keinen Usereingaben zu trauen, dann kann man mit PHP durchaus sichere Applicationen erstellen.
Wie bereits erwähnt, enthält C/C++ genauso unsichere Elemente wie PHP. Oder was glaubst du, woher die ganzen Buffer/Heap-Overflows, Memory-Lecks o.ä. herkommen?
Schaut man sich C Neulinge an, so haben die keine Probleme damit, per strcpy() ein Argument in ein festes Char-Array zu kopieren, denn wer übergibt schon einen längeren Pfad als 250 Zeichen?
Und es gibt sehr sehr viele schlechte C/C++ Programme, genauso wie es leider zuviele schlechte PHP Applikationen gibt.
Naja sonst sagen, du musst unbedingt mit der und der Sprache anfangen, ist schwachsinn.
Man muss im vorraus feststellen, welche Interessen man hat und welche Programmiersprache dafür (am besten) geeignet ist.
Jmd. der eigentlich gerne seine Homepage erweiteren möchte, wird mit C, Java und ähnlichem nicht Glücklich und jmd. ohne Ambitionen zum Erstellen einer Homepage hat nix von PHP, JS etc.
Wenn man eine Sprache erlernt, die man aber nur in einem Feld verwenden kann, das einen nicht intressiert, ist nicht viel Wert, da man dann nur evt. die paar Beispiele aus einem Buch erlernt und das wars.
Dennoch hier eine Liste mit Sprachen,die
ich empfehlen kann:
Webprogrammierung[1]: (HTML), PHP
Wenn du Designer bist, evt. kleine Web-Spiele machen willst: Flash+ActionScript
Windows-Programme: C#
Linux-Programme: Phyton oder Java
Plattformunabhänige Programme: Java
Hardware-Programmierung: C
Hardwarenahe/Betriebssystem/Kernel-Programmierung: C/C++
[1]Webprogrammierung: Gästebücher, Mitgliederbereiche o.ä.
@FreeCastle:
Und auch da nochmal zum Thema: Ich halte es für wenig sinnvoll nicht-typisierte Sprachen wie z.B. PHP usw. zu erlernen, da man sich so schnell einen schlechten Stil angewöhnt und es nachher bestimmt schwerer ist eine typisierte Sprache zu lernen.
Natürlich ist es leichter, von einer typesierten Sprache (z.B. Java) zu einer nicht-typisierten Sprache (z.B. PHP) zu wechseln als andersherum, denn der PHP Programmierer evt. sich ärgern, wenn der Vergleich von einem String mit einem Int nicht mehr klappt.
Aber wie gesagt, es bringt rein gar nichts, erst Java zu lernen, wenn das Ziel eigentlich Webprogrammierung ist, nur damit man einen schlechten Stile verhindert.
Alles eine Frage was einem Spaß macht und was man wirklich braucht.
Zur HTML Diskussion:
Ich finde, jeder der sich mehr oder weniger professionell im Internet bewegt, sollte Grundkentnisse in HTML besitzen.
Klar, für ein Webprogrammierer ohne HTML Kenntniss ist nicht vorstellbar, aber auch der Java/C++/C#-Anwendungsentwickler sollte zumindest die Grundzüge von HTML kennen.
Wenn man ganz neu ins Geschäft der Programmierung einsteigt und sich evt. C# als Startsprache ausgesucht hat, für den macht es wenig Sinn, zuerst einmal HTML zu büffeln.