Heim  >  Artikel  >  Backend-Entwicklung  >  C++-Lernroute

C++-Lernroute

王林
王林Original
2019-10-29 14:03:0711180Durchsuche

C++-Lernroute

1. Elementare Einstiegsphase

Datentypen, Variablen, Speicherlayout, Zeigergrundlagen; Array, zweidimensionales Array;

Zeiger der Ebene eins, Zeiger der Ebene drei, Zeigerkonzept der Ebene N, Zeiger-Array und Array-Zeiger;

Dynamische Bibliothekskapselung und -design

Funktionszeiger-Rückruffunktion.

Objektorientierte Programmierideen;

Klassenkapselung, Konstruktion und Zerstörung, statische Mitglieder, Objektverwaltung;

Klassenkonstruktion (parametrisierter Konstruktor, Parameterlose Konstruktion, Kopierkonstruktion, Standard). Konstruktor) und Zerstörung;

Dynamische Objektverwaltung, Friend-Funktionen, Friend-Klassen, Operatorüberladung;

Dynamische Verwaltung von Klassenobjekten (neu). /delete);

Friend-Funktionen und Friend-Klassen;

Operatorüberladung (unäre Operatoren, binäre Operatoren, Schwierigkeiten bei der Operatorüberladung, Operatorüberladung in der Projektentwicklung); Vererbung, Mehrfachvererbung und ihre Mehrdeutigkeit, virtuelle Vererbung;

Polymorphismus (Konzept, Bedeutung, Prinzipanalyse, polymorphe Fälle);

Virtuelle Funktionen, rein virtuelle Funktionen, abstrakte Klassen (Fälle abstrakter Klasse). Programmierideen);

Funktionsvorlagen, Klassenvorlagen, Vererbung von Vorlagen;

C++-Eingabe- und Ausgabestream (Standard-E/A-Datei-E/A). Zeichenstrom-E/A);

C++-Ausnahmebehandlung (Ausnahmemechanismus, Ausnahmetyp, Ausnahmevariable, Standard-Ausnahmebibliothek)

2 >

Wie Windows-Plattform VC-Serie: VC++6.0 (älter);

Visual Studio2013, Visual Studio2015;

XCode-Serie für Mac-Plattform sowie CodeBlock und enthält außerdem einige allgemeine Einstellungen für die erweiterten Editoren Notepad++, EditPlus, UE und andere Entwicklungstools sowie die Verwendung einiger allgemeiner Tastenkombinationen.

3. Entwicklungsfortschritte

1. STL

STL = Standard-Vorlagenbibliothek. Dies ist ein großartiges Tool zur Verbesserung der Entwicklungseffizienz. Durch das Studium dieser Stufe sollten Sie allgemeine Programmierkenntnisse beherrschen, den Anwendungsmodus von Containerklassen in der Sprache C++ verstehen und die Verwendung aller STL-Klassen beherrschen.

2. Entwurfsmuster

Der wichtigste Faktor, der über den Erfolg oder Misserfolg eines Projekts entscheidet, ist der Gesamtentwurf des Projekts Die objektorientierte Programmierung ist der Schlüssel zur Codierung vor der Codierung. Die Fähigkeit liegt in der Modellierung. Singleton-Modus; Factory-Modus; Iterationsmodus usw.

3. Grundlagen der Datenstruktur

Dies ist der wichtigste Teil, den es in allen Programmiersprachen zu lernen gilt, und eine der Grundlagen der Programmkomposition.

Sequentieller Speicher, verketteter Speicher, zirkulär verknüpfte Liste; Doppelt verknüpfte Liste, Stapel (sequentiell und verkettet), Warteschlange (sequentiell und verkettet); Grundkonzepte von Bäumen und Traversierung, Binärbäume;

Sortieralgorithmus, Vereinigungsalgorithmus, Auswahl, Einfügung, schnell, Hill.

4. UI-Schnittstellenentwicklung

Beherrschen Sie die QT-Klassenbibliotheksarchitektur und das grafische Schnittstellenentwicklungsmodell;

Beherrschen Sie die QT-Entwicklungsfähigkeiten, den Nachrichtenmechanismus und die Grafikverarbeitung;

Master QT-Netzwerkprogrammierung, UDP- und TCP-Nutzung

Master QT-Dateiverarbeitungsmethoden und Serialisierung

Master QT unter verschiedenen Plattformen von Windows, Linux, iOS, Android Transplantationstechnologie.

5. UBIX/LINUX-Netzwerkserver


Beherrschen Sie die Entwicklungsmethode der Unix/Linux-Plattform;

Kompetent im Umgang mit Systemaufrufen; in Unix/Linux-Speicherverwaltung, Prozess, Thread-Planung;

Seien Sie mit Netzwerkserver-Entwicklungsmethoden vertraut und beherrschen Sie die Verwendung von synchronen/ asynchrone IO-Modelle in der Netzwerkprogrammierung.

6. Datenbankentwicklung

Beherrschen Sie die praktischen Fähigkeiten der SQL-Sprache. So verwenden Sie Oracle- und MySQL-Datenbanken.

4. Fortgeschrittene Entwicklung

1. Die für die Softwareentwicklung erforderlichen Kenntnisse und Fähigkeiten sind in dieser Phase relativ schwierig, und erfahrene Softwareentwickler müssen über Programmierkenntnisse verfügen Standardisierung Bestimmte Anforderungen;

2. Sie verfügen über bestimmte Projektfähigkeiten (einschließlich Debugging-Fähigkeiten, Fähigkeiten zum Schreiben von Dokumenten, Testfähigkeiten usw.) und umfassende technische Qualitäten (einschließlich Verständnis des Software-Lebenszyklus, Verständnis von Designmustern, wesentliche Industrie). Wissen und Erfahrung usw.);.

3. Verstehen Sie die gängige Back-End-Technologie sowie die Front-End- und Back-End-Zusammenarbeitsmethoden und können Sie den gesamten Lebenszyklus des Projekts aus globaler Sicht verstehen Perspektive.

Empfohlenes Tutorial:

C++-Tutorial

Das obige ist der detaillierte Inhalt vonC++-Lernroute. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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