1. トップ
  2. 学校紹介
  3. 情報公開
  4. 学科情報
  5. シラバス - 科目一覧

シラバス

ゲーム制作科 2024年度入学生

科目名 C言語Ⅲ 作成日 2025/03/17
区分 必修 講義/実習
開催時期 2年次 前期
講義・演習駒数/週 1駒
実習・実験駒数/週 1駒
合計駒数/週 2駒
総時間数 60時間
総単位数 3単位
企業連携
授業の目的 コンシューマゲーム業界で使われるC++の文法を学び、既存のソースコードを読めるようになることを目的とする。
到達目標 ①CとC++の違いの説明が出来る。 ②クラスの説明(定義、インスタンス、アクセス権、継承、ポリモーフィズム)が出来る。 ③三種類のスマートポインタの違いの説明が出来る。

評価項目 ①定期テスト ②小テスト ③レポート ④課題 ⑤作品 ⑥ポートフォリオ ⑦成果発表 ⑧その他
割合 60% 20%  % 20%  %  %  %  %
評価基準
評価基準1. 【定期テスト】中間試験・期末試験の合計で6割以上の点数を取得する。 評価基準2. 【実習課題】教科書に記載された課題のうち、必須範囲を全て合格する。 評価基準3. 【出席】出席率を85%以上にする。 評価基準1から3すべてを達成して単位取得とする。 秀/優/良/可の判定評価は単位取得した学生に対し、上記評価項目の割合によって判定・評価を行う。
※上記に示した評価項目の割合(%)を基準に、総合評価点を算出して成績評価を行う。
※出席率が80%未満の場合は、評価対象としない。

担当教員 三枝 尚登、大久保 繁
テキスト・参考文献 C言語Ⅲテキスト(ブルー、日本電子専門学校) やさしいC++ 第5版(SBクリエイティブ)
実務経験有無  
大久保 繁 ゲーム開発会社(デベロッパー)において、C++でのゲーム開発の実務に携わり、家庭用ゲーム機の開発タイトルの実績が多数ある。その経験を活かして、職業実践的な教育を行う。 
関連科目 C言語Ⅱ、アルゴリズム  履修前提   

授業計画

回数 学習目標 学習項目
1 ・参照(reference)についてポインタと比較した機能が説明出来る。 ・const属性と併せてconst参照の引数を利用するメリットについて説明出来る。  ・シラバス・成績評価、授業の目標について説明。 ・ポインタと比較しながら参照について説明。 ・引数をconst参照にすることのメリットについて説明。  
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
2 ・構造体(struct)を利用したデータ構造、およびメソッド(振る舞い)を理解し、  メソッドを含めた構造体を作成出来る。  ・thisポインタなど構造体を含めたポインタの利用について説明出来る。  ・メソッドを含めた構造体の作成について実演・説明。  ・thisポインタなど構造体と関連するポインタ・参照の活用について説明。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
3 ・関数のオーバーロードについて説明出来る。 ・オペレータ(演算子)のオーバーロードについて説明出来る。   ・関数のオーバーロードについて説明出来る。 ・オペレータ(演算子)のオーバーロードについて説明出来る。  
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
4 ・アクセスラベル(アクセス修飾子)を理解し説明出来る。 ・アクセスラベルを踏まえてクラス(class)と構造体の違いを説明出来る。  ・アクセスラベル(public/private)について説明。 ・アクセスラベルを含めたクラスの作成について説明。  
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
5 ・デフォルトコンストラクタについて説明出来る。 ・デストラクタについて説明出来る。 ・引数付きコンストラクタ、初期化子リストについて説明出来る。    ・デフォルトコンストラクタ、デストラクタについて説明。 ・引数付きコンストラクタの作成・注意点について説明。 ・初期化子リストについて説明。  
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
6 ・コピーコンストラクタについて説明出来る。 ・constオブジェクト、constメソッドについて説明出来る。  ・コピーコンストラクタについて説明。 ・constオブジェクト、constメソッドについて説明。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
7 ・default/deleteによるコンストラクタ/デストラクタの作成について説明出来る。 ・static,friendの効果・用途について説明出来る。  ・default/deleteによるコンストラクタ/デストラクタの作成について説明。  ・static,friendの効果・用途について説明出来る。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
8 ・前半の学習内容(第1~7回)を改めて整理・理解して  ゲームプログラミングなどのコーディングへ活用出来る。 ・中間テスト(第1~7回の内容が試験範囲)による学習結果の数値化が出来る。   ・第1~7回までの復習内容について説明。 ・第1~7回までの学習内容を利用した、ソースコードへの  活用事例・変化について説明。 ・実習時に中間テスト(第1~7回の内容が試験範囲)を実施。  
【理解度確認】実習時の提出課題の結果及び中間テストの結果にて確認が出来る。
9 ・public継承について説明出来る。 ・継承元クラスのprivate属性およびprotected属性について説明出来る。 ・private継承および包含について説明出来る。   ・public継承について説明。 ・継承元クラスのprivate属性およびprotected属性について説明。 ・private継承および包含について説明。   
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
10 ・仮想関数(virtual)について説明出来る。 ・仮想デストラクタについて説明出来る。   ・仮想関数(virtual)について説明。 ・デストラクタによるメモリリークの可能性および仮想デストラクタについて説明。 ・override,finalなど仮想関数と関連した用語について説明。  
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
11 ・純粋仮想関数について説明出来る。 ・抽象クラスについて説明出来る。    ・純粋仮想関数と仮想関数との比較について説明。 ・抽象クラスについて説明。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
12 ・簡単な関数テンプレート・クラステンプレートを作成出来る。  ・ダングリングポインタによる問題点を説明出来る。  ・テンプレート機能の基礎について説明。 ・new/deleteによるメモリの動的確保、およびその問題点について説明。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
13 ・スマートポインタの用途・メリットについて説明出来る。  ・用途に応じたスマートポインタの使い分けが出来る。  ・スマートポインタについて用途・メリットの概略について説明。  ・unique_ptr,shared_ptr,weak_ptrについてそれぞれ説明。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
14 循環参照とその対処方法について説明出来る。    shared_ptrによる循環参照、weak_ptrを使った対処方法をそれぞれ説明。   
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。
15 ・後半の学習内容(第9~14回)を改めて整理・理解して  ゲームプログラミングなどのコーディングへ活用出来る。  ・第9~14回までの復習内容について説明。 ・第9~14回までの学習内容を利用した、ソースコードへの  活用事例・変化について説明。 
【理解度確認】講義内の小テストおよび実習時の提出課題・結果にて確認が出来る。