シラバス Syllabus

授業名 プログラミング入門
Course Title Introductory Computer Programming
担当教員 Instructor Name 長谷川 孔明(Komei Hasegawa)
コード Couse Code NUC142_N24A
授業形態 Class Type 講義 Regular course
授業形式 Class Format On Campus
単位 Credits 2
言語 Language JP
科目区分 Course Category 専門教育科目300系 / Specialized Subject 300
学位 Degree BSc
開講情報 Terms / Location 2024 UG Nisshin Spring Intensive

授業の概要 Course Overview

Misson Statementとの関係性 / Connection to our Mission Statement

コンピュータ・プログラミングはWebサービスやAI、データサイエンスの基礎であり、ビジネスとも深く関わっている。本講義では、プログラミングの基礎知識を学ぶことで、プログラマーや技術者と議論し理解ができるリーダーを目指す。
Computer programming is the foundation of web services, AI, and data science, and is deeply related to business. In this course, we aim to become leaders who can discuss and understand with programmers and engineers by learning the basic knowledge of programming.

授業の目的(意義) / Importance of this course

本講義では、プログラミング学習用の言語Scratchを用いて、プログラミングの基礎的な考え方を身につけることを目標とする。プログラミングの基礎知識をつけることにより、プログラマーや技術者と議論し理解ができるリーダーを目指す。
The goal of this course is to acquire basic knowledge of computer programming with Scratch which is a visual programming language for programming learners. We aim to become leaders who can discuss and understand with programmers and engineers by learning the basic knowledge of programming.

到達目標 / Achievement Goal

学生はインタラクティブ・コンテンツの作成を通じて、プログラミングの基礎を学習する。グループワークにより他者の作成したプログラムを読み解く能力を習得する。

Students learn the basic knowledge of computer programming by creating interactive content. The group activities enable the students to acquire skills for understanding programs developed by others.

本授業の該当ラーニングゴール Learning Goals

*本学の教育ミッションを具現化する形で設定されています。

LG1 Critical Thinking
LG4 Effective Communication

受講後得られる具体的スキルや知識 Learning Outcomes

変数、配列、関数といったプログラミングの基礎用語と、それの表す概念を対応付けられる。
複数のプログラミングの要素や機能を統合して、自身の想定した一つのプログラムとして動作させられる。

Be able to map basic programming terms such as variables, arrays, and functions to the concepts they represent.
Be able to integrate multiple programming elements and functions into a single program of your own design.

SDGsとの関連性 Relevance to Sustainable Development Goals

Goal 4 質の高い教育をみんなに(Quality Education)

教育手法 Teaching Method

教育手法 Teaching Method % of Course Time
インプット型 Traditional 50 %
参加者中心型 Participant-Centered Learning ケースメソッド Case Method 50 %
フィールドメソッド Field Method 0 %
合計 Total 100 %

事前学修と事後学修の内容、レポート、課題に対するフィードバック方法 Pre- and Post-Course Learning, Report, Feedback methods

授業中にプログラミングの課題を出題する。課題の一部は、講師もしくはクラスメイトからのフィードバックを受ける。
最終課題としてプログラミング作品を提出する。期末試験として、プログラミングに関する問題と、最終課題で自身が制作したプログラミング作品に関して、使用した技術や作品のコンセプトについて記述する。
講義中に制作したプログラム作品に関して、翌日の講義での一部を取り上げ解説や評価を行い、学生間でも相互評価することによりフィードバックを行う。
本講義ではプログラミング言語としてScratch( https://scratch.mit.edu/ )を使用する。Scratchでは一般公開されているプログラミング作品が多数ある。準備学習として、それらの作品を鑑賞したり遊んでおくことを推奨する(60分程度)。
中央情報センター(図書館)には参考図書が所蔵されているため、積極的な使用を推奨する。

授業スケジュール Course Schedule

第1日(Day1)

1日目 ガイダンス、Scratchの使い方、逐次処理、画像・音の出力、繰り返し、アニメーションの作成
ガイダンスでは本講義の進め方と課題について説明する。講義形式にてプログラミングが現在どのような場面で何のために使われているか、どのような種類と特徴があるのかといったプログラミングの基礎知識を学習する。
本講義で題材とするプログラミング言語Scratchの基本的な使い方を、演習を交えて学習する。
プログラミングの基礎として、逐次処理、画像・音の出力、繰り返しの処理について学ぶ。
上記で学習した要素を用いて、アニメーション作成の課題を行い理解を深める。

●使用するケース
本講義はケースメソッドに適さず、その代わりのアクティブラーニングとして自身でプログラミングを行うこととするため、この欄は省略する。

第2日(Day2)

2日目 マウス・キーボード入力、変数、演算、条件分岐、データ型、インタラクティブ作品の製作
マウス・キーボード入力により、ユーザからの入力を受け付けるプログラムを作成する。
プログラミングに必須である変数について学ぶ。
より複雑な処理として、演算、条件分岐、データ型について学習する。
入力、変数、演算、条件分岐といった要素を用いて、ゲームなどのインタラクティブ作品を制作する課題を行う。

第3日(Day3)

3日目 ブロック(関数)、リスト(配列)、合計・探索・ソートアルゴリズム
一連の処理のかたまりを定義する関数の作成と利用について学ぶ。
配列の考え方を学習し、それを応用して合計値や平均値を計算するプログラムを作成する。
配列の中から最大値を探索するアルゴリズム、配列の値を降順にソートするといったアルゴリズムについて学ぶ。
クローンの機能から、クラスとインスタンスの概念について学習する。

第4日(Day4)

4日目 クローン(クラスとインスタンスの概念)、最終課題での作品制作
クローンの機能から、クラスとインスタンスの概念について学習する。
いままで学習してきた技術を用いて、最終課題として作品制作を行う。

第5日(Day5)



第6日(Day6)



第7日(Day7)



成績評価方法 Evaluation Criteria

*成績は下記該当項目を基に決定されます。
*クラス貢献度合計はコールドコールと授業内での挙手発言の合算値です。
講師用内規準拠 Method of Assessment Weights
コールドコール Cold Call 0 %
授業内での挙手発言 Class Contribution 0 %
クラス貢献度合計 Class Contribution Total 0 %
予習レポート Preparation Report 0 %
小テスト Quizzes / Tests 60 %
シミュレーション成績 Simulation 0 %
ケース試験 Case Exam 0 %
最終レポート Final Report 0 %
期末試験 Final Exam 30 %
参加者による相互評価 Peer Assessment 10 %
合計 Total 100 %

評価の留意事項 Notes on Evaluation Criteria

小テストとして、授業中にプログラミング課題を出題する。
また、学生間で、作成したプログラムに関する相互評価を行う。
最終課題としてプログラミング作品を制作する。
期末試験として、プログラミングに関する問題と、最終課題で自身が制作したプログラミング作品に関して、使用した技術や作品のコンセプトについて記述する。

使用ケース一覧 List of Cases

    ケースは使用しません。

教科書 Textbook

  • 中植 正剛, 太田 和志, 鴨谷 真知子「「Scratchで学ぶ プログラミングとアルゴリズムの基本 改訂第2版」」日経BP社(2019)9784822286170

参考文献・資料 Additional Readings and Resource

Scratch Tips, https://scratch.mit.edu/ideas
tips :: tosh, https://tosh.tjvr.org/help/tips/
松下 孝太郎, 山本 光, 親子でかんたん スクラッチプログラミングの図鑑 【Scratch 3.0対応版】, 技術評論社 (2019/7/16), ISBN-13: 978-4297106867
阿部 和広, 杉浦 学, Scratchではじめよう! プログラミング入門 Scratch 3.0版, 日経BP (2019/11/23), ISBN-13: 978-4822286255
角田 一平, 若林 健一, とがぞの, 砂金 よしひろ, 高村 みづき, その他, CoderDojo公式ブック Scratchでつくる!たのしむ!プログラミング道場 改訂第2版 Scratch3.0対応, ソーテック社 (2019/5/23), ISBN-13: 978-4800712387

授業調査に対するコメント Comment on Course Evaluation

昨年度の実施経験と授業調査のコメントから、演習や課題の難易度を調整して改善していきます。

担当教員のプロフィール About the Instructor 

豊橋技術科学大学 情報・知能工学系 助教
博士(工学) (筑波大学)

人と人工物のインタラクションの仕組みのデザインや、人と人とのコミュニケーションを支援するシステムの研究を行っています。 Human-Agent Interaction(HAI)やHuman-Robot Interaction(HRI)が専門分野です。 インタフェースや認知科学の分野にも興味があります。

Assistant professor, Department of Computer Science and Engineering, Toyohashi University of Technology
Ph.D. in Engineering (University of Tsukuba)

I'm researching interaction design between humans and artificial agents, and supporting system for human-human communication. My research interests include Human-Agent Interaction (HAI) and Human-Robot Interaction (HRI). I'm also interested in Human Interface and Cognitive Science.







ページ上部へ戻る