Wie verstehe ich einen Anfänger, welche Sprache für den gewünschten Beruf zu wählen?

Haftungsausschluss: Dieser Text wird nicht zum Lesen für Kinder unter 13 Jahren (sie müssen eine separate Datenschutzrichtlinie festlegen), Senioren, Mittelstufe, Menschen mit schwacher Mentalität, Liebhaber der VBA- und ALGOL-Sprache sowie schwangere Frauen empfohlen. All dies ist die persönliche Meinung des unzureichenden Autors und wird hier nicht mit dem Ziel dargelegt, Zwietracht unter Anhängern statischer und dynamischer Typisierung zu säen. Los geht's: neuer Thread (). Start ()



Ehrlich gesagt, dieser Artikel ist schon lange gereift, weil ich in letzter Zeit auf Diskussionen, Holivars und ähnliche Artikel gestoßen bin, in denen Autoren und Teilnehmer verschiedene Hypothesen nach bestem Verständnis als Antwort auf die Titelfrage aufgestellt haben. Und ihre ganze Bedeutung läuft auf dieselbe verwirrende Argumentation hinaus wie der oben geschriebene kunstvolle Satz.

Ich habe einen langen Weg vom Sperma zu einem Programmierer zurückgelegt, von einem Teenager, der Pascal und Windows 3.11 liebt, zu einem Mann, der nichts außer Brötchen und Terminal mag. Jetzt erkläre ich Ihnen alles und zeige vielleicht sogar einige Bilder. Gehen.

Welche Programmiersprache soll man wählen?


Die Dummheit all dieser Fragen ist, dass man in einem Vakuum kein bedingter sphärischer Programmierer werden kann. Ein Programmierer ist heute kein diskreter Mathematiker der Vergangenheit, für den Software und Hardware zweitrangig sind. In den meisten Fällen ist der Programmierer heute ein Handwerker, der im Rahmen des aktuellen „Fensters“ der Technologie arbeitet. Darüber hinaus ist dies das „Fenster“ eines fahrenden Autos, für das Sie fahren. Die Technologie ändert sich ständig und wir sind wie Alice Carroll gezwungen zu fliehen, um an Ort und Stelle zu bleiben. Wenn Sie zumindest mein Lieblings-Google verwenden, haben Sie keine Zeit, eine Android-API zu verstehen, und bereits die Hälfte der veralteten Funktionen
zieht die Schrauben fest ... Ähm, ja, ja, ein Artikel wie für Anfänger. Lassen Sie es uns herausfinden. Zunächst müssen Sie noch festlegen, was genau Sie tun möchten. Bereich, na ja, zumindest ungefähr?

Verstehst du überhaupt nichts?


Beginnen Sie mit dem Lernen algorithmischer Konstrukte. Verzweigungen, Schleifen, Datenstrukturen, Blockdiagramme. Es hilft sehr, Algorithmen und Blockdiagramme in eine echte Programmiersprache zu übertragen (übertragen, nicht kopieren und aus Wikipedia einfügen!).

Mit welcher Sprache beginnen Sie, wenn Sie den Grundstein legen möchten?


Grundsätzlich ist jede. Da Sie nur lernen müssen, wie man einfache Programme schreibt, verstehen, was Variablen und Operatoren sind, klassische Algorithmen wie maximale Suche, Sortierung, binäre Suche usw. untersuchen, gehen Sie als Nächstes zu OOP und Datenstrukturen über, da Sie beim Interview gefragt werden: Wie unterscheidet sich der Vektor von der Liste!

Aber was ist, wenn Sie eine Sprache für angewandte Aufgaben benötigen ?
Ja, und Sie möchten kein Programmierer werden. Vielleicht sind Sie ein Wissenschaftler, der Textdateien mit DNA-Ketten analysieren muss, oder ein Investor mit der Idee, einen Handelsroboter zu schreiben. Hier würde ich Python raten, mögen Anhänger anderer Sprachen mir vergeben. Python ist eine Sprache mit schwindelerregenden Fähigkeiten und einer niedrigen Einstiegsschwelle. Auf den ersten Blick scheint es Anfängern, dass dies eine einfache, „lehrreiche“ Sprache ist (bis Sie anfangen, sie in Coroutinen und Funktionen zu stecken).

Nun, sagst du, aber wohin soll es als nächstes gehen ? Keine einzige Python ...? Natürlich nicht. Wo zieht es dich hin? Das Netz? Desktop? Skripte? System Level Mobiltelefon? Sie, Liebes, entscheiden, es gibt keine universellen Lösungen!

Wie Site Building? Schreiben wir hier als Papagei: HTML, Javascript und andere wie sie (immer noch Python mit Django und einige andere lauerten leise dort) Möchten Sie

harte Webdienste? PHP, node.js, Ruby, Java und das gleiche Python.

Möchten Sie näher an Hardware und Betriebssystemen sein? Greifen Sie nach C / C ++ (schießen Sie sich einfach kein Bein und schneiden Sie sich nicht, obwohl alle in einer Besetzung dorthin gegangen sind). Übrigens würde ich allen Programmierern raten, sich zumindest mit den Grundlagen von C / C ++ und den Basisklassen von STL zu befassen. Es hilft, den GC dann mit anderen Augen zu betrachten. Wenn ein Stück Eisen auf Ihren Kopf fällt, lernen Sie Assembler.

Möchten Sie Skripte erstellen, analysieren, abbauen, mit Big Data arbeiten, Modelle erstellen, Bots schreiben, das Betriebssystem verwalten und vieles mehr?Nehmen Sie bereits gesprochenes Python3 +. Wenn mehr mit Daten arbeiten - können Sie immer noch R nehmen.

Träumen Sie davon, eine Desktop-Anwendung zu schreiben? Hier auf alles! Obwohl Delphi es nimmt! Ein Witz natürlich. Hier müssen Sie sich ansehen, für welches System Sie schreiben möchten und ob plattformübergreifend erforderlich ist. Beispielsweise ist Python- oder Java-Code portabel. C / C ++ muss für jede Plattform separat erstellt werden.

Möchten Sie Java Core kennenlernen? Sie wissen also bereits, warum Sie Java benötigen. Weiß nicht? Wie würden Sie jetzt erklären, warum Sie es brauchen? Hast du die Luft gesehen? Trotzdem kann man nicht ohne leben. :)

Es gibt natürlich ausgefallene Sachen, zum Beispiel Kotlin. Coole Sache, diese Sprache hat meinen alten Freund mit dem Spitznamen NPE getötet, als er getötet hat - er hat sich verletzt! Ich habe einfach nicht verstanden, wie man es normal für Leute lernt, die Java nicht kennen? Nein, "Hallo Welt" ist einfach und ohne Java darauf geschrieben, aber ich weiß es nicht weiter.

Vielleicht hast du beschlossen, Spiele zu schreiben? Es gibt viele fertige Designer, die gleiche Unity3D, sowie zweidimensionale Engines, normalerweise unmittelbar unter einer Reihe von Plattformen. Sie sehen dort bereits selbst: C #, Java usw. Und all dies wird von oben durch die Kenntnis verschiedener Datenübertragungsprotokolle, Betriebssysteme, Frameworks, Verschlüsselung und Kryptographie, Autorisierung und Authentifizierung, XML, JSON, Datenbanktechnologien, Anwendungsschutz, poliert. Versionskontrollsysteme und vieles mehr.

Jetzt werde ich das größte Geheimnis eröffnen, wie man Programmierer wird: Programm! Etwas! Schreiben Sie Programme, auch wenn niemand sie braucht. Schreiben Sie, weil Sie es brauchen, nicht jemand anderes. Ruhen Sie sich ständig gegen Inkompetenz aus, füllen Sie diese Lücken und ruhen Sie sich erneut gegen neue aus. Und solange in allen möglichen Caches Ihres Kopfes genügend Speicher vorhanden ist.

Wie sonst können Sie die Frage beantworten: „Welche Sprache lernen?“. Offensichtlich der, mit dem Sie sprechen werden.

Mit freundlichen Grüßen Edward Koch,
Dozent an der HackerU International School für IT und Cybersicherheit

All Articles