ホームページ  >  記事  >  バックエンド開発  >  C++学習ルート

C++学習ルート

王林
王林オリジナル
2019-10-29 14:03:0711189ブラウズ

C++学習ルート

1. 初歩的なエントリ段階

データ型、変数、メモリ レイアウト、ポインタの基本;

文字列、1 次元配列、2 次元配列;

第 1 レベル ポインター、第 2 レベル ポインター、第 3 レベル ポインター、N レベル ポインターの概念、ポインター配列と配列ポインター;

構造体の使用とファイル;

ダイナミック ライブラリのカプセル化と設計;

関数ポインター コールバック関数。

オブジェクト指向プログラミングのアイデア;

クラスのカプセル化、構築と破棄、静的メンバー、オブジェクト管理;

クラス構築 (パラメータ化されたコンストラクター、パラメータなしの構築、コピー構築、デフォルト)コンストラクター) と破棄;

オブジェクトの動的管理、フレンド関数、フレンド クラス、演算子のオーバーロード;

C コンパイラー オブジェクト管理モデルの分析;

クラス オブジェクトの動的管理 (新規) /delete);

フレンド関数とフレンド クラス;

演算子のオーバーロード (単項演算子、二項演算子、演算子のオーバーロードの難しさ、プロジェクト開発における演算子のオーバーロード);

クラス継承、多重継承とその曖昧さ、仮想継承;

多態性 (概念、意味、原理分析、多態性のケース);

仮想関数、純粋仮想関数、抽象クラス (抽象クラスのケース)プログラミングのアイデア);

関数テンプレート、クラス テンプレート、テンプレートの継承;

C 型変換;

C 入出力ストリーム (標準 I/O ファイル I/O 文字)ストリーム I/O);

C 例外処理 (例外メカニズム、例外タイプ、例外変数、例外階層、標準例外ライブラリ);

2. IDE 開発ツール

Windows プラットフォームの VC シリーズなど: VC 6.0 (比較的古い);

Visual Studio2013、Visual Studio2015;

Mac プラットフォーム用の XCode シリーズ、および CodeBlockには、高度なエディターである Notepad、EditPlus、UE、およびその他の開発ツールの共通設定と、いくつかの一般的なショートカット キーの使用も含まれています。

3. 高度な開発

1. STL

STL = 標準テンプレート ライブラリ、つまり標準テンプレート ライブラリ。これは開発効率を向上させるための優れたツールです。この段階を学習することで、一般的なプログラミング スキルを習得し、C 言語のコンテナ クラスのアプリケーション モードを理解し、すべての STL クラスの使用に習熟する必要があります。

2. デザインパターン

プロジェクトの成否を決める最も重要な要素は、プロジェクト全体のデザインです。この段階の学習を通じて、プロジェクトの重要な部分を習得できます。オブジェクト指向プログラミングは、コーディングの前に重要な要素であり、モデリングのスキルが鍵となります。シングルトン モード、ファクトリー モード、エージェント モード、反復モードなど。

3. データ構造の基礎

これは、すべてのプログラミング言語で学ぶべき最も重要な部分であり、プログラム構成の基礎の 1 つです。

シーケンシャル ストレージ、チェーン ストレージ、循環リンク リスト;

ダブル リンク リスト、スタック (シーケンシャルおよびチェーン)、キュー (シーケンシャルおよびチェーン);

スタックのアプリケーション、ツリーとトラバーサル、バイナリ ツリーの基本概念;

ソート アルゴリズム、マージ アルゴリズム、選択、挿入、高速、ヒル。

4. UI インターフェイス開発

QT クラス ライブラリ アーキテクチャとグラフィカル インターフェイス開発モデルをマスターする;

QT 開発スキル、メッセージ メカニズム、およびグラフィックス処理をマスターする。

マスター QT ネットワーク プログラミング、UDP、TCP の使用法;

マスター QT ファイル処理方法、シリアル化;

Windows、Linux、iOS、Android 移植のさまざまなプラットフォームでのマスター QTテクノロジー。

5. UBIX/LINUX ネットワーク サーバー

Unix/Linux プラットフォームの開発方法をマスターする;

システム コールの使用に習熟する;

熟練するUnix/Linux のメモリ管理、プロセス、スレッド スケジューリング;

ネットワーク サーバー開発手法に精通しており、TCP、UCP ネットワーク サービス プログラムの作成に精通している;

同期/非同期 IO モデルの使用をマスターするネットワークプログラミングで。

6. データベース開発

SQL言語の実践スキルを習得します。 Oracle および MySQL データベースの使用方法。

4. 高度な開発

1. この段階のソフトウェア開発作業に必要な知識とスキルは比較的難しく、上級ソフトウェア エンジニアにはコーディングの熟練度や標準化が必要です。 . 特定の要件;

2. 特定のプロジェクト能力 (デバッグ能力、ドキュメント作成能力、テスト能力など) と包括的な技術的資質 ​​(ソフトウェア ライフ サイクルの理解、設計パターンの理解、重要な業界の理解など) を備えていること。知識や経験など);.

3. 主流のバックエンド技術とフロントエンドとバックエンドのコラボレーション手法を理解し、プロジェクトのライフサイクル全体をグローバルな視点から理解できる視点。

推奨チュートリアル: c チュートリアル

以上がC++学習ルートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。