CURRICULUM
カリキュラム
- テックスタジアムで学ぶ内容と目標について
- これから行う授業内容について説明
- 学習する技術について説明
- 全体スケジュールについて
- プロジェクトのバージョン管理
- バージョン管理とは
- Gitについて概要の説明
- 環境の導入
- 開発環境の構築
- 開発環境とは
- VisualStudioとは、IDEについて
- ビルドとは、コンパイル、インタプリタについて
- 環境の導入
- C++言語について
- C++言語とは
- 関数とは
- カプセル化、オブジェクト指向について
- クラス設計について
- ライブラリについて
- ライブラリとは
- 標準ライブラリについて
- その他のライブラリについて
- コーディングルールについて
- コーディングルールとは
- 変数名、関数名、クラス名等
- 言語基礎
- 変数とは
- 基本的な型について
- 拡張された型について
- 演算子
- 処理優先順位
- 制御文
- 反復文
- スコープ
- 配列
- ポインタ
- 参照(左辺値)
- 構造体
- 共用体
- const
- 文字列の扱い
- char
- wchar
- 関数
- 関数とは
- 関数プロトタイプ
- クラス
- クラスとは
- アクセス制御
- コンストラクタ/デストラクタ
- 継承とは
- 仮想関数とは(純粋仮想関数、抽象クラス)
- operator
- 比較演算子
- <>
- VisualStudio
- VisualStudioの利用方法
- デバッグについて
- 標準ライブラリ/標準C++ライブラリ
- 標準入出力
- メモリ割り当て
- ファイル操作
- 文字列クラス
- スコープ
- グローバルスコープ
- namespace
- class
- ローカルスコープ
- 定義
- 定義の有効範囲
- スコープ解決演算子
- ビルドオプションについて
- ビルドオプションとは
- ビルドオプションによるメモリ初期化の有無
- 初期化の重要性
- ワーニング、エラーについて
- ワーニング、エラーとは
- 警告オプションについて
- pragmaとは
- 概要
- アドレスとは
- 間接参照とは
- ポインタについて
- 参照について
- 概要
- 動的メモリ確保とは
- new / delete
- DynamicMemAlloc
- 動的メモリ確保の問題点
- メモリリーク
- ダンリングポインタ
- 二重開放
- スマートポインタ
- 所有権とは
- uniqueポインタ
- sharedポインタ
- クラスの作成
- クラスとは
- クラスの定義
- クラスの実装
- コンストラクタ/デストラクタ
- 初期化方法
- クラスの利用
- ドット演算子
- オーバーロード
- 継承
- 継承(派生クラス)
- オーバーライド
- 継承のトラブル
- 仮想関数
- 純粋仮想関数
- 抽象クラス
- operatorとは
- クラスの設計について
- デザインパターン
- 実装
- アロー演算子とは
- 仮想デストラクター
- 仮想デストラクターについて
- 仮想デストラクターの実装
- 定数
- 定数とは
- define
- enum
- const
- 利用の重要性を詳しく説明
- マクロ
- マクロとは
- マクロの実装
- template
- template Tとは
- templateの実装
- 関数の可変長引数について
- 旧来の記述方法
- 現在の記述方法
- デバッグ
- デバッグとは
- デバッグ方法について
- ログ
- ブレイクポイント
- ウォッチ
- コールスタック
- ライトブレイク
- assert
- 色々な要件でのクラス設計について
- アクセス制御やconstを利用したセキュアなクラス設計
- 範囲for文について
- スマートポインタ
- 動的メモリ確保の問題点1
- 循環参照とは
- 動的メモリ確保の問題点2
- 失敗事例
- 確保されたメモリは開放が必要という点について
- スコープと開放について
- ガベージコレクションとは
- 名前の隠蔽
- using宣言
- 型変換
- 静的
- 動的
- RTTI
- 暗黙の型変換
- 比較応用
- charポインタ型の比較には注意
- float型の比較(計算結果の場合)→float型で比較をするな
- アップキャスト/ダウンキャスト
- アップキャストとは
- アップキャストの実装
- ダウンキャストとは
- 危険性について説明
- オブジェクト指向/カプセル化
- オブジェクト指向の考え方
- カプセル化
- ポリモーフィズム
- ポリモーフィズムとは
- オーバーロード/オーバーライドとの関連性について
- 有用性について説明
- STLとは
- コンテナ
- 直列コンテナ(vector, list, deque)
- 連想コンテナ(map, set)
- コンテナアダプタ(stack, queue)
- スレッド基礎
- スレッドとは
- threadの実装
- threadの危険性
- スレッド応用
- セマフォ、ミューテックス
- デッドロック
- スレッドID
- 文字コード
- 文字コードとは
- ファイルを扱う際の注意
- アライメントについて
- アライメントとは
- コンシューマハード等メモリ量制約が多い環境での必要性
- x86 128bit(16byte)アライメント効率
- デザインパターン
- デザインパターンとは
- デザインパターン例数種
- 計算量について
- 計算量(オー)とは
- 処理コスト、乗算等
- STLを利用する事で減らす事が可能
- ソート
- 探索
- 色々な要件でのクラス設計について1
- 色々な要件でのクラス設計について2
- 今までに学んだ内容の振り返り
- 最終課題について
- 企画発表
- 中間発表
- 最終発表
- ポートフォリオ制作