Heim > Web-Frontend > js-Tutorial > Möchten Sie Softwareentwickler werden? Die Schwierigkeit des Lernens von oben nach unten.

Möchten Sie Softwareentwickler werden? Die Schwierigkeit des Lernens von oben nach unten.

PHPz
Freigeben: 2024-08-06 07:41:07
Original
689 Leute haben es durchsucht

Want to be a software engineer? The difficulty of top down learning.

Seit meiner Jugend war ich immer ein äußerst neugieriger Mensch, dem es Spaß machte, Probleme zu verstehen und zu lösen. Ich wurde zum ersten Mal in der High School mit dem Programmieren in Berührung gebracht und war aus offensichtlichen Gründen schnell davon besessen.

In der High School waren die ersten Sprachen und Tools, die ich verwendet habe, Dinge wie Turing, Processing, GreenFoot und BlueJ. Bei allen handelte es sich um Lernwerkzeuge und mit Ausnahme von Turing um Java-Abstraktionen mit Schwerpunkt auf grafischer Programmierung. Mit diesen Tools konnte ich sehr schnell einige ziemlich coole Dinge erledigen. Diese frühen Erfahrungen haben wirklich mein Interesse geweckt.

Von dort aus möchte ich an meiner örtlichen Hochschule Webentwicklung studieren. Hier habe ich angefangen, Dinge wie HTML, CSS, JavaScript zu lernen. Später widmete ich mich Dingen wie PHP, Ruby, ASP.NET, Angular und vielen anderen verwandten Fähigkeiten außerhalb der reinen Entwicklung. Es war ein wunderbarer Kurs, der mir alle Fähigkeiten vermittelt hat, die ich brauchte, um ein äußerst effektiver Webentwickler zu sein.

Am Ende meiner College-Karriere hatte ich ein ziemlich gutes Verständnis der Webentwicklung als Ganzes. Ich wusste sicherlich nicht alles, aber ich war an dem Punkt angelangt, an dem mir nichts mehr ein Rätsel war. Von hier aus weckte meine natürliche Neugier in mir den Wunsch, tiefer einzutauchen. Sie führten mich in den Kaninchenbau von Betriebssystemen, Entwicklung auf Systemebene und eingebetteten Systemen. Wie Sie sich vorstellen können, bestand der erste Schritt darin, sich an C zu lehnen.

C zu lernen war weitaus schwieriger, als ich erwartet hatte. Das Konzept des Stapel- und Heapspeichers sowie der Zeiger war äußerst verwirrend. Vor allem aus höheren Sprachen mit Garbage Collectors. Mir wurde schnell klar, dass C nicht einfach nur schwieriger war, sondern dass die Sprache in Wirklichkeit recht einfach war, sondern dass ich ständig all die schlechten Gewohnheiten und falschen Annahmen verlernen musste, die ich in den letzten Jahren beim Erlernen höherer Sprachen gemacht hatte!

Das nenne ich jetzt den Fluch des Top-Down-Lernens!

Ich war äußerst frustriert darüber, dass ich beim Erlernen von Sprachen, die nicht auf Systemniveau liegen, all diese falschen Annahmen getroffen hatte. Außerdem dauerte das Erlernen von C dreimal so lange, wie es wahrscheinlich hätte sein sollen.

Mir fehlte die Wertschätzung für die Abstraktionen, die ich verwendete!

Verstehen Sie mich nicht falsch, es gibt viele Leute, die ihre gesamte Karriere damit verbringen können, sich nur auf die Entwicklung auf Anwendungsebene zu konzentrieren oder grundlegende Python-Skripte zu erstellen. Wenn Sie jedoch wirklich ein Software-Ingenieur sein und das Fachgebiet als Ganzes verstehen möchten, von eingebetteten Systemen bis hin zu Betriebssystemen und den für diese Betriebssysteme entwickelten Anwendungen, ist es von großem Vorteil, von unten nach oben zu blicken.

Mein Vorschlag für jeden, der wirklich Softwareentwickler werden möchte, ist, mit C zu beginnen. Verstehen Sie den Unterschied zwischen dem Stapel und dem Heap sowie den Zeigern. Probieren Sie etwas Assembler aus, auch wenn es dabei nur um die Analyse der Assembly geht, die Ihre kleineren C-Anwendungen erzeugen. Wenn Sie diese Dinge grundlegend verstehen, wird alles andere viel einfacher!

Ich wünschte, ich hätte so angefangen. Lehnen Sie sich von meinen Fehlern ab!

Das obige ist der detaillierte Inhalt vonMöchten Sie Softwareentwickler werden? Die Schwierigkeit des Lernens von oben nach unten.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage