学部・研究科Faculty/Graduate school | 情報科学部Faculty of Computer and Information Sciences |
添付ファイル名Attached documents | |
年度Year | 2024 |
授業コードClass code | J0427 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | プログラミング入門 |
開講時期Term | 春学期後半/Spring(2nd half) |
曜日・時限Day/Period | 水1,水2/Wed.1,Wed.2 |
科目種別Class Type | |
キャンパスCampus | 小金井 / Koganei |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | 1~4 |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | Dクラス |
他学部公開科目Open Courses | |
他学部公開(履修条件等)Open Courses (Notes) | |
グローバル・オープン科目Global Open Courses | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | ○ |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) | 【(情報科学部所属以外の学生向け)「成績優秀者の他学部科目履修制度」の履修登録の流れ】 (1) 受講希望者 (受講検討中の者も含む) は、初回の授業までに「申請フォーム(https://forms.gle/ECvwxVe2NcxmrbTK9)」から履修したい科目を申請してください。 (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 |
【Outline (in English)】
The aim of this course is to learn the fundamentals of computing in Python. Python is a dynamic object-oriented programming language that is easy to learn and has been used for web development, software development and so on.
At the end of the course, students are expected to be able to write small programs in Python that use file Handling, data modeling, graphics and interactive systems.
Before/after each lecture, students will be expected to spend eight hours to understand the course content and write program for exercises.
Final grade will be calculated according to the term-end examination (90%) and in class contribution (10%).
【Default language used in class】
日本語 / Japanese
【授業の概要と目的(何を学ぶか) / Outline and objectives】
コンピュータやコンピュータソフトウェアは様々な場面で我々に深く関わっていて、これらの技術なしには現代の情報化社会は成り立ちません。本授業ではコンピュータソフトウェアを実際に作るために必要となるプログラミング技術の基本を学びます。その中でも「コンピュータが行う情報処理の基本型」を学ぶことが重要なテーマとなります。
【到達目標 / Goal】
本講義の目標は、情報科学を学ぶ上で欠かせない「プログラミング」技術の基礎(後半)を習得することです。プログラミングとは、プログラミング言語(本講義では「プログラミング言語Python」)という言葉を使って、コンピュータに行わせたい作業の内容を伝える技術です。従って、この「プログラミング言語」という新しい言葉をマスターして「コンピュータと自由に会話ができる」「思い通りに作業を指示できるようになる」ことが大きな目標です。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連) / 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. )
プログラミング技術の基礎の習得は、プログラミング言語という新しい言語を習得することでもあります。したがって、必要となる学習の方法は、新しい外国語を学習していくプロセスに似ています。そこで、各講義は、「説明」「演習」「課題」に分かれます。
各講義の前半では主に、
(A) 新しく学ぶ文法や機能などの知識の「説明」をします。さらに、
(B) (A)で学んだことを利用して、実際にプログラミングを「演習」として行ってもらいます。プログラミングは、プログラム(文章)を書くことでもありますが、「このようなプログラムの書き方で、コンピュータがこのように動いてくれる」ということを体感します。
各講義の後半では、
(C)「課題」として出題されるプログラムを実際に作ってもらうことで、プログラミング技術の体得を目指します。課題によっては、レポートとして提出してもらうものもあります。なお、課題はいくつかのテーマごとにコースに分かれて用意されているので、各自興味をもったテーマを選択し取り組むことができます。
課題に対するフィードバックとして、教員やTAからのレビューや学生の相互レビューにより課題の理解を深めるものとする。また、提出課題の内容が基準に満たない場合には再提出を促す等により、確実に理解を深めて基礎的な知識を積み上げていく。
【アクティブラーニング(グループディスカッション、ディベート等)の実施 / Active learning in class (Group discussion, Debate.etc.)】
あり / Yes
【フィールドワーク(学外での実習等)の実施 / Fieldwork in class】
なし / No
【授業計画 / Schedule】
授業形態 / methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
回 / No. | 各回の授業形態予定 / methods of teaching | テーマ / Theme | 内容 / Contents |
---|---|---|---|
1 | 対面/face to face | ファイル操作 | プログラム内で利用するための、ファイルの作成、読み込み方法を学ぶ。 |
2 | 対面/face to face | 複合データ | 複数のデータをひとかたまりの形で扱うための機構について学ぶ。データを統一的に処理する際に必要となる。 |
3 | 対面/face to face | 第1回から2回の総括 | 各回で学んだ内容をより深めるとともに、それらを組み合わせたプログラミングを学ぶ。 |
4 | 対面/face to face | 応用(1)―タートルグラフィックスで幾何学模様 | 幾何学模様を描くプログラムを作成してみる。 |
5 | 対面/face to face | 対話ループ | 対話型プログラムについて学ぶ。 |
6 | 対面/face to face | 応用(2)―Tkを利用したレンダリング | 初歩的なレンダリングのプログラムを作成してみる。 |
7 | 対面/face to face | 総括―内容の復習と実際的なプログラムの作成 | これまで学んできた内容の復習を行う。また、これらを用いた実際的なプログラムの作成にチャレンジする。 |
【授業時間外の学習(準備学習・復習・宿題等) / Work to be done outside of class (preparation, etc.)】
事前学習として、オンライン資料を熟読し、予習課題に取り組む。講義後は、プログラミング課題に取り組み完成させる。本授業の準備・復習時間は、計8時間を標準とします。
【テキスト(教科書) / Textbooks】
たのしいプログラミング Pythonではじめよう!
Jason R.Briggs (著), 磯 蘭水 (翻訳), 藤永 奈保子 (翻訳), 鈴木 悠 (翻訳)
オーム社、2014
【参考書 / References】
みんなのPython 第3版
柴田 淳 (著)
ソフトバンククリエイティブ、2012
【成績評価の方法と基準 / Grading criteria】
全課題を提出することを単位の必要条件とする。
期末試験を実施し、理解度を評価する。
成績は、期末(90%)試験と課題の取組/提出状況(10%)により、総合的に判断する。
【学生の意見等からの気づき / Changes following student comments】
特になし
【学生が準備すべき機器他 / Equipment student needs to prepare】
あり:講義は情報教室での実施になります。また、予習、復習、講義中に終了しない課題などについては、各自貸与ノートPCを利用し取り組むことを前提とします。
【その他の重要事項 / Others】
1年生の段階では、コンピュータを自由に操ること=プログラミングと考えてよいでしょう。コンピュータに操られるのでなく、コンピュータを自由に操ることを目標にしましょう。プログラミングは、言葉を扱うことに似ています。したがって使うことが一番重要となります。つまずきがあったら講師やTAに相談してください。本学部で学ぶ全講義は「プログラミング」が全ての基礎であるといっても過言ではなく、本講義の内容を深く理解し習得することはとても重要です。