情報科学部Faculty of Computer and Information Sciences
COT111KA-CS-101b(計算基盤 / Computing technologies 100)プログラミング入門3Introduction 3 to Programming
小林 郁夫
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 情報科学部Faculty of Computer and Information Sciences |
添付ファイル名Attached documents | |
年度Year | 2023 |
授業コードClass code | J0430 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 秋学期授業/Fall |
曜日・時限Day/Period | 火2/Tue.2 |
科目種別Class Type | |
キャンパスCampus | 小金井 / Koganei |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | 1~4 |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | ○ |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) |
(1) 受講希望者 (受講検討中の者も含む) は、情報科学部学部Googleフォーム(https://forms.gle/ECvwxVe2NcxmrbTK9)で初回講義前までに希望申請をしてください。(※以下URLのご案内があるGoogleフォームとは異なるのでご注意ください。) (2) 以下のURLと教育開発支援機構事務局の案内に従って、履修希望の申請を行ってください。 https://www.hoseikyoiku.jp/risyu/index.html (3) 履修取消については、ご自身の所属学部の履修取消期間内に必ず同時に履修削除を行ってください。 |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
選択・必修Optional/Compulsory | |
カテゴリー(2022年度以降入学者)Category (2022~) | |
カテゴリー(2021年度以前入学者)Category (~2021) | |
カテゴリーCategory |
専門教育科目 専門科目 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
・In this course, students will learn advanced mechanisms in modern programming languages, such as mechanisms for object orientation, and also will experience data science programming.
・At the end of the course, students will understand basic usages for object orientation and other advanced language mechanisms in programing languages and also will experience programming required for data science and AI.
・Before each class meeting, students will be expected to solve exercises assigned as homework. Your required study time is at least four hours for each class meeting.
・Your overall grade will be decided based on the followings.
- mid- and end-term examinations (40%)
- assignments (60%)
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
プログラミング入門1,2で学んだ項目を基本として、さらに進んだプログラミング機構を学ぶともに、データサイエンス・AIのための基礎的なプログラミングを体験する。
到達目標Goal
・オブジェクト指向機構などの進んだプログラミング言語機構を利用できる。
・データサイエンスで必須となる諸技法の基礎を習得する。
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
情報科学部ディプロマポリシーのうち「DP3-1」と「DP4-3」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
・プログラミング言語としてPythonを用いて授業を進める。
・前半は、オブジェクト指向機構を中心に最近のプログラミング言語で多く用いられる言語機構を扱う。
・後半は、データサイエンスで必須となる諸技法の基礎を学ぶ。
・授業の各回では、プログラミングの課題が提示されるので、授業時間外に取り組む。
課題等の提出は「CIS moodle」を通じて行う。授業中に課題に対するフィードバックを行う。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
あり / Yes
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
1[対面/face to face]:導入
プログラム1,2の復習を行う。とくに関数、リスト、複合データ構造、 再帰呼び出しについて学ぶ
2[対面/face to face]:オブジェクト指向(1)(モデリング)
ラスを利用してオブジェクトを表現する方法を学ぶ。
クラス、インスタンス、メソッドなどのオブジェクト指向機構の基本を学ぶ。
3[対面/face to face]:オブジェクト指向(2) (オブジェクトコンポジション/ポリモーフィズム)
オブジェクトを組み合わせて複雑なオブジェクトを表現する方法を学ぶ
また、オブジェクトの参照と実体について学ぶ
4[対面/face to face]:オブジェクト指向(3)(継承)
コード再利用の効果的な手法である継承機構によって、複数の種類のオブジェクトを統一的に表現する手法を学ぶ。
5[対面/face to face]:ファイル処理と例外機構
ファイル処理の記述法および、実行中に起こる例外を扱う例外機構を学ぶ
6[対面/face to face]:高度な言語機構
効果的にプログラミングを進めるうえで欠かせない言語機構を紹介する
7[対面/face to face]:復習(1)
1~6の内容の復習を行う
8[対面/face to face]:データサイエンス基礎(1)
データサイエンスに有用なモジュールの紹介と、導入を行う
9[対面/face to face]:データサイエンス基礎(2)
オープンデータを利用したデータ分析の基礎を扱う
10[対面/face to face]:データサイエンス基礎(3)
データの可視化手法を学ぶ
11[対面/face to face]:データサイエンス基礎(4)
代表的な統計量の算出法について学ぶ
12[対面/face to face]:データサイエンス基礎(5)
基本的な仮説検定を扱う
13[対面/face to face]:データサイエンス基礎(6)
回帰分析の処理について学ぶ
14[対面/face to face]:復習(2)
8~13の内容の復習を行う。
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
準備学習として、前期のプログラミング入門1,2の内容を復習し、十分に理解を深めておくこと。授業後の学習では、各回で出題されるプログラミング問題およびレポート作成に取り組むこと。本授業の準備・復習等の授業時間外学習は、各週につき4時間を標準とします。
テキスト(教科書)Textbooks
オンライン資料あるいは講義配布資料。
参考書References
Pythonによるプログラミング、小林 郁夫、 佐々木 晃著、 オーム社、ISBN:9784274223570
たのしいプログラミング Pythonではじめよう!
Jason R.Briggs (著), 磯 蘭水 (翻訳), 藤永 奈保子 (翻訳), 鈴木 悠 (翻訳)
オーム社、2014
成績評価の方法と基準Grading criteria
成績は下記を総合して判断する
- 試験(中間、期末)40%
- 課題の取り組み 60%
学生の意見等からの気づきChanges following student comments
演習問題の解説時間をとる。
学生が準備すべき機器他Equipment student needs to prepare
貸与PCを利用する
その他の重要事項Others
特になし