Heim > Schlagzeilen > Wie werden Sie als qualifizierter Programmierer „ausgebildet'?

Wie werden Sie als qualifizierter Programmierer „ausgebildet'?

小云云
Freigeben: 2017-11-07 15:14:52
Original
2059 Leute haben es durchsucht

HTML / Javascript / CSS, das ist es, was das Front-End lernen muss, plus viele Front-End-Frameworks wie Angular, React, Vue, Sie müssen dasselbe lernen.


Erst nachdem Sie das Framework erlernt haben, können Sie ein Projekt starten und einen Job finden, und dann können Sie die glorreiche Reise des Hinzufügens, Löschens und Überprüfens beginnen.

Aber das reicht bei weitem nicht aus. Die oben genannten Erkenntnisse können nur als Einführung angesehen werden.

Sie müssen Datenstrukturen und Algorithmen lernen, sonst wird der Code, den Sie schreiben, nie so gut sein wie der von Big Fatty Zhang nebenan. Für die gleichen Bedürfnisse ist der Code anderer Leute für das Auge angenehm, aber für Sie Wer unordentlich ist, wird vom Anführer vollständig kritisiert.

Also „Algorithmen“, „Dahua-Datenstrukturen“, „Grafische Datenstrukturen“, „Einführung in Algorithmen“ ... kommen alle, Arrays, Stapel, Warteschlangen, Binärbäume, Diagramme, Sortieren, Die Suche ist wird Sie garantiert nicht überfordern.

Wenn ich normalerweise mit allen chatte, muss ich in der Lage sein, mehrere gängige Designmuster zu benennen, insbesondere verschiedene Arten, Singleton-Muster zu schreiben. Andernfalls ist es mir peinlich, andere zu begrüßen, wenn ich ausgehe.

Es ist definitiv nicht möglich, ein Junior-Programmierer zu sein, dem Aufgaben zugewiesen werden, daher muss die objektorientierte Analyse und Gestaltung erlernt werden. Andernfalls wird Ihnen der Leiter in Zukunft wichtige Aufgaben anvertrauen und Sie darum bitten Wie werden Module und Dienste aufgeteilt, wie werden Schnittstellen gestaltet? Basierend auf welchen Grundsätzen und Richtlinien?

Der Softwareentwicklungsprozess und die Best Practices werden für Programmierer schnell zu einer Notwendigkeit. Agile Entwicklung, DevOps, Unit-Tests, kontinuierliche Vererbung, TDD, Paarprogrammierung ... Sie müssen Schritt halten.

Als Programmierer sind Grundkenntnisse über Computer ebenfalls ein Muss.

Sie müssen die Prinzipien der Computerkomposition und der von Neumann-Struktur verstehen, sonst schreiben Sie den ganzen Tag Programme, ohne zu wissen, wie der Computer funktioniert, und Sie werden ausgelacht. Digitale Schaltungen und Zusammenbau sind ebenfalls wichtig. Sie müssen sich ein wenig auskennen, denn in irgendeiner dunklen Ecke wartet immer eine Zusammenstellung auf Sie.

Sie müssen Datenbanken, grundlegendes SQL und Tabellendesign erlernen. Paradigmen, Sperren und Isolationsstufen sind entmutigend.

Dazu gehört auch eine gründliche Optimierung. Auf der Architekturebene müssen Sie auch Sharding, Table Sharding, Backup und Lese-Schreib-Trennung verstehen.

Relationale Datenbanken allein reichen im Internetzeitalter nicht aus, und es ist sehr wahrscheinlich, dass sie in der Arbeit eingesetzt werden. Der Cache kann nicht entkommen werden, Memcached und Redis sind für die Arbeit bereits erforderlich.

Heutzutage sind Programme, die nicht mit dem Internet verbunden sind, fast ausgestorben, daher müssen Sie Computernetzwerke erlernen und zumindest verstehen, wie http, https, socket und tcp funktionieren. Außerdem müssen Sie RSA kennen , Hash und von https abgeleitete Zertifikate. Was ist los?

Sicherheit ist eigentlich ein großes Thema, Dinge wie XSS, CSRF, SQL-Injection... sollten bei der Webprogrammierung berücksichtigt werden.

Das Betriebssystem muss ebenfalls erlernt werden, damit wir Prozesse/Threads verstehen können, sowie die Kommunikation und Synchronisation zwischen ihnen, sowie synchron/asynchron, blockierend/nicht blockierend, select/epoll und andere modisch klingende Wörter. Virtueller Speicher und Dateisysteme müssen grob verstanden werden. Darüber hinaus müssen Sie in der Lage sein, einige grundlegende Linux-Befehle einzugeben. Es wäre besser, wenn Sie vi verwenden könnten.

Verstehen Sie die Java Virtual Machine genau. Wenn Sie nicht verstehen, wie die virtuelle Maschine funktioniert, gibt es einige Probleme im System, die Sie wirklich nicht verstehen können.

Es gibt auch Tomcat, Ngnix ... Es ist nicht möglich, sie in kurzer Zeit gründlich zu studieren.

Vielleicht hören Sie auch Leute sagen: Diskrete Mathematik ist sehr wichtig und die Grundlage der Informatik! Dann schauen Sie sich neben Booleschen Operationen auch andere Äquivalenzrelationen, Teilordnungen, Aussagenkalkül, Prädikatenrechnung, Gruppen, Verbände an ... es wird die Leute völlig verwirren.

Bevor Sie sich diese Grundkenntnisse aneignen, machen Cloud Computing, Big Data, Microservices und Container wieder von sich reden. Wollen Sie nicht mehr darüber wissen? Haben Sie keine Angst, ins Hintertreffen zu geraten?

Programmierer sind einfach großartig und werden ständig durch verschiedene neue Technologien vorangetrieben. Aber wenn Sie sich andererseits für Softwareprogrammierung interessieren, würden Sie sich so freuen, dass ständig neue Spielzeuge auftauchen und Sie spielen können Ich kann es nicht einmal spielen. Wenn Sie in dieser anspruchsvollen Branche wettbewerbsfähig bleiben wollen, müssen Sie daher weiter lernen.


Verwandte Etiketten:
Quelle:php.cn
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