Transkripte
1. Introudaction: Bist du im
endlosen Tutorial-Zyklus festgefahren? Nach dem Tutorial versuchen wir
zu lernen, wie man programmiert, machen
aber keine
wirklichen Fortschritte. Ich für meinen Teil war dort. Ich habe vor über zehn Jahren angefangen
, Programmieren zu lernen. Ich habe jahrelang
Online-Kurse ausprobiert und
YouTube-Videos angesehen , die keine wirklichen Fortschritte
gemacht haben. Wenn du programmieren
lernen möchtest, solltest
du wissen, dass es nicht so sein
muss. In diesem Video werde ich erzählen
, wie ich Programmieren
lernen würde , wenn ich alles noch einmal
machen könnte. Also Schritt eins, wir müssen uns
Ziele und Erwartungen setzen. Warum versuchst du Programmieren
zu lernen? Möchten Sie eine Website
für Ihr Familienunternehmen erstellen? Möchtest du eine App entwickeln? Du hast schon immer
darüber nachgedacht, wo du einen Job als
Softwareingenieur bekommen möchtest ? Sie sich keine Sorgen, wenn sich diese
Ziele im Laufe der Zeit ändern. Aber ich denke, es ist
wichtig, zunächst zu entscheiden
, was Sie eigentlich wollen. außerdem,
vernünftige Erwartungen an sich selbst
zu stellen . Sie werden
nicht vom Schreiben
Ihrer ersten Codezeile
zu einem
Job im Bereich Softwareentwicklung übergehen Ihrer ersten Codezeile und nur einen Monat, wird einfach nicht so passieren. Möglicherweise können Sie
eine Website oder eine
App erstellen und dieses Mal. Aber wie bei jeder
anderen Fähigkeit wird
das Beherrschen von
Softwareentwicklung viel Aufwand erfordern. Die meisten Entwickler haben entweder ein Bootcamp
besucht, das ein etwa
dreimonatiges Vollzeitstudium erforderlich ist, oder sie haben einen Universitätsabschluss in
Informatik , für den es natürlich
Jahre dauert konkurrieren , bis sie
realistisch mit
diesen Leuten auf dem Arbeitsmarkt Sie werden wahrscheinlich
eine ähnliche Menge an
Erfahrung und Lernzeit
benötigen .
2. Codierung: Schritt, um zu verstehen
, was Codierung wirklich ist. Ich weiß, das klingt
klischeehaft, aber hör mir zu. Die meiste Zeit, die ich
beim Lernen vergeudet habe, habe ich damit verbracht, die Codierungssyntax zu
verstehen. Ich würde nach Dingen
wie Javascript und Tutorial suchen
und dann versuchen, dem zu
folgen und JavaScript zu lernen. Das klingt einfach genug und bis zu einem
gewissen Grad habe ich etwas JavaScript
gelernt. Aber was könnte ich
mit diesem JavaScript machen? Absolut nichts. Ich wusste nicht einmal, welches
JavaScript es waren vier. Und das ist einfach ein so
übersehener, aber wichtiger Punkt. Beschichten ist nur ein
Mittel zum Zweck. Es ist ein Tool, das von Entwicklern verwendet wird um Software zu entwickeln,
als Analogie Wenn Sie
ein Haus bauen möchten, wollen Sie es. Schauen Sie sich Tutorials an und erfahren
Sie, wie Sie Werkzeuge wie Presslufthämmer verwenden. Sie müssten
zuerst
die Grundlagen der
Gestaltung eines Hauses verstehen . Und im Laufe der Zeit müssen
Sie irgendwann
lernen, wie man diese Tools benutzt. Die Analogie ist nicht perfekt, aber hoffentlich bringt sie
die Idee rüber. Codieren ist nur
der Prozess , dem
Computer zu sagen, was er tun soll. Softwareentwicklung ist jedoch ein umfassenderer Prozess
der Softwareentwicklung. Die Hauptkomponente
dieses Prozesses
wird die Codierung sein, aber es gibt noch
viele andere
Schlüsselkomponenten für diesen Prozess. Aber du wirst es nicht lernen, wenn
du nur programmieren lernst. Schritt drei: Erlernen Sie
die Grundlagen. Ich werde ständig gefragt, mit
welcher Programmiersprache
sollte ich beginnen? Keine Sorge, wir werden gleich
da sein. Die Realität ist jedoch, dass alle
Programmiersprachen auf denselben Grundideen basieren, und wir sollten damit beginnen, diese Ideen zu
lernen. Ein guter Ausgangspunkt ist
CS5, der erste
Informatikkurs
, der in Harvard
angeboten wird. Dies ist eine unglaubliche Ressource
, da sie online
völlig kostenlos ist
und erstklassig ist. Dieser Kurs gibt Ihnen einen grundlegenden Überblick über die Prinzipien der
Informatik. In diesem Kurs lernen Sie alles, von binärer Notation über
Codierung und C und Python bis hin zum Erstellen von
Full-Stack-Webanwendungen mit HTML, CSS und JavaScript. Natürlich wirst du
diesen Kurs nicht als Experte für
so ziemlich alles verlassen . Sie werden jedoch mit
einem Verständnis des
Codierungskontextes und seiner Einordnung
in dieses Gesamtbild
der Softwareentwicklung und
Informatik abreisen einem Verständnis des
Codierungskontextes und seiner in dieses Gesamtbild
der Softwareentwicklung und , um tief in eine einzige
Programmiersprache einzutauchen. Zu diesem Zeitpunkt
wurden Sie mit
einer Vielzahl
verschiedener Sprachen vertraut gemacht . Und eine Sache, die Sie
bemerken werden, ist, dass sie sich in Wirklichkeit alle sehr
ähnlich sind. Sie haben möglicherweise eine etwas
andere Syntax. Aber eine Sache, die Sie lernen werden,
ist, dass Sie, sobald
Sie eine gelernt haben, sehr
einfach weitere Sprachen lernen können. Wenn Sie sich also nicht sicher sind,
welche Sprache dargestellt wird,
beachten Sie, dass es nicht
wirklich wichtig ist,
aber ich würde normalerweise
sagen, dass Sie standardmäßig entweder Python, Java
oder JavaScript verwenden. Python ist eine großartige
Allround-Programmiersprache mit
unglaublich einfacher Syntax. Es eignet sich besonders gut für Datenwissenschaft und
maschinelles Lernen, wird
aber auch an
vielen anderen Orten eingesetzt,
beispielsweise in der Backend-Webentwicklung. Java ist eine weitere
Allzweck-Programmiersprache , die
fast überall verwendet werden kann. Einer der großen Vorteile ist, dass es mit statischer Typisierung ausgestattet ist,
was bedeutet, dass Sie
die Typen jeder
Variablen,
die Sie erstellen, explizit definieren müssen. Das ist großartig, besonders
zum Lernen, weil es Sie
zwingt, den Code, den Sie schreiben, wirklich zu
durchdenken. Allerdings ist es auch
erwähnenswert, dass die Java-Syntax viel
ausführlicher ist als die Python-Syntax, sodass es
etwas schwieriger sein kann, loszulegen. Andererseits ist JavaScript die primäre Programmiersprache das Frontend
des Internets. Und meiner Meinung nach ist es damit eine
der am einfachsten
zu erlernenden Sprachen, da der Code,
den Sie schreiben oft einfacher zu sehen und zu
verstehen
ist , da Sie mit
der Ausgabe und einem Webbrowser
anstatt mit einem Terminal interagieren
können . Wenn Sie sich jedoch für diesen Weg
entscheiden, müssen
Sie auch HTML und CSS
lernen, die
Markup-Sprachen, die zur
Beschreibung des Inhalts
und Stils von Webseiten verwendet werden . Sobald Sie sich für eine Sprache entschieden
haben, müssen Sie auch einen Ort finden,
an dem Sie sie tatsächlich lernen können. Es gibt jede Menge tolle
Kurse, aber hier sind einige, die
ich empfehlen würde. An erster Stelle auf der kostenlosen Seite stehen das Free Code Camp
sowie die Code Academy. Beide bieten kostenlose Kurse,
die in der Regel von sehr hoher Qualität sind, und Sie können diese durch
Videos auf YouTube
ergänzen , wenn Sie und Sie können diese durch
Videos auf YouTube
ergänzen, wenn Sie
feststellen, dass die Kurse in irgendwelchen Bereichen
fehlen Wenn Sie an kostenpflichtigen Kursen
interessiert sind, habe ich
Programmierexperte wirklich geliebt. Natürlich muss ich mich mit meiner Voreingenommenheit und der Tatsache auseinandersetzen, dass ich
für Algo Expert gearbeitet habe, das Unternehmen, das den
Programmierexperten gegründet hat. Aber mach dir nicht zu viele Sorgen. Ich habe keinen finanziellen Anreiz , dass Sie
das Produkt gekauft haben. Dies wird in keiner Weise
von ihnen gesponsert. Ich denke einfach, dass es
ein qualitativ hochwertiges Produkt ist, besonders wenn Sie Python lernen
möchten. Es gibt auch
viele Kurse auf Udemy und Coursera. Ich habe diese allerdings nicht
durchgesehen, daher kann ich nicht wirklich
einen empfehlen,
aber ich bin mir sicher, dass einige
davon ziemlich gut sind nur um sicherzugehen, dass du dir zuerst
die kostenlosen Inhalte ansiehst, um ein Bild zu bekommen und vielleicht
die Bewertungen sowie
die kleinste Seite hier zu lesen , du solltest dir auch
etwas Zeit nehmen, um an
dieser Stelle
einen Code-Editor auszuwählen und dich mit seinen Funktionen vertraut zu machen. Der
derzeit beliebteste Editor ist
Visual Studio Code. Das ist also wahrscheinlich ein
guter Anfang, aber welchen Sie wählen,
ist nicht allzu wichtig. Was jedoch wichtig
ist, ist, sich daran zu gewöhnen,
Code auf Ihrem lokalen
Computer in einem Code-Editor zu bearbeiten .
Ich erinnere mich, dass ich den größten Teil
meines Lernens mit
Online-Tutorials gemacht habe, und ich fühlte mich verloren, als ich
versuchte ,
das, was ich online
gelernt habe , in diesen lokalen Editor zu bringen, um diese Verwirrung zu vermeiden . Gewöhnen Sie sich
einfach daran, von
Anfang an
einen lokalen Editor zu verwenden und es wird alles zu
einem viel einfacher.
3. Coding Fähigkeiten: Fünfter Schritt: Lernen, üben,
wiederholen, während Sie lernen, stellen Sie sicher, dass Sie
tatsächlich üben. Das alles geht auf diese
ursprüngliche Idee des Kontextes zurück. Wenn Sie nur die Syntax
des Codierens lernen möchten, lernen
Sie
etwas Nützliches, wenn Sie mehr
lernen und versuchen,
einige einfache Projekte zu erstellen. Überwinde dich nicht mit
etwas zu Kompliziertem, sondern versuche einfach sicherzustellen, dass du dein Wissen
anwendest genau das zu tun, was
in einem Tutorial vorgeschrieben ist. Das ist wirklich der einzige Weg, um zu bestätigen, dass Sie
tatsächlich lernen. Während du das tust, wirst du feststellen ständig
Dinge
googelst. Und das ist völlig okay. Tatsächlich google
ich über zehn Jahre später immer noch fast jedes Mal, wenn ich code, etwas. Stellen Sie jedoch sicher
, dass Sie nicht nur Lösungen kopieren und einfügen. Ihr Ziel ist es zu lernen. Stellen Sie also sicher, dass Sie jeden Code
, den Sie kopieren, tatsächlich verstehen. Ein guter Weg, dies zu tun, besteht
darin, die Lösung zu finden und dann nach
einiger Zeit wiederzukommen und sie selbst
erneut zu implementieren. Auf diese Weise bestätigen Sie, dass Sie tatsächlich verstanden haben, was
Sie nachschlagen mussten. Schritt sechs: Erlernen Sie Fähigkeiten zur
Softwareentwicklung, die nichts mit Programmieren zu tun haben. Wie ich schon sagte,
Softwaretechnik ist nicht nur Codierung. Es gibt noch viele
andere Dinge zu lernen, von denen
viele für die meisten
Entwicklerjobs unglaublich
wichtig sein werden . Zuallererst
müssen Sie sich an die
Verwendung eines Terminals gewöhnen , falls
Sie dies noch nicht getan haben. Sie müssen kein
Experte für Bash sein, sollten
aber in der
Lage sein, schnell durch
Verzeichnisse zu navigieren und Dateien zu bearbeiten. Lernen Sie außerdem das
Git-Versionskontrollsystem kennen. So behalten
Softwareingenieure und Industrie den
Überblick über ihre Arbeit. Sie können es sich wie die Geschichte von
Google Docs vorstellen. Aber was Code angeht, sind beide Get n
zum Terminal im
Allgemeinen ziemlich
einfach zu erlernen. Also, wenn es in einem anderen Kurs, den du
benutzt hast, unterrichtet wird, dann ist das großartig. Folgen Sie dem einfach. Ansonsten kannst du
es wahrscheinlich durch einige YouTube-Videos lernen . Und natürlich einfach alleine
üben. Versuchen Sie von hier aus, Grundkenntnisse in
verschiedenen Aspekten der
Softwaretechnik zu entwickeln Grundkenntnisse in
verschiedenen Aspekten der . Sie müssen kein
Experte für sie sein, aber es kann hilfreich sein, ein wenig
darüber
zu verstehen wie die Cloud
funktioniert und möglicherweise sogar, wie man einen
Cloud-Anbieter wie
AWS oder Google Cloud Platform verwendet . Ein weiterer Bereich, den es zu untersuchen gilt, wären Netzwerke und Systemdesign. Dies
beantwortet im Wesentlichen Fragen
wie, wie funktioniert das Internet
eigentlich und wie entwerfen wir
umfangreiche Anwendungen? Sie könnten auch damit beginnen
, weitere Nischenbereiche wie
Spieleentwicklung,
mobile Entwicklung,
verschiedene Frontend-Frameworks
oder maschinelles Lernen zu erkunden , weitere Nischenbereiche wie Spieleentwicklung,
mobile Entwicklung, verschiedene Frontend-Frameworks
oder maschinelles Lernen Welche Sie wählen,
hängt
jedoch . Welche Sie wählen,
hängt
jedoch von Ihren
Interessen und Ihren Zielen ab. Schritt 7: Erlernen Sie
fortgeschrittenere Codierungen. Es gibt einige Aspekte
der Codierung, die es wert sind, untersucht zu , die über die
Syntax einer Sprache
hinausgehen. Zuerst würde ich die
verschiedenen Datenstrukturen lernen. Insbesondere würde ich mich auf Arrays, Sets,
Maps, Stacks, Warteschlangen,
Bäume und Grafiken
konzentrieren . Das mag nach viel klingen, aber Sie werden wahrscheinlich
auf die meisten
dieser Dinge stoßen , wenn
Sie die von
Ihnen gewählte
Programmiersprache lernen . Wie dem auch sei, zusätzlich sollten
Sie einige
Algorithmen
lernen, bei denen es sich im Wesentlichen nur um bekannte hocheffiziente Programme
für bestimmte Aufgaben handelt. Sie möchten also insbesondere
einige Sortieralgorithmen
wie Merge Sort kennen . Sie möchten einige
Suchalgorithmen
wie die binäre Suche lernen . Und Sie möchten einige
Graph Traversal-Algorithmen
wie BFS und DFS kennenlernen . Darüber
hinaus würde ich Ihnen empfehlen, zu lernen wie man Code in
C oder C plus schreibt. Diese Sprachen sind bei weitem nicht so
benutzerfreundlich wie Sprachen wie Python, daher eignen sie sich nicht als
erste Programmiersprachen. Sie geben Ihnen jedoch eine
viel direktere Kontrolle über den Speicher Ihres Computers. Das ist etwas, das Ihnen bei
moderneren Sprachen
normalerweise
abstrahiert wird. Aber ich denke,
ein Verständnis dafür zu bekommen wie das alles funktioniert, und nur um Sie zu einem besseren
Programmierer zu machen, Schritt acht, bereiten Sie sich auf
technische Interviews vor. Angenommen, Sie möchten einen
Job als Softwareingenieur bekommen, ist
es ziemlich wahrscheinlich
, dass Sie einige
technische Interviews
bestehen müssen . Danke fürs Zuschauen und wir
sehen uns im nächsten Video.