学部・大学院区分
Undergraduate / Graduate
情報学部
時間割コード
Registration Code
1001029
科目区分
Course Category
専門科目(コンピュータ科)
関連専門科目(自然,人社)
科目名 【日本語】
Course Title
オブジェクト指向言語及び演習
科目名 【英語】
Course Title
Lecture and Exercise of Object Oriented Programming
コースナンバリングコード
Course Numbering Code
SIS-13-3002-J
担当教員 【日本語】
Instructor
出口 大輔 ○ 森 健策 小田 昌宏
担当教員 【英語】
Instructor
DEGUCHI Daisuke ○ MORI Kensaku ODA Masahiro
単位数
Credits
1
開講期・開講時間帯
Term / Day / Period
春2期 月曜日 3時限
Spring2 Mon 3
対象学年
Year
2年
2
授業形態
Course style
講義及び演習
開講系(学部)・開講専攻(大学院)
Subject
CS共通
必修・選択
Required / Selected
CS必修


授業の目的 【日本語】
Goals of the Course(JPN)
オブジェクト指向プログラミングの基礎知識ならびにプログラミング技法を学ぶ。C++言語を用いた演習を通して,オブジェクト指向プログラミングによる実践的な問題解決方法を習得することを目的とする。
授業の目的 【英語】
Goals of the Course
In this course, students learn fundamentals and techniques of object-oriented programming. Through practices using C++, students acquire the way to solve practical problems with object-oriented programming.
到達目標 【日本語】
Objectives of the Course(JPN)
C++言語によるオブジェクト指向言語の学修を通じて,オブジェクト指向の概念(カプセル化,継承,多態性,ダイナミックバインディング)について学ぶとともに,制御構造,関数,配列,構造体,各種入出力といった手続き型プログラミングにおける基礎的事項との関係性について理解する。発展的な内容として,標準テンプレートライブラリ(STL)などの活用法について学ぶ。そして,オブジェクトを取り扱う仕組み,オブジェクトを管理する仕組みなどを実際の言語に触れることで学修する。
到達目標 【英語】
Objectives of the Course
In this course, students learn concepts of object-oriented programming (encapsulation, inheritance, polymorphism, dynamic binding) through the study of object-oriented language using C++, and also understand the relationships with the fundamentals of procedural programming such as control flow, function, array, structure, and input and output. As an advanced content, they learn the way to use Standard Template Library (STL). Also, the mechanism of handling and managing objects are learned through practices using C++.
授業の内容や構成
Course Content / Plan
オブジェクト指向プログラミングの基礎として,オブジェクト指向の概念(カプセル化,継承,多態性,ダイナミックバインディング)について学ぶ。C++言語を用いた演習を通して,オブジェクト指向の概念を具体化するためのプログラミング技法について習得するとともに,手続き型プログラミングにおける制御構造,関数,配列,構造体,各種入出力といった基礎的事項との関係性について理解する。発展的な内容として,標準テンプレートライブラリ(STL)などの活用方法について学ぶ。

1. ガイダンス
2. クラス,ポインタ,参照
3. 継承
4. 仮想関数
5. 多重定義
6. 関数オブジェクト
7. テンプレート,STL
8. オブジェクト指向プログラミングプロジェクト
In this course, students learn concepts of object-oriented programming (encapsulation, inheritance, polymorphism, dynamic binding). Through exercises using C++, students try to acquire programming techniques to implement those concepts, and also try to understand the relationships with the fundamentals of procedural programming such as control flow, function, array, structure, and input and output. As an advanced content, they learn the way to use Standard Template Library (STL).

1. Guidance
2. Class, Pointer, Reference
3. Inheritance
4. Virtual function
5. Override
6. Functor
7. Template, STL
8. Exercises of object-oriented programming
履修条件・関連する科目
Course Prerequisites and Related Courses
履修条件は要さない。
成績評価の方法と基準
Course Evaluation Method and Criteria
講義毎に与える演習課題(出席点を含む)の評価50%,プログラミングプロジェクト課題50%,合計100点満点で60点以上を合格とする。
教科書・参考書
Textbook/Reference book
LMSを通してスライド,教材資料,演習課題を配付する。参考資料は適宜紹介する。
課外学習等(授業時間外学習の指示)
Study Load(Self-directed Learning Outside Course Hours)
講義で説明した内容に関する課題を適宜宿題として与える。
授業開講形態等
Lecture format, etc.
遠隔授業(オンデマンド型)で行う場合の追加措置
Additional measures for remote class (on-demand class)