情報科学部Faculty of Computer and Information Sciences
OTR100KA-CS-191(その他 / Others 100)プロジェクト(春)Project
佐々木 晃Akira SASAKI
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 情報科学部Faculty of Computer and Information Sciences |
添付ファイル名Attached documents | |
年度Year | 2022 |
授業コードClass code | J0604 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 春学期授業/Spring |
曜日・時限Day/Period | 金3/Fri.3 |
科目種別Class Type | |
キャンパスCampus | 小金井 / Koganei |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | |
単位数Credit(s) | 1 |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) | |
実務経験のある教員による授業科目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 choose their own theme related to programming languages, make their plan and run their project by themselves.
・At the end of the course students will realize a language processor or complete their project related to programming languages
・Before and after each class meeting, students will be expected to proceed their projects, e.g. prototyping, designing, developing applications and making presentations or reports etc.
・Grading will be decided based on mid-term presentation(40%), term-end presentation (60%) and in-class contribution (partly).
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
プログラミング言語やその処理系に関連するテーマを各自で設定し、設計実装を通じて、この分野の研究の一端を体験する。プログラミング言語は、人間がコンピュータとコミュニケーションするための「言葉」であり、すなわち「架け橋」である。人間は、コンピュータにさせたい仕事の内容をプログラミング言語で伝える。そして、コンピュータはこの「言葉」があって初めて人間の役に立つように動くことが可能となる。プログラミング言語は、情報化社会において不可欠なツールであり、プログラミング処理系は、基本的かつ重要なソフトウェアアプリケーションである。
到達目標Goal
選択するテーマによって下記のいずれかが目標となる。
(1) プログラムを処理する「プログラミング言語処理系」を作成できる。あるいは、プログラミング言語処理の一端を体験する。
(2) 用途を限定した「ドメイン特化型言語」によるプログラミングが行える。
(3) 自分でテーマを定め、プログラミング言語や言語処理系に関連したプロジェクトを遂行できる。
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
ディプロマポリシーのうち「DP2」と「DP4-1」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
計算機言語処理系またはこれに関連するアプリケーションの設計と開発を行う。基本的には各自の能力に応じて、半期で実装を完了できるテーマを与える。テーマの例は、以下の通り。
・簡単な計算機言語処理系(コンパイラ、インタプリタ(バーチャルマシン(VM))、トランスレーターなど)
・計算機言語処理系の開発環境(デバッガ、言語指向エディタなど)
その他、この分野に関して各自で興味のあるテーマを設定してもよい。テーマは幅広い内容から選ぶことができる。
受講生は、授業中に進捗等の発表を行い、フィードバックを受ける。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
あり / Yes
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
1[対面/face to face]:ガイダンス
計算機言語やその処理系の概要について説明する。また、本講義ではいくつかのコース(言語処理系の実装の他、シミュレーション言語の実習など)を設けるため、各コースの概要について説明する。また、各自で設定したテーマのアプリケーションを作成することもできる
2[対面/face to face]:テーマ選び
第3回以降、各テーマごとにコース別に演習形式で進むため、コースあるいはテーマを決定する
3[対面/face to face]:初期設計
演習はプログラミングが中心となる。まず、作成するプログラム、アプリケーションに関して、基本的なプログラムの設計を理解する。
4[対面/face to face]:プロトタイプ作成(1)
プロトタイプ(試作プログラム)の作成を行う。プロトタイプは、本番の実装に入る前に試験的に、重要な部分の動作を確認するために行うプログラミングである
5[対面/face to face]:プロトタイプ作成(2)
引き続きプロトタイプシステムの作成を行う。
6[対面/face to face]:プロトタイプ作成(3)
プロトタイプシステムの完成とテストを行う。
7[対面/face to face]:中間報告
作成したプロトタイプに関して報告する。
8[対面/face to face]:設計
作成したプロトタイプを基に、問題点や改善点を見い出し改めて設計を行う。
9[対面/face to face]:実装(1. 基本ルーチンの作成)
プログラムおよびモデルをの完成を目指す。設計およびプロトタイプに基づき、実際のプログラムのコーディングを行う。
10[対面/face to face]:実装(2)
部分的なプログラムおよびモデルの作成
11[対面/face to face]:実装(3)
プログラムの基礎部分の完成
12[対面/face to face]:実装(4)
プログラムの拡張
13[対面/face to face]:プログラムテストおよび評価
作成したアプリケーションのプログラムテストおよび動作の評価を行う
14[対面/face to face]:発表会(評価および報告)
開発した内容についての報告を行う
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
設定したテーマに基づきプログラミングに取り組む。本授業の準備・復習等の授業時間外学習は、各週につき4時間を標準とします。
テキスト(教科書)Textbooks
講義資料(必要に応じて)
参考書References
テーマに応じて適宜指定する、書籍、論文、雑誌、WEBサイトなど
成績評価の方法と基準Grading criteria
課題への取り組みを評価する。報告(中間(40%)および最終(60%))によって判断する。平常授業における参加度を一部加味する.
学生の意見等からの気づきChanges following student comments
質問の時間をより多く取る。メンバー間での議論の機会を増やす。
学生が準備すべき機器他Equipment student needs to prepare
あり:貸与ノートPC、学習支援システム、ネットワーク接続
その他の重要事項Others
計算機言語処理系は、基本的かつ重要なソフトウェアアプリケーションである。本テーマを選択する学生には、自主的に課題に取り組む姿勢を期待する。