シラバス参照

科目名 計算機科学4 
担当者氏名

許斐 豊

全開講対象学科 理工学部数学科
年次 3年次 
クラス  
講義学期 前期 
単位数
必選区分 選択科目 
学期・曜日・時限  
部門 専門教育部門-数学専門教育科目 
備考  



準備学習・事後学習
準備学習:各回の内容に関連する, 計算機科学I, II の C言語の復習.
事後学習:講義内容の確認をし, 毎回の課題にしっかり取り組むこと. 定期試験後は必要に応じて専任教員の研究室で別途対応する.
毎回、最低でも講義時間の2倍の自学自習が求められます。 
課題・定期試験に対するフィードバック
課題の講評等については学科計算機システム(Classroom 等)にて適宜対応する. 
履修上の留意
本講義は計算機科学3とのセットにして行うので, 計算機科学3の講義も履修すること. 
授業の概要と目的
情報端末の多様化などによる IoT 革命の急速な進展に対応できる情報処理技術者の育成が急務と言われている. 本講義では,「基本情報技術者試験」の出題範囲の中から,数学と関連のある題材を選び計算機科学の基礎理論を C++言語を使った実習を通して学ぶ. 2 年次で学んだ構造体を復習し, オブジェクト指向を使ったプログラム方法を習得すると同時に,「数学が情報科学分野でどのように利用されているか」について理解することを目的とする. 実習では, 簡単なデータベースプログラムを作成する. 作成したデータベースプログラムは, 情報検索の機能を追加するなどして, 情報システムの設計と管理についても学ぶ. 
アクティブ・ラーニング
実習,反転授業を取り入れて講義をする. 
該当するCP(カリキュラム・ポリシー)およびDP(ディプロマ・ポリシー)
本授業はCP2・4およびDP1・2に該当する 
実務経験と授業内容の関係
科目ナンバリングコード
SS31128 
サブタイトル
基本情報技術者試験プログラミング(コンピューター科学基礎分野プログラミング) 
到達目標
基本情報技術者試験における「コンピューター科学基礎分野」の基本知識と技能に係る内容を説明できる. 
授業計画
【項目欄】 【内容欄】
1. 数学科計算機室について  数学科で利用できる OS とこの講義で利用する Linux環境 における C++言語の利用方法について確認する. 
2. メモリー空間とオブジェクト1  メモリ空間の確認方法と簡単な実習
この講義で利用する Linux において, メモリー空間の確認方法を学ぶ. また, C++言語の基礎とオブジェクトの宣言方法について学ぶ. 
3. メモリー空間とオブジェクト2  基本オブジェクト型
メモリ空間を利用する変数として, C++で利用できる基本的なオブジェクト型について学ぶ. 
4. 標準テンプレートライブラリー  C++言語 の STL の基礎
vector<T> テンプレートクラスライブラリーを利用することで, C言語にはなかったテンプレートクラスの基礎を学ぶ. 
5. コピーと参照  コピーと参照
情報科学のコピーと参照の概念を C++言語 のコピーと参照を通して復習する. また, C++言語の関数のオーバーロード機能について学ぶ. 
6. オブジェクト指向プログラミング1  C++言語によるオブジェクト指向プログラミング1
一般的なオブジェクト指向プログラミング言語について概論し, オブジェクト指向プログラミング (OOP) の情報隠蔽機能の性質について学ぶ. 
7. クラスの基礎と文字列操作  stringクラスの基礎と文字列操作
string クラスを通して, クラス宣言の基礎を学び, C++言語の新しい for ループ(範囲 for文)を体験する. 
8. クラスの作成方法  記数法とクラスの作成
計算機科学3で学んだホーナーの方法を実現することを目的にして, C++言語におけるクラスの作成方法を学ぶ. 
9. 演算子と多重定義  演算子と多重定義
C++言語の演算子関数について基礎を学び, 自作クラスに演算子を定義する技能を身につける. 時間があれば, 数学の対象としての集合をクラスと考え, 必要な演算子を定義してみる. 
10. オブジェクト指向プログラミング2  クラスの継承
スーパークラスとサブクラスの基礎を学び, 9回目の講義で作成したクラスを継承することで, 計算機科学3 で学んだマスクビットを実現するクラスを作成する. 
11. オブジェクト指向プログラミング3  名前空間, 論理型
名前空間の概念と using ディレクティブの基礎について学ぶ. また, C++言語の論理型について学ぶ. 
12. C++標準クラスライブラリー1  テンプレートクラス, list<T>
テンプレートクラスの宣言の仕方について学び, C++標準テンプレートクラスの利用方法として, list<T>テンプレートクラスライブラリーの基礎を学び, データベース等で利用できる検索機能などにも触れる. 
13. C++標準クラスライブラリー2  stack<T,C> テンプレートクラス
2つのテンプレート引数をもつテンプレートクラスの例として, 計算機科学3 で学んだスタックを実現している stack<T,C> テンプレートクラスの基本的な利用方法を学ぶ. 
14. C++標準クラスライブラリー3  fstream クラスライブラリー
C++言語における, ファイルの入出力方法として fstream クラスの基礎について学ぶ. これらの標準クラスライブラリーと C++言語の機能を利用することで, 簡易文書入力プログラムが比較的容易に作成可能であることを体験する. 
15. C++言語によるオブジェクト指向プログラミングまとめ



総括と演習 
C++言語, OOP の復習
前回までに学んだ講義内容のまとめを行い, 章末問題について議論する. また, 必要に応じて追加の演習を行う. 
テキスト
【書籍名】 【著者】 【出版社】
1. 適宜資料を配布する     
参考文献
【書籍名】 【著者】 【出版社】
1. 適宜紹介する     
授業方法の形式
講義 
授業の実施方法
遠隔授業 
成績評価方法
平常点(レポート)30%と定期試験70%による総合評価.
平常点は毎回の演習課題の取り組み姿勢, 演習内容などから担当教員が総合的に判断する.
なお, 社会状況等により成績評価方法に変更を加えることもある. 
成績評価基準
C(合格)となるためには、到達目標を最低限達成することが必要である。 
受講生へのメッセージ
計算機についてさらに知識や能力を身につけたい場合や,基本情報技術者試験を考えている場合は受講するとよい.
講義時間中には完成しないプログラムや課題も出てくるので, 実習室の自由活用時間を有効活用して学習を進めて欲しい. 
参考URL
画像
ファイル
更新日時 2023/04/28 11:16


PAGE TOP