学部・研究科Faculty/Graduate school | 情報科学部Faculty of Computer and Information Sciences |
添付ファイル名Attached documents | |
年度Year | 2024 |
授業コードClass code | J3001 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 春学期集中/Intensive(Spring) |
曜日・時限Day/Period | 集中・その他 |
科目種別Class Type | |
キャンパスCampus | 小金井 / Koganei |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | 1 |
単位数Credit(s) | 2 |
備考(履修条件等)Notes | |
他学部公開科目Open Courses | |
他学部公開(履修条件等)Open Courses (Notes) | |
グローバル・オープン科目Global Open Courses | |
成績優秀者の他学部科目履修制度対象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 | 専門教育科目 専門科目 |
【Outline (in English)】
[Course outline] Student can acquire basic knowledge of Node.js and JavaScript, which are popular framework and programming language to build Web systems.
[Learning Objectives] The student learns how they work and how they can be used them through the lectures and active learning activities. The student can also learn a basic usage of Git to manage source code.
[Learning activities outside of classroom] The student is required to study more than 4 hours for a lecture at home.
[Grading Criteria/Policy] The positive attendance to the class is evaluated as 40% of grade. The final submission of Web system is evaluated as 60% of grade.
【Default language used in class】
日本語 / Japanese
【授業の概要と目的(何を学ぶか) / Outline and objectives】
Webサーバの開発に必要になる Node.js や JavaScript の基礎知識を紹介します。動作の仕組みや適切な管理方法を学び、簡単な例題の実習を通して、その活用方法を学びます。また、ソースコードを管理する手法として、Git を利用したコード管理の方法についても学ぶことができます。
【到達目標 / Goal】
JavaScriptの基礎的な言語仕様を身に着けることができます。
Node.jsの特性を理解し、適切に用いたプログラムを書くことができるようになります。Gitを利用した基礎的なコード管理方法を身に着けることができます。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連) / 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. )
本講義は、講義資料による解説と、それに関連した演習課題の実習により構成されます。講義では、Node.js の基本構成や、基本的な構築手法を学びます。そして、演習では、実際に簡単な Webシステムを構築してもらうことを通して、詳細な記法を、具体的に体験してもらいます。
【アクティブラーニング(グループディスカッション、ディベート等)の実施 / Active learning in class (Group discussion, Debate.etc.)】
なし / No
【フィールドワーク(学外での実習等)の実施 / Fieldwork in class】
なし / No
【授業計画 / Schedule】
授業形態 / methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
回 / No. | 各回の授業形態予定 / methods of teaching | テーマ / Theme | 内容 / Contents |
---|---|---|---|
第1回 | 対面/face to face | Node.jsとは | 講義概要の説明を行い、Node.js の概要と特徴の紹介、開発環境のセットアップを行います。 |
第2回 | 対面/face to face | JavaScriptの基本文法 | JavaScript の基本的な書き方として、変数、演算子、データ型、オブジェクト、配列、ループについて学びます。 |
第3回 | 対面/face to face | JavaScriptとスコープ | JavaScript の関数、クラスの継承をスコープとともに学びます。 |
第4回 | 対面/face to face | GitとGitHubGitを使ったコード管理 | Gitの基本的な操作法、GitHubの利用法について、実践的に学びます。 |
第5回 | 対面/face to face | Node.jsのモジュールシステム | Node.js のモジュールの基本であるCommonJS/ECMAScript Modulesなどのモジュールの作成と利用と、Node.js のコアモジュールについて学びます。 |
第6回 | 対面/face to face | Node.jsにおける非同期処理 | Node.js に必要な非同期処理について、callback、Promise、async/await の利用方法を理解します。 |
第7回 | 対面/face to face | Node.jsにおける非同期処理2 | EventEmitter/Streamやエラーハンドリングについて学びます。 |
第8回 | 対面/face to face | ファイル操作 | ファイルの読み書き、ディレクトリの操作、非同期ファイルシステム操作について学びます。 |
第9回 | 対面/face to face | CLIツールの作成 | ターミナルで実行するソフトウェアの作成と実行方法を学びます。 |
第10回 | 対面/face to face | Webサービス開発基礎 | HTTPサーバー構築、Node.jsのコアモジュールのみの作成方法、フレームワークを利用した構築方法を学びます。 |
第11回 | 対面/face to face | ブラウザにおけるJavaScript | Node.jsとブラウザにおけるJavaScriptとの違いを学び、フロントエンド開発につなげます。 |
第12回 | 対面/face to face | データベース連携 | Node.jsからのデータベース利用方法について、学びます。 |
第13回 | 対面/face to face | 自由課題制作準備 | Webサービスやツールなど自由にソフトウェアを制作を行います。 |
第14回 | 対面/face to face | 自由課題制作 | 制作したWebサービスについて、その成果発表で学生間の情報共有を行います。 |
【授業時間外の学習(準備学習・復習・宿題等) / Work to be done outside of class (preparation, etc.)】
時間内に終了しなかった課題等は授業時間外に完了する必要があります。講義1回につき、4時間以上の授業時間外学習を必要とします。
【テキスト(教科書) / Textbooks】
https://gihyo.jp/book/2023/978-4-297-12956-9
【参考書 / References】
https://nodejs.org/
https://gihyo.jp/book/2023/978-4-297-12956-9
https://developer.mozilla.org/
https://jsprimer.net/
【成績評価の方法と基準 / Grading criteria】
講義・演習への参加度(40%)と、課題の達成状況(60%)により評価します。
【学生の意見等からの気づき / Changes following student comments】
本年度新規科目につきアンケートを実施していません
【学生が準備すべき機器他 / Equipment student needs to prepare】
MacOSまたはWSL環境を構築したWindowsOS, Linuxが搭載されたパソコン
ターミナルの実行環境
【その他の重要事項 / Others】
特になし