プログラミングⅢ

科目基礎情報

学校 明石工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 プログラミングⅢ
科目番号 0021 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 2
開設学科 電気情報工学科(情報工学コース) 対象学年 4
開設期 通年 週時間数 2
教科書/教材 立木秀樹、有賀妙子著:「すべての人のためのJavaプログラミング(第3版)」, 共立出版
担当教員 佐村 敏治,奥村 紀之

到達目標

Java 言語の講義と実習を通じて、次の事項を習得することを目標とする。
1)Java 言語の基本的な文法とJava 言語固有の文法を説明できる
2) オブジェクト指向プログラミングの考え方が理解できる
3) 与えられた問題からアプリケーションが作成できる
4) プログラミングにより問題解決ができる

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1Java 言語の基本的な文法とJava 言語固有の文法を丁寧に説明できるJava 言語の基本的な文法とJava 言語固有の文法を説明できるJava 言語の基本的な文法とJava 言語固有の文法を説明できない
評価項目2オブジェクト指向プログラミングの考え方が実例を挙げて理解できるオブジェクト指向プログラミングの考え方が理解できるオブジェクト指向プログラミングの考え方が理解できない
評価項目3与えられた問題から最適なアプリケーションが作成できる与えられた問題からアプリケーションが作成できる与えられた問題から最適なアプリケーションが作成できない
評価項目4プログラミングにより自力により問題解決ができるプログラミングにより調べることで問題解決ができるプログラミングにより問題解決ができない

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

学習・教育到達度目標 (D) 説明 閉じる
学習・教育到達度目標 (F) 説明 閉じる
学習・教育到達度目標 (G) 説明 閉じる

教育方法等

概要:
プログラミングは計算機科学において不可欠な基礎技術である。そしてプログラミングを通じて問題を解決していく姿勢を早い時期に身につけていくことが情報系の学生には求められる。本授業では、プログラミング言語Java 言語を用いて、プログラミングによって問題解決できる能力を身につける。また現在のソフトウエア設計において重要である、オブジェクト指向の概念を身につける。
授業の進め方・方法:
最初に教科書に基づいた講義を行う。次に理解確認のために小テストを行う。理解が深まったら実習室にて出題した演習問題からプログラミングを行う。最後の数週間は課題を出題し、グループでプログラミングを行う。
注意点:
プログラミングIとプログラミングIIで学習したC 言語を復習しておくこと。毎日プログラミングを行う習慣を身につけること。
目標を達成するためには、定期試験以外に、授業の確認用の小テストや演習問題および課題制作を行う必要がある。
合格の対象としない欠席条件(割合) 1/4以上の欠課

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 Java言語の基礎知識、開発手順 Java 言語の特徴について説明することができる。Java 開発手順を何も見ないで行うことができる。
2週 タートルグラフィックス、命名規則 タートルグラフィックスの簡単なプログラムを実行できる。クラス、メソッド、フィールドに命名規則に従って命名できる。
3週 コンストラクタ、メソッド多重定義、返値を持つメソッド、インスタンス変数
コンストラクタ、メソッド多重定義、返値を持つメソッド、インスタンス変数を用いた演習問題を解くことができる。
4週 JavaAPI仕様、クラス変数、クラスメソッド JavaAPI仕様を参考にプログラムを作成できる。クラス変数、クラスメソッドを説明でき、これらを用いた演習問題を解くことができる。
5週 クラス定義,クラス継承 クラスを自分で定義できる。オブジェクト指向によるクラス継承を行うことができる。
6週 クラス多重定義,インスタンス変数,パッケージ,アクセス修飾子,カプセル化 クラス多重定義、インスタンス変数を自分で定義できる。アクセス修飾子の違いについて使い分けることができる。
7週 演習(1) Javaを用いた演習問題を出題するので、自力でプログラムを作成できる。
8週 中間試験
前期1週から7週までを理解できる。
2ndQ
9週 コンストラクタ,クラス変数,クラスメソッド,内部クラス コンストラクタ、クラス変数、クラスメソッド、内部クラスについて理解し、プログラムを作成できる。
10週 1次元配列,初期値を持った配列,可変長引数,拡張されたfor文 1次元配列,初期値を持った配列,可変長引数,拡張されたfor文について理解し、プログラムを作成できる。
11週 多次元配列,mainの引数 多次元配列、mainの引数を理解し、プログラムを作成できる。
12週 標準入出力、ラッパークラス、ガーベッジコレクション 標準入出力、ラッパークラス、ガーベッジコレクションについて理解し、プログラムを作成できる。
13週 演習(2) Javaを用いた演習問題を出題するので、自力でプログラムを作成できる。
14週 例外処理 例外処理を理解し、プログラムを作成できる。
15週 メソッド呼び出し メソッド呼び出し方を理解し、プログラムを作成できる。
16週 期末試験
前期9週から15週までを理解できる。
後期
3rdQ
1週 メソッドの呼び出し メソッドの呼び出しについて理解し、プログラムを作成できる。
2週 メソッドのオーバーライド,動的結合
メソッドのオーバーライド,動的結合について理解し、プログラムを作成できる。
3週 抽象クラス 抽象クラスを理解し、プログラムを作成できる。
4週 インターフェース インターフェースを理解し、プログラムを作成できる。
5週 入出力処理 ファイルにデータを読み込んだり、書き出したりするための方法について理解しプログラムを作成できる。
6週 データ構造(ArrayListとHashMap) データ構造(ArrayListとHashMap)について理解し、プログラムを作成できる。
7週 デザインパターン入門 デザインパターンの初歩を理解し、自分でプログラムに反映することができる。
8週 中間試験
後期1週から7週までを理解できる。
4thQ
9週 課題制作(1) 課題を説明する。要求仕様を作成することができる。
10週 課題制作(2) 要求仕様をプレゼンテーションで他の学生に発表することができる。
11週 課題制作(3) 与えられた課題についてグループでプログラミングすることができる。
12週 課題制作(4) 与えられた課題についてグループでプログラミングすることができる。
13週 課題制作(5) 与えられた課題についてグループでプログラミングすることができる。
14週 課題制作(6) 与えられた課題についてグループでプログラミングすることができる。
15週 課題制作(7)、まとめ 実際に作成した課題を学生にわかりやすく発表できる。
16週 期末試験実施せず

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4
変数の概念を説明できる。4
データ型の概念を説明できる。4
制御構造の概念を理解し、条件分岐を記述できる。4
制御構造の概念を理解し、反復処理を記述できる。4
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。3
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。3
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。3
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。3

評価割合

試験発表相互評価態度ポートフォリオ演習課題その他合計
総合評価割合655000300100
基礎的能力00000000
専門的能力655000300100
分野横断的能力00000000