情報処理Ⅱ

科目基礎情報

学校 有明工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 情報処理Ⅱ
科目番号 0015 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 創造工学科(エネルギーコース) 対象学年 3
開設期 通年 週時間数 前期:1 後期:1
教科書/教材 「Processingをはじめよう」;Casey Reas,Ben Fry 著 船田 巧 訳/オライリー・ジャパン
担当教員 尋木 信一

到達目標

1.Processingを利用したプログラミングを行うことができる
2.ソフトウェアの設計から開発までの流れを理解できる
3.基本的なアルゴリズムとデータ構造が理解できる

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1発展的な問題の解法を考え,解決手順を論理的に説明できる.基本的な問題の解法を考え,解決手順を論理的に説明できる.問題の解法を論理的に説明することができない.
評価項目2Processingを用いて,発展的なプログラミングを行うことができる.Processingを用いて,基本的なプログラミングを行うことができる.Processingによるプログラムを書くことができない.
評価項目3基本的なアルゴリズムとデータ構造それぞれにおいて,その特徴や違いを説明できる.基本的なアルゴリズムとデータ構造の種類を説明できる.基本的なアルゴリズムとデータ構造の種類を説明できない.

学科の到達目標項目との関係

学習・教育到達度目標 B-1 説明 閉じる
学習・教育到達度目標 B-4 説明 閉じる

教育方法等

概要:
本科目では,実際のプログラミングの基礎について講義する.特に,Processing言語によって,基本的なプログラムの作成ができることを目標とする.また,これまで主にプログラミング言語について学んできたが,授業の後半ではソフトウェア開発の一連の流れを経験することで基本的な知識を習得することを目標とする.
授業の進め方・方法:
授業の前半では,プログラミングの基礎やProcessingの概要などを説明するため,座学を中心に行う.後半は,実際にコンピュータ室により演習を中心に行う.特に,グループでソフトウェアの設計から開発を行うことで,実際のソフトウェアによるモノ創りを学ぶ.限られた授業時間内では十分な技術は身につかない.授業中に出す課題を中心に,休み時間や放課後を利用して積極的に演習を行うことで理解を深める必要がある.
注意点:
1年次の情報リテラシーIおよび2年次の情報リテラシーIIで学ぶ基礎的知識を前提とする.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 これまでの復習 配列や関数を使うことができる.
2週 クラスとオブジェクト1 クラスの概念を理解し,説明できる.
3週 クラスとオブジェクト2 クラスの定義のやり方を理解し,説明できる.
4週 クラスとオブジェクト3 オブジェクトを理解し,クラスとオブジェクトの関係を説明できる.
5週 クラスとオブジェクト4 クラスを用いたプログラムを作成できる.
6週 プログラミング演習4 これまでの知識を使って,発展的なプログラムを作成することができる.
7週 プログラミング演習5 これまでの知識を使って,発展的なプログラムを作成することができる.
8週 【中間試験】
2ndQ
9週 移動,回転,伸縮 ビジュアル表現を豊かにするために,基本的な座標変換について理解し,説明できる.
10週 運動の表現1 物理現象をシミュレーションするための数学的アルゴリズムを理解し,説明できる.
11週 運動の表現2 重力,放物線,ばね,振り子をプログラミングで表現できる.
12週 データの視覚化1 データの視覚化の実例とデータフォーマットについて理解し,説明できる.
13週 データの視覚化2 オープンデータを可視化するプログラムを作成できる.
14週 プログラミング演習6 これまでの知識を使って,発展的なプログラムを作成することができる.
15週 期末試験
16週 テスト返却と解説
後期
3rdQ
1週 データ構造とアルゴリズム データ構造とアルゴリズムの関係を理解し,基本的なデータ構造とアルゴリズムの種類を説明できる.
2週 基本データ構造1 リスト(単方向,双方向,環状)構造,およびスタック構造を理解できる.
3週 基本データ構造2 スタック構造を利用した関数呼び出しの仕組みについて理解できる.二分木構造について理解できる.
4週 探索アルゴリズム1 線形探索,二分探索について理解できる.
5週 探索アルゴリズム2 ハッシュ法について理解できる.
6週 ソーティングアルゴリズム1 交換法,選択法,挿入法について理解できる.
7週 ソーティングアルゴリズム2 バブルソート,クイックソートについて理解できる.
8週 【中間試験】
4thQ
9週 Robocodeの解説 ソフトウェアによるモノ創りを学び,その一つの具体例として,Robocodeによるソフトウェアの設計から開発までの流れを理解できる.
10週 Robocodeの利用法 Robocodeシステムの操作方法を理解できる.
11週 Robocodeによるロボット設計 Robocodeにおけるロボットの仕組みを理解し,設計書を作成する.
12週 Robocode によるモノ創り演習2 設計書に従って,ロボットの開発(プログラミング)を行い,設計書に近い形で実現することができる.
13週 Robocodeによる競技(予選会) Robocodeによる競技大会(予選)を行い,設計したロボットの改善点を見つけることができる.
14週 ロボットの改良 見つけた改善点を実現するためのプログラムを実装できる.
15週 Robocodeによる競技(本選) Robocodeによる競技大会(本選)を行い,設計したロボットの勝因や敗因を理解し,改善点を見つけることができる.
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。3後1,後2,後3,後4,後5,後6,後7
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。3後11
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。3後12
分野横断的能力汎用的技能汎用的技能汎用的技能他者の意見を聞き合意形成することができる。3後11
合意形成のために会話を成立させることができる。3後11
グループワーク、ワークショップ等の特定の合意形成の方法を実践できる。3後11
課題の解決は直感や常識にとらわれず、論理的な手順で考えなければならないことを知っている。3後11
どのような過程で結論を導いたか思考の過程を他者に説明できる。3後11
適切な範囲やレベルで解決策を提案できる。3後11
事実をもとに論理や考察を展開できる。3後11
態度・志向性(人間力)態度・志向性態度・志向性周囲の状況と自身の立場に照らし、必要な行動をとることができる。3後12
自らの考えで責任を持ってものごとに取り組むことができる。3後12
目標の実現に向けて計画ができる。3後12
目標の実現に向けて自らを律して行動できる。3後12
チームで協調・共同することの意義・効果を認識している。3後13
チームで協調・共同するために自身の感情をコントロールし、他者の意見を尊重するためのコミュニケーションをとることができる。3後13
当事者意識をもってチームでの作業・研究を進めることができる。3後13
チームのメンバーとしての役割を把握した行動ができる。3後13

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合60000400100
基礎的能力4000020060
専門的能力2000020040
分野横断的能力0000000