nützliche Artikel

Welche Programmiersprache soll ich zuerst lernen?

Sehr geehrte Goldavelez.com,

Ich habe mich entschlossen, es zu versuchen, obwohl es so spannend ist, wie man das Programmieren lernt. Das Problem ist, ich bin nicht sicher, wo ich anfangen soll. Was ist die beste Programmiersprache für einen Anfänger wie mich?

Unterzeichnet,

Könnte Coder sein

Lieber Could-Be,

Dies ist wahrscheinlich eine der beliebtesten Fragen von Anfängern und wird auch von Pädagogen diskutiert. Die Sache ist, Sie können zehn Programmierer fragen, in welcher Sprache Sie am besten mit den Füßen nass werden, und Sie können zehn verschiedene Antworten erhalten - es gibt Tausende von Möglichkeiten. Mit welcher Sprache Sie anfangen, hängt jedoch nicht nur davon ab, wie anfängerfreundlich es ist, sondern auch davon, an welchen Projekten Sie arbeiten möchten, warum Sie sich überhaupt für das Codieren interessieren und vielleicht auch, ob Sie darüber nachdenken davon leben. Hier sind einige Überlegungen und Vorschläge, die Ihnen bei der Entscheidung helfen sollen.

Warum möchten Sie das Codieren lernen?

Je nachdem, was Sie machen oder tun möchten, ist Ihre Wahl möglicherweise bereits für Sie getroffen. Um beispielsweise eine Website oder eine Webanwendung zu erstellen, sollten Sie HTML und CSS sowie JavaScript und möglicherweise PHP für Interaktivität lernen. Wenn Sie sich hauptsächlich / nur auf das Erstellen einer mobilen App konzentrieren, können Sie direkt in Objective-C für iOS-Apps eintauchen oder lernen, wie Sie mit Java für Android (und anderen Dingen) programmieren.

Wenn Sie jedoch über ein bestimmtes Projekt oder Fachgebiet hinausgehen oder eine Reihe von Sprachen lernen möchten, sollten Sie zunächst die grundlegenden Konzepte des Programmierens erlernen und lernen, wie man "wie ein Programmierer denkt". Auf diese Weise können Sie unabhängig von Ihrer ersten Programmiersprache diese Fähigkeiten anwenden, um eine neue zu erlernen (möglicherweise in nur 21 Minuten). Sogar Codierungs-Apps für Kinder können von Anfang an nützlich sein. Zum Beispiel war der erste formale Programmierkurs, den ich belegte (nun ja, abgesehen von BASIC in der vierten Klasse), Harvards CS50, den Sie kostenlos belegen können. Professor Malan beginnt den Kurs mit Scratch, einer Drag-and-Drop-Programmierumgebung für Kinder, die Codierungsgrundlagen und -logik lehrt - und Ihnen dabei hilft, etwas Cooles zu erstellen -, und bringt Ihnen dann C bei.

Im Laufe der Jahre haben wir einige andere hervorragende Ressourcen für das Erlernen des Codierens bereitgestellt, z. B. den interaktiven Kurs Codecademy. Aber auch bei diesen müssen Sie noch die Sprache auswählen, mit der Sie beginnen möchten. Werfen wir einen Blick auf die Unterschiede zwischen den beliebtesten und den am meisten als Einstiegssprache empfohlenen.

Die am häufigsten empfohlenen Programmiersprachen für Anfänger

Die meisten gängigen Programmiersprachen wie C, Java, C #, Perl, Ruby und Python können dieselben oder fast dieselben Aufgaben ausführen wie die anderen. Java funktioniert beispielsweise plattformübergreifend und wird für Web-Apps und Applets verwendet. Ruby kann jedoch auch große Web-Apps ausführen und Python-Apps können auf Linux und Windows gleichermaßen ausgeführt werden. SOA World weist darauf hin, dass viele Sprachen nacheinander modelliert werden und die Syntax oder Struktur der Bearbeitung häufig nahezu identisch ist. Daher hilft das Erlernen einer Sprache häufig beim Erlernen der anderen. Um beispielsweise "Hello World" zu drucken, sind Java und C # syntaktisch ähnlich wie Perl und Python:

Sie unterscheiden sich jedoch darin, wie einfach sie einzurichten und einzusteigen sind. SOA World geht weiter:

Wenn Sie sich diese Beispiele genauer ansehen, werden Sie übrigens feststellen, dass einige einfach sind, andere komplex, und einige erfordern Semikolons am Zeilenende, während andere dies nicht tun. Wenn Sie gerade erst mit dem Programmieren beginnen, ist es manchmal am besten, Sprachen ohne viele syntaktische (oder logische) Regeln zu wählen, da dies der Sprache ermöglicht, "aus dem Weg zu gehen". Wenn Sie eine Sprache ausprobiert haben und wirklich Probleme damit haben, versuchen Sie es mit einer einfacheren!

Hier ein kurzer Vergleich der beliebtesten Programmiersprachen:

C: Bringt Sie dazu, effizienten Code zu schreiben

C ist eine der am weitesten verbreiteten Programmiersprachen. Dafür gibt es einige Gründe. Wie der bekannte Programmierer und Schriftsteller Joel Spolsky sagt, ist C für einen Arzt das Programmieren wie das Erlernen der grundlegenden Anatomie. C ist eine Sprache auf "Maschinenebene", sodass Sie lernen, wie ein Programm mit der Hardware interagiert und die Grundlagen der Programmierung auf der untersten Hardwareebene (C ist die Grundlage für Linux / GNU). Sie lernen Dinge wie das Debuggen von Programmen, die Speicherverwaltung und die Funktionsweise von Computern, die Sie mit höheren Programmiersprachen wie Java nicht erreichen. Gleichzeitig lernen Sie, effizient für andere Sprachen zu programmieren. C ist der "Urvater" vieler anderer übergeordneter Sprachen, einschließlich Java, C # und JavaScript.

Das heißt, die Codierung in C ist strenger und hat eine steilere Lernkurve als andere Sprachen. Wenn Sie nicht vorhaben, an Programmen zu arbeiten, die mit der Hardware verbunden sind (z. B. Gerätetreiber oder Betriebssystemerweiterungen), lernen Sie C verlängert Ihre Unterrichtszeit möglicherweise unnötig. Stack Overflow hat eine gute Diskussion über C und Java als Muttersprache, wobei die meisten Leute auf C hinweisen. Persönlich denke ich, obwohl ich froh bin, dass ich mit C in Berührung gekommen bin, nicht, dass es eine sehr anfängerfreundliche Sprache ist. Es wird Ihnen Disziplin beibringen, aber Sie müssen eine Menge lernen, bevor Sie etwas Nützliches machen können. Außerdem, weil es so streng ist, könnten Sie am Ende so frustriert sein:

Java: Eine der praktischsten Sprachen zum Lernen

Java ist die zweitbeliebteste Programmiersprache und wird in Stanfords bekanntem (und kostenlosem) Programmierkurs Einführung in CS unterrichtet. Java erzwingt solide objektorientierte Prinzipien (OOP), die in modernen Sprachen wie C ++, Perl, Python und PHP verwendet werden. Sobald Sie Java gelernt haben, können Sie ganz einfach andere OOP-Sprachen lernen.

Java hat den Vorteil einer langen Nutzungshistorie. Es gibt viele "Boilerplate" -Beispiele, die seit Jahrzehnten gelehrt werden und für viele Zwecke (einschließlich der Entwicklung von Android-Apps) weit verbreitet sind. Daher ist es eine sehr praktische Sprache zum Lernen. Sie erhalten nicht die Kontrolle auf Computerebene, wie Sie es mit C tun würden, können jedoch auf die wichtigsten Computerteile wie Dateisystem, Grafik und Sound zugreifen und diese bearbeiten, wenn ein recht ausgeklügeltes und modernes Programm ausgeführt werden kann auf jedem Betriebssystem.

Python: Spaß und einfach zu lernen

Viele Leute empfehlen Python als die beste Anfängersprache, da es einfach und dennoch sehr leistungsfähig ist. Der Code ist einfach zu lesen und erzwingt einen guten Programmierstil (wie das Einrücken), ohne dass die Syntax zu streng ist (z. B. das Hinzufügen eines Semikolons am Ende jeder Zeile). Patrick Jordan von Ariel Computing verglich die Zeit, die zum Schreiben eines einfachen Skripts in verschiedenen Sprachen (BASIC, C, J, Java und Python) benötigt wird, und stellte fest, dass Python die anderen Sprachen nicht ignorieren sollte:

Es erfordert weniger Zeit, weniger Codezeilen und weniger Konzepte, um ein bestimmtes Ziel zu erreichen. […] Endlich macht das Programmieren in Python Spaß! Spaß und häufiger Erfolg schaffen Vertrauen und Interesse für den Schüler, der dann besser in der Lage ist, weiterhin das Programmieren zu lernen.

Laut SOA ist Python ein absolutes Muss für Anfänger, die sich mit Linux anfreunden möchten (oder mit Linux bereits vertraut sind). Die Popularität von Python steigt auch heute schnell, dank der breiten Akzeptanz auf populären Websites wie Pinterest und Instagram.

JavaScript: Zum direkten Einstieg und Erstellen von Websites

JavaScript (das wenig mit Java zu tun hat) erfordert den geringsten Einrichtungsaufwand, um damit zu beginnen, da es bereits in Webbrowsern integriert ist. O'Reilly Media empfiehlt, mit JavaScript zu beginnen, da die Syntax relativ verzeihend ist (Sie können lose in JavaScript codieren), Sie unmittelbare Ergebnisse aus Ihrem Code sehen und Sie nicht viele Tools benötigen. In unserer eigenen Learn to Code-Nachtschule zeigen wir Ihnen anhand von JavaScript, wie Variablen und Funktionen funktionieren. Wenn Sie coole interaktive Dinge für das Web erstellen möchten, ist JavaScript ein Muss.

Deinen Weg wählen

Eine letzte Überlegung ist, ob Sie vom Programmieren als Hobby zum Karriere machen möchten oder nicht. Dev / Code / Hack unterteilt die verschiedenen Aufgabenbereiche und die Fähigkeiten, die Sie für sie erwerben sollten:

Back-End / Server-seitiger Programmierer: Verwendet normalerweise eine der folgenden Methoden: Python, Ruby, PHP, Java oder .Net. Hat Datenbankkenntnisse. Verfügt möglicherweise über Sysadmin-Kenntnisse.

Front-End / Client-seitiger Programmierer: HTML, CSS, JavaScript. Hat möglicherweise Designfähigkeiten.

Mobiler Programmierer: Objective-C oder Java (für Android). HTML / CSS für mobile Websites. Verfügt möglicherweise über serverseitiges Wissen.

3D-Programmierer / Spielprogrammierer: C / C ++, OpenGL, Animation. Hat möglicherweise gute künstlerische Fähigkeiten.

Hochleistungsprogrammierer: C / C ++, Java. Kann einen mathematischen oder quantitativen Hintergrund haben.

Am Ende gibt es jedoch keine Möglichkeit, das Programmieren zu erlernen. Das Wichtigste ist, die Grundlagen zu erlernen, indem Sie sozusagen "Kratzer machen", indem Sie an Problemen arbeiten, die Sie lösen möchten, oder an etwas, das Sie aufbauen möchten. Wie die Programmierung fürchterlich ist, sagt der Blog:

Die erste Programmiersprache, die Sie lernen, ist wahrscheinlich am schwierigsten zu lernen. Das Auswählen von Kleinigkeiten und Spaß macht dies weniger zu einer Herausforderung als zu einem Abenteuer. Es spielt keine Rolle, wo Sie anfangen, solange Sie weitermachen - schreiben Sie weiterhin Code, lesen Sie weiterhin Code. Vergiss auch nicht, es zu testen. Sobald Sie eine Sprache haben, mit der Sie zufrieden sind, ist es weniger schwierig, eine neue Sprache zu erlernen, und Sie werden unterwegs neue Fähigkeiten erlernen.

Sobald Sie sich entschieden haben, schlägt Bento die Ressourcen und Kurse vor, die Sie benötigen, nachdem Sie Ihre erste Sprache gelernt haben.

Liebe,

Goldavelez.com