Im Mai 2024 habe ich nach drei Monaten harter Arbeit endlich den Harvard CS50X-Kurs abgeschlossen. Schließlich beendete ich die gesamte Reise und erhielt ein kostenloses Zertifikat von Harvard. Es war einer der besten Kurse, die ich je besucht habe. Hier ist mein Zertifikat,
Da Sie hier sind, kann ich davon ausgehen, dass Sie etwas über CS50x wissen. Es handelt sich um den Kurs „Einführung in die Programmierung“ der Harvard University, der Ihnen die Grundlagen der Programmierwelt vermittelt. Ich sehe da draußen viele Missverständnisse, die ich hatte, bevor ich angefangen habe. Ich werde versuchen, einen umfassenden Überblick und allgemeine Richtlinien zu geben, damit Sie CS50x vollständig verstehen. Am Ende können Sie, genau wie ich, ein kostenloses Zertifikat von Harvard erhalten. Fangen wir an
Was ist CS50? Harvard sagt:
Dies ist CS50, die Einführung der Harvard University in die intellektuellen Unternehmungen der Informatik und der Kunst des Programmierens, für Konzentratoren und Nicht-Konzentratoren gleichermaßen, mit oder ohne vorherige Programmiererfahrung.
Der Kurs besteht aus 11 Wochen (Teilen) Lernmaterialien und in jedem Teil erhalten Sie eine Reihe von Aufgaben, die Sie selbst lösen müssen, ohne die Hilfe von KI oder einer anderen Methode. In der letzten 11. Woche müssen Sie ein Abschlussprojekt einreichen, das Sie mit Ihrer Kreativität abschließen müssen.
Eine Spezialität von CS50 ist sein Ausbilder David Malan und das unterstützende CS50-Team. Sie werden sich in den Lehrstil von David Malan verlieben. Seine Präsentation und sein Unterricht waren wunderbar. Ich habe keine Beschwerden über die Lehren dieses Kurses.
Nachfolgend finden Sie eine ausführliche Übersicht über alle Wochen. überspringe es gerne. Wie Sie diese Abschnitte meistern, erfahren Sie später in diesem Blog
**Woche 0 Kratzer:
**In diesem Abschnitt lernen Sie einige einführende Konzepte der Informatik kennen, wie z. B. rechnergestütztes Denken, Problemlösung, Binär, ASCII, Uniconde, Algorithmen usw.
David wird Ihnen anhand einer Babysprache namens Scratch einige Überlegungen zu den Grundlagen des Programmierens zeigen. Als Herausforderung müssen Sie Ihr eigenes Scratch-Projekt einreichen. Es macht ehrlich gesagt Spaß.
**Woche 1 C:
**In diesem Abschnitt schreiben Sie tatsächliche Programme. Sie lernen, wie man in C programmiert. Dazu gehören Grundlagen einer Programmiersprache wie Bedingungen, Schleifen, Variablen, Datentypen und grundlegende Terminalbefehle. Malan wird sich mit einigen tiefgreifenden Konzepten wie Ganzzahlüberlauf und Trunkierung befassen.
Hier sind die zu erledigenden Aufgaben Mario, Bargeld und Kredit.
Mario und Bargeld sind einfach, aber Kredit ist schwierig.
**Woche 2 Arrays:
**Sie lernen Verarbeitungs- und Kompilierungsschritte, Debugging und wichtige Programmierkonzepte wie Arrays und Strings. Sie werden im Unterricht zwei Programme „greet.c“ und „touppercase“ erstellen
Die Probleme sind Scrabble und Lesbarkeit. Beachten Sie, dass die Lesbarkeit schwierig ist. Außerdem müssen Sie eines dieser Projekte einreichen,
Caesar (vergleichsweise einfach) und Substitution (schwierig++).
Woche 3 Algorithmen:
Im Kurs wird Ihnen die asymptotische Notation zur Berechnung der algorithmischen Effizienz beigebracht. Das Video zeigt die Suchvorgänge und Sortierungen wie lineare Suche, binäre Suche, Blasensortierung, Zusammenführungssortierung und Auswahlsortierung. Hier wird auch ein schönes Programmierkonzept gezeigt, nämlich die Rekursion.
Sie müssen Sortierung und Pluralität obligatorisch absolvieren. Die optionalen sind Runoff und Tideman. Sie müssen eine der beiden Aufgaben erfüllen. Mein Rat ist, Runoff abzuschließen, da es einfacher ist. Tideman ist eines der schwierigsten Probleme, denen Sie jemals in Ihrem Leben begegnen werden.
Woche 4 Erinnerung:
In dieser Woche lehrt Malan, wie das Gedächtnis funktioniert. Hier werden Zeiger, Malloc, Free und grundlegende Speicherausführungen wie Heap und Stack behandelt. Außerdem erfahren Sie mehr über Speicherlecks, Müllwerte und Datei-E/A-Vorgänge.
Als Problem müssen Sie „Volume“, „Recover“ und eine beliebige Filterversion angeben. Ich habe beide Filterprobleme eingereicht.
Datenstrukturen der 5. Woche:
Sie lernen einige Grundlagen von Datenstrukturen. Konzepte wie Warteschlangen, Stapel, Heaps, verknüpfte Listen, Suchbäume, Hash-Tabellen und Versuche werden hier behandelt
Die Probleme sind Rechtschreibung und Vererbung, die vergleichsweise einfacher sind als die vorherigen. Wenn Sie es bis hierher geschafft haben, sind Sie sicher in der Lage, die gesamte Reise zu Ende zu bringen.
Woche 6 Python:
Sie werden die vorherigen Konzepte der Programmiersprache anwenden, jedoch in einer viel einfacheren Sprache, Python.
Die Aufgabenstellungen sind einfach. Tatsächlich schreiben Sie Ihre vorherigen pset-Lösungen in Python neu. Beachten Sie, dass Sie das DNA-Problem möglicherweise etwas knifflig finden.
Woche 6.5 Künstliche Intelligenz:
Sie erfahren, wie die moderne KI Entscheidungen trifft und dahinter arbeitet. Einige Grundlagen von Prompt Engineering, maschinellem Lernen, Deep Learning und generativer KI werden hier besprochen.
Hier stellt sich kein Problem ein.
Woche 7 SQL:
Tauchen wir tief in die Welt der relationalen Datenbanken ein. Ihnen werden die Grundlagen der SQLite3-Datenbank und die Konzepte wie Tabellen, Zeilen, Indizes, Funktionen und Injektionsangriffe usw. vermittelt.
Wenn Sie sich auf die Themen im Video konzentriert haben, ist die Problemstellung für Sie zu einfach zu lösen. Die Probleme sind Songs, Filme und FiftyVille.
Ich liebe das FiftyVille einfach. Ich glaube, Sie werden es auch lieben.
Woche 8 HTML, CSS und JavaScript:
Im Video werden die grundlegenden Webkonzepte besprochen, z. B. die Funktionsweise des Internets, TCP, IP, HTTP usw. Anschließend lernen Sie die Bausteine einer Website kennen, nämlich HTML, CSS und JavaScript. Sie erhalten nur einen kurzen Einblick in diese Technologien.
Sie müssen die Lösungen für zwei Probleme einreichen: Trivia und Homepage. Sie müssen benutzerdefinierte Websites mit HTML, CSS und Javascript erstellen, um dieses Problem zu lösen
Woche 9 Flasche:
Flask ist eine auf Python basierende Bibliothek, um eine Website dynamisch zu gestalten. Das Video behandelt Themen wie Flask, Route, Anfragen, Antworten, Sitzungen, Cookies und zeigt die grundlegende Jinja-Syntax.
Sie müssen zwei Probleme lösen: Geburtstage und Finanzen, indem Sie mit Flask und Jinja zwei dynamische Websites erstellen. Die Finanzen sind ein schwieriges, aber unterhaltsames Problem.
Woche 10 Cybersicherheit:
Im Video werden die Grundlagen der Cybersicherheit behandelt und es müssen keine Probleme im Zusammenhang mit der Cybersicherheit gelöst werden. Sie müssen lediglich ein Abschlussprojekt abschließen, um den gesamten Kurs abzuschließen. Sie können hier die Hilfe von KI in Anspruch nehmen, aber Ihr Projekt muss einzigartig sein. Um das Projekt zu realisieren, können Sie wählen, was Sie machen möchten und welche Technologien Sie wählen möchten.
Obwohl die meisten Menschen von Cs50 profitieren können, gibt es bestimmte Dinge, die Sie vor Beginn beachten sollten. Andernfalls könnten Sie enttäuscht sein oder den Kurs nicht beenden und Zeit verschwenden.
**Sie haben noch nie zuvor programmiert:
**Obwohl ein wenig Programmiererfahrung viel Zeit spart, sollten Sie mit CS50 beginnen, wenn Sie noch nie zuvor programmiert haben. Wenn Sie es bis zum Ende schaffen, können Sie unaufhaltsam werden. Beachten Sie, dass die meisten Anfänger den Kurs nicht beenden, weil er ihnen zu schwer erscheint.
**Sie möchten ein umfassendes Verständnis der Programmierwelt haben:
**Ob Sie Angestellter, kreativer Arbeiter oder Student sind, CS50 hilft Ihnen dabei, ein gutes Verständnis der Programmierwelt aufzubauen. Vielleicht finden Sie einen Weg, den Sie in Ihrer Karriere einschlagen können. Genau wie ich.
Ich war Frontend-Entwickler und habe hauptsächlich am Frontend gearbeitet und ansprechende Benutzeroberflächen erstellt. Nachdem ich CS50 abgeschlossen hatte, fing ich an, mich dem Backend zuzuwenden.
Sie möchten Ihre Fähigkeiten zur Problemlösung verbessern:
CS50 hat eine Menge Probleme zu lösen. Mit jeder Woche werden die Probleme schwieriger und interessanter. Ich bin mir sicher, dass CS50 definitiv der richtige Weg ist, wenn Sie Ihre Fähigkeiten zur Problemlösung verbessern und gleichzeitig einen Überblick über die Programmierwelt erlernen möchten.
Suche nach einem anerkannten Ausweis:
Das Harvard-Zertifikat zu erhalten, ist eine fantastische Sache, die man in seinem Leben erreichen kann. Denken Sie so darüber nach,
Wenn Sie in der Personalabteilung tätig sind und sich dafür entscheiden, zwei Kandidaten für eine einzige Position einzustellen, wird derjenige, der zuvor CS50 abgeschlossen hat, in Ihrer Liste immer eine passende Position einnehmen. Obwohl auch andere Faktoren eine Rolle spielen.
**Sie möchten einen Experten auf einem Gebiet gewinnen:
**Dies ist ein wichtiger Punkt. Aus eigener Erfahrung kann ich sagen, dass CS50x kein Kurs ist, der einen auf ein bestimmtes Fachgebiet spezialisiert. sei es Webentwicklung, mobile Entwicklung oder Backend-Entwicklung. Es gibt Ihnen nur einen grundlegenden Überblick über die Tech-Welt. Sie erwerben umfangreiche Kenntnisse in der Programmierwelt. Dann besteht Ihre Aufgabe darin, ein Feld auszuwählen und mehr darüber zu erfahren. CS50 verfügt auch über eigene Python- oder Web-Kurse. Sie können sie überprüfen.
Sie wollen so schnell wie möglich einen Job:
Ich möchte Ihnen diese entscheidende Botschaft übermitteln. Wie ich bereits sagte, handelt es sich bei CS50x nicht um einen Spezialkurs, der Sie nicht zum Experten macht oder Ihnen umfassende Kenntnisse in einem bestimmten Bereich vermittelt. Dafür sind Ihre Kenntnisse noch nicht ganz vollständig. Es ist ein weit verbreitetes Missverständnis, das ich in der Community finde. Wenn Sie so früh wie möglich einen Job suchen, dann suchen Sie nach anderen vollständigen Kursen oder Lernpfaden. CS50 bietet Kurse wie Python, R oder Web. Sie können sie überprüfen. Aber ausnahmslos ist es schwierig, nur mit dem CS50x einen Job zu bekommen. Du kannst mir auf Twitter eine DM schreiben, damit ich dir dabei helfen kann.
HINWEIS: Das CS50-Zertifikat kann Ihnen helfen, für das Vorstellungsgespräch in die engere Wahl zu kommen
Sie haben keine Zeit, sich festzulegen:
Als ich anfing, dachte ich, ich würde diesen Kurs innerhalb eines Monats durch enorme harte Arbeit abschließen.
Denken Sie daran, dass CS50 ein schwieriger Kurs ist und dass dies eine Spezialität davon ist. Die Fertigstellung erfordert Zeit. Manchmal müssen Sie sich die Vorlesungen möglicherweise noch einmal ansehen, um die Konzepte zu verstehen. Für die Fertigstellung sind mindestens zwei Monate engagierter Arbeit erforderlich. Ngl Ich habe 3 Monate gebraucht, um CS50 abzuschließen. Zeitaufwand ist notwendig.
Andere Faktoren:
Sie haben einen vollen Terminkalender oder Sie sind Programmierer und möchten sich nicht tief in die Low-Level-Sprache wie C einarbeiten.
Vielleicht befinden Sie sich bereits in einem Lernprozess und haben ständig etwas im Kopf, das Sie zu CS50 ruft. Schließen Sie zuerst das Lernen ab, dann können Sie jederzeit zu CS50 kommen.
Da ich den Kurs bereits abgeschlossen habe, gebe ich Ihnen einige Tipps und Richtlinien zum Abschluss des CS50. Ich wünschte, ich hätte einige dieser Tipps schon früher gekannt. Ich glaube, es wird Ihnen dabei helfen.
Wir haben uns für CS50 entschieden, nicht weil es einfach ist, sondern weil es schwierig ist.
Denken Sie daran: Es ist nicht einfach
Eine Sache ist, Sie daran zu erinnern, dass CS50 ein SCHWER zu absolvierender Kurs ist, wenn Sie Anfänger sind und keine Vorkenntnisse in der Programmierung haben. Ich hatte das Glück, dass ich einen Hintergrund im Erlernen von JavaScript hatte, dessen Konzepte mir sehr geholfen haben. Irgendwann kann es schwierig werden und Sie könnten frustriert sein. Aber keine Sorge, es geht nicht nur dir so. Das haben wir alle erlebt und wir haben es überwunden.
**Schließen Sie den Kurs auf der CS50-eigenen Website ab
**Sie können den gesamten Kurs über EDX kostenlos absolvieren, aber ich denke, dass es viel einfacher ist, ihn über die Website von CS50 zu absolvieren. Es ist absolut Ihre Entscheidung.
Fordern Sie sich selbst heraus
Einer der Gründe, warum ich drei Monate gebraucht habe, um CS50x fertigzustellen, ist, dass ich praktisch alle Psets, einschließlich der optionalen, fertiggestellt habe. Ich habe mir selbst die Herausforderung gestellt, alle Problemaufgaben zu erledigen. Dies hat auch mein Wissen erweitert. Ich würde vorschlagen, dass Sie es zumindest versuchen und alle PSätze vervollständigen, unabhängig davon, ob sie optional oder erforderlich sind.
Machen Sie sich Notizen:
Sie müssen sich zu jedem wichtigen Thema, das in der Vorlesung behandelt wird, Notizen machen, damit Sie nicht noch einmal das gesamte Video ansehen müssen, um das Konzept noch einmal zu verstehen.
CS50-Videos sind etwas komplex. Manchmal muss man sich das Video noch einmal ansehen. Wenn Sie sich Notizen machen, sehen Sie sich das Video möglicherweise nicht noch einmal an und gehen nur die Notizen durch. das ist hilfreich. Ich habe mir Notizen zum Gedanken gemacht. Wenn Sie sie möchten, schreiben Sie mir eine DM auf Twitter. Ich werde sie mit Ihnen teilen.
Überspringen Sie nicht Lloyeds Erklärungen:
Nach jeder wöchentlichen David-Lektion werden einige zusätzliche Videos bereitgestellt, damit Sie die Themen besser verstehen. Doug Lloyd ist der Moderator und versucht anhand einiger Beispiele einen Überblick über die Themen zu geben. Mein Vorschlag ist, diese nicht zu überspringen.
Lassen Sie sich nicht auf ein optionales Problem ein:
Es ist notwendig, die obligatorischen Aufgabensätze zu vervollständigen, aber einige Probleme werden viel Zeit kosten. vor allem die „bequemeren“ . **Dies ist einer der Fehler, die ich gemacht habe. Ich steckte wochenlang fest, um auch nur ein einziges Problem zu lösen. Tu das nicht. Manchmal ist das Überspringen eine kluge Option.
Hier ist ein Tipp: Reichen Sie nicht die optionalen ein, die zu schwierig erscheinen. Google einfach die Lösung und versuche zu verstehen, was der Fehler war. und **Beachten Sie Folgendes: Reichen Sie diese Lösung nicht ein.
Tideman ist hart!!
Im Pset der Woche 3 müssen Sie einen von Runoff und Tideman einreichen. **Tideman ist ZU HART. Ich wiederhole ZU HART.
**Ich war stur und habe es versucht und bin fast 17 Tage lang festgefahren. Die Lösung dieses Problems erfolgt durch Rekursion. Dann musste ich weitermachen. Wenn Sie das Gefühl haben, dass dies schwierig ist (was offensichtlich der Fall ist), machen Sie einfach weiter. Schließe die Stichwahl ab und gehe weiter. Ich wünschte, jemand hätte mir das schon einmal erzählt.
Nehmen Sie rechtliche Hilfe von Discord in Anspruch
Die Discord-Community von CS50 ist sehr hilfreich. Nehmen Sie einfach Hilfe vom Server in Anspruch, wenn Sie nicht weiterkommen oder Fragen haben. Beachten Sie jedoch, dass Sie nicht Ihre vollständige Lösung teilen sollten. Das ist illegal.
der Link: CS50 Discord
Seien Sie ehrlich
CS50 hat eine Richtlinie zur akademischen Ehrlichkeit. Es ist absolut illegal, Code aus anderen Quellen zu kopieren und die Lösung so einzureichen, als ob sie von Ihnen geschrieben worden wäre. Das CS50-Team kann Ihr Zertifikat hierfür disqualifizieren.
Außerdem sind Sie hier, um zu lernen. Warum hier unehrlich sein?
Tipps zur endgültigen Projekteinreichung:
Sie sollten sich Zeit nehmen und das endgültige Projekt mit Liebe und Kreativität einreichen, als ob Sie Ihr eigenes technisches Produkt erstellen würden. Denken Sie gründlich darüber nach und machen Sie ein cool aussehendes Projekt.
TIPP: Jeder zweite PSatz außer dem endgültigen Projekt kann über CS50.dev erstellt werden. Sie sollten Ihr endgültiges Projekt in Ihrer lokalen Umgebung erstellen. Außerdem müssen Sie das endgültige Projekt vorantreiben, eine 750 Wörter lange Datei readme.md erstellen und ein Video darüber aufnehmen.
Dann reichen Sie es ein. Aber hier stehen Sie möglicherweise vor Herausforderungen. Dafür musste ich manuell einreichen.
Auf cs50.me müssen Sie sich mit GitHub anmelden und können dann Ihr Notenbuch sehen. Nach Abschluss aller erforderlichen Psets und des Abschlussprojekts haben Sie Anspruch auf ein kostenloses Zertifikat von Harvard. Es gehört dir!
Danke, dass Sie das gelesen haben. Ich hoffe, dass Sie Ihr Zertifikat von Harvard erhalten. Aber hier geht es nicht um das Zertifikat. Es geht darum, das wertvolle Wissen von den besten Ausbildern zu erlernen. Sie werden die ganze Reise lieben.
Danke fürs Lesen, das war alles von meiner Seite. Ich hoffe, Sie haben in diesem Artikel einige aufschlussreiche Dinge gefunden. Wenn Sie vor anderen Herausforderungen stehen oder weitere Fragen haben, schreiben Sie mir gerne eine DM auf Twitter: Shihab Haque
Quellenangabe auf dem Deckblatt: freecodecamp
Das obige ist der detaillierte Inhalt vonMeine ehrliche Rezension von Harvards CS: Tipps, Richtlinien und kostenloses Zertifikat. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!