Welche Programmiersprache lernen (was ist die mächtigste)?
Hallo,
ich habe gerade null Erfahrung mit Programmieren und bin 15 Jahre alt (ich wollte in meinem Alter die Programmiersprache lernen, also am besten eine für Anfänger und leicht zu verstehen) aber es soll eine mächtige Sprache sein, also eine mit der man auch Seiten wie Youtube und Facebook programmieren kann und am besten sollte man mit der Sprache auch Apps auf dem Smartphone programmieren können aber auch Programme und Seiten auf Computer. Welche Programmiersprache empfehlt ihr mir??
15 Antworten
Am mächtigsten ist C. C hat sich als Standard etabliert und jede Maschine und andere Programmiersprache liefert eine C-Schnittstelle.
Ohne professionelle Werkzeuge wie DE von TaSSAu, die Speicherzugriffsfehler exakt anzeigen ist es jedoch für Anfänger kaum möglich C-Programme zum Laufen zu bekommen. Eclipse für Java ist kostenlos und desshalb wird Anfängern häufig Java empfohlen, wobei Java aufgrund seines Umfangs und Überladenheit langfristig nicht die Produktivität von C zu bieten hat. Sun hatte sich überigens mit Java übernommen und ist insolvent gegangen! (Professionelle Werkzeuge kann es einfach nicht kostenlos geben)
Webseiten besitzen grafische Oberflächen, die mit Designprogrammen erstellt werden und Hintergrundprogramme, die selbstverständlich auch in C erstellt werden können. Bei Webseiten ist es ziemlich egal. Die Oberflächen von Webseiten können inzwischen identisch zu PC-Anwendungen programmiert werden, sind sogar schneller als Herkömmliche Webseiten, aber mit dem schwerwiegenden Nachteil, dass Suchmaschinen die Seite nicht durchsuchen können.
Die beste Sprache die man in dem Zusammenhang lernen kann ist wohl Javascript. Sehr modern und zunehmend relevant auch für die Zukunft. Da kommt man schon weit mit. Ansonsten C++ -was aber am Anfang nicht so leicht ist.
Welche Sprache Du lernen solltest/möchtest hängt im wesentlichen davon ab, was Du programmieren möchtest.
Mit Java gestaltet sich systemnahe Programmierung schwierig, dafür ist es dank VM platformunabhängig und dabei noch relativ performant.
Skriptingsprachen wie Javascript, PHP usw. sind in der Regel sehr einfach, meist weniger performant und besitzen einfache Ausdrucksformen. Aber systemnahe Programmierung ist auch damit nicht wirklich machbar.
C bzw. C++ sind gute Allrounder, man kann mit ihnen Systemprogrammierung machen, die Mächtigkeit ist hoch, aber komplexe Ausdrucksformen fehlen und manche Dinge sind sehr zeitaufwändig in der Umsetzung.
Letztlich wird es darauf ankommen, was Deine Ziele sind, aber wenn es wirklich ums Web geht, wirst Du um Javascript wohl nicht herumkommen.
Was ist das mächtigste Werkzeug? Der Hammer? Wenn man einen Nagel in die Wand hauen will vielleicht, zum Schneiden von Glas würde ich ihn aber nicht nutzen, ebenso wenig um eine Zahnwurzelbehandlung durchzuführen.
Man nimmt die Sprache, die für die Aufgabe angebracht ist. Das werden im Fall von Webseiten meist Auszeichnungssprachen und Skriptsprachen sein wie HTML, CSS, PHP und JavaScript, wobei es hier auch andere Möglichkeiten gibt, bei Desktop Programmen eher Sachen wie C# oder Java. Mobile je nach Plattform Java oder Objective C oder gar HTML5 Apps.
Womit du anfängst würde ich fast davon abhängig machen wo du ansprechendes Lernmaterial findest. Menschen sind verschieden, der eine kommt gut mit einem Buch klar, der nächste mit Videotutorials von Youtube oder interaktiven Lösungen wie CodeAcademy, FreeCodeCamp oder SoloLearn.
Im groben findest du aber wahrscheinlich am meisten Informationen zu Java im Desktopbereich und PHP/JavaScript im Webbereich, wobei gerade JavaScript aufgrund der vielen Standards, Libraries und Frameworks sehr verwirrend sein kann, dafür ist es aber ohne zusätzliche Tools innerhalb jedes Browsers nutzbar.
Der Hammer? Wenn man einen Nagel in die Wand hauen will vielleicht, zum Schneiden von Glas würde ich ihn aber nicht nutzen, ...
Echte Männer schneiden Glas zur Not auch mit einem Hammer! Nur werden die Schnitte dabei vielleicht etwas zu zahlreich und nicht ganz so genau. ;)
Dann ist nach deiner Definition keine Sprache eine Sprache. Denn entweder kann sie einige Sachen nicht oder ist schlicht wesentlich zu aufwendig für den Anwendungsfall.
Ist PHP eine Sprache? Über 80% der Websites bauen darauf auf. Trotzdem schreibst du damit keine Betriebssysteme oder Treiber.
Mit Assembler kannst du sicher Treiber schreiben, ein AAA Game würde ich damit aber nicht programmieren wollen, sofern ich mit einer Mannschaft um 1.000 Mann unter 100 Jahre fertig werden will.
Sprachen haben alle ihre Vor- und Nachteile, unabhängig was davon technisch irgendwie machbar ist. Wie gesagt Hammer und Glasscheibe geht auch. Lässt sich sicher so stabilisieren, dass du nur ein kleines Loch schlagen kannst und damit halbwegs genau Glas "schneiden" kannst.
Ist dann in etwa wie GTA 5 mit Assembler zu programmieren. Die eine Sprache gibt dem Entwickler mehr Verantwortung und Möglichkeiten, die andere übernimmt Sachen für ihn, verbietet ihn dafür hier und da direkte Zugriffe. Die eine Sprache ist OOP, die andere funktional aufgebaut, die nächste rein prozedural.
Du kannst auch etwas nehmen wie Oracle PL/SQL und über UTL_HTTP ein CMS ala Wordpress realisieren. Das wäre aber genauso wahnsinnig wie die Wurzelbehandlung mit dem Hammer, klappt trotzdem, würde ich trotzdem nicht machen oder zumindest nicht an mir machen lassen :D
Keine Sprache davon ist dann eine Sprache, denn das jeweils andere kann sie nicht. Auch bringen die Sprachen je nach Gebiet völlig andere Standardbibliotheken mit und damit schon fertige Funktionalitäten.
Dann sollte es sich nicht Sprache, sondern vielleicht Dialekt oder Jargon nennen. Das Wort Sprache ist auf jedenfall fehl am Platz, wenn noch nicht einmal der Anspruch auf Vollständigkeit besteht!
Ich würde dir Pascal empfehlen, da sie sehr einfach zu verstehen ist und viele Ähnlichkeiten zu anderen Programmiersprachen hat.
Der Vergleich hinkt, wenn eine Sprache nicht für alles zu gebrauchen ist, dann ist es keine Sprache!