1年次の「基礎プログラミング」で学んだJava 言語の基本を再確認し,クラスの機能を学ぶことで,プログラミング言語を理解するための基本能力を養い,演習によって学習内容の応用力を身に着けることを目標とする。3年次の「アルゴリズムとデータ構造」で学ぶ内容の準備を行う。
概要:
1年生で習ったJava 言語の基本を再確認し、クラスの機能を学ぶことで、他のプログラミング言語を理解するための基本能力を養う。講義による座学とプログラム作成演習により、学習内容の応用力を身に着ける。
この科目は,企業で実際にプログラム作成に関わる実務を担当していた教員が,その経験を生かして、プログラミング言語の使用に関して講義形式や演習形式で授業を行うものである。
授業の進め方・方法:
座学により基本知識を学び,演習により理解度の確認を行う。時間内に演習を行う場合には,演習問題が完成しなかった分が次回までの宿題になる。
事前事後学習として,授業中に配布した学習シートによる演習およびプログラム作成演習を計約15時間行う。
注意点:
積み重ねて学習する科目のため、1年次の学習内容を含めて自分で復習を継続することが必須である。
成績評価式:試験点(60点満点) + 課題点(10点満点) + 演習点(30点満点); ここで, 試験点= 0.6×(中間試験点(百点満点)+期末試験点(百点満点)) ÷ 2 とする。ただし,小数点以下は四捨五入して計算する。
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
直線的プログラミング:プログラムの作成方法を復習し、変数(の型)、定数、値、代入文、演算子などを復習する。 【事前事後学習の内容(1時間)】学習シート |
変数,定数,型について理解し,代入文を正しく書くことができる。
|
2週 |
プログラムの基本構造:分岐と繰り返し、および文字と数値の出力文の書式などを復習する。 【事前事後学習の内容(1時間)】学習シート |
分岐や繰り返しを含むプログラムを書くことができる。
|
3週 |
メソッドの基本:プログラムのモジュール化について復習する。 【事前事後学習の内容(1時間)】プログラミング演習 |
メソッドを用いたプログラムを書くことができる。
|
4週 |
「基本の復習」の復習:アルゴリズムの基本とトレース方法について振り返る。 【事前事後学習の内容(1時間)】プログラミング演習 |
これまでに習ったJava言語の基本要素を理解できているか確認し,プログラムの動作にそったトレースができる。
|
5週 |
文字、文字列と配列:文字列のしくみを再確認し、文字列を含む基本データ構造について学ぶ。 【事前事後学習の内容(1時間)】プログラミング演習 |
文字,文字列,配列について理解していることを確認し,それらを用いたプログラムを書くことができる。
|
6週 |
文字列配列とコマンドライン: OSと応用プログラムの橋渡しの方法について学ぶ。 【事前事後学習の内容(2時間)】プログラミング演習 |
コマンドライン引数を使ったプログラムを書くことができる。
|
7週 |
ネスト構造:プログラム構造の階層化と変数の有効範囲について学ぶ。 【事前事後学習の内容(1時間)】学習シート |
ネスト構造を持ったプログラムを書くことができる。
|
8週 |
中間試験:Javaプログラムの基本的な事項について試験する。 |
Javaプログラム言語の基本事項を習得して理解できているか,基本的なプログラムが書けるかを確認する。
|
2ndQ |
9週 |
アルゴリズムの工夫:幾つかの代表的なアルゴリズムの基礎を学ぶ。 【事前事後学習の内容(1時間)】プログラミング演習 |
指定されたアルゴリズムに基づいたプログラムを書くことができる。
|
10週 |
ファイル入出力:実用的なプログラムの作成に向けて、ファイル処理の基礎について学ぶ。 【事前事後学習の内容(1時間)】プログラミング演習 |
ファイル入出力をともなうプログラムを書くことができる。
|
11週 |
多次元配列、実数の表現と計算方法:データ構造の拡張により、自然界の情報のプログラムへの反映方法を学ぶ。 |
多次元配列や実数の表現方法を理解し,それらを用いたプログラムを書くことができる。
|
12週 |
クラスの基本:クラスのしくみ、クラスの利用方法を学ぶ。【事前事後学習の内容(1時間)】プログラミング演習
|
クラスとは何かを理解し,複数のクラスをもつプログラムをかくことができる。
|
13週 |
クラスの機能と利用:クラス型やインスタンスについて学ぶ。メンバへのアクセス制限、private修飾子などを学習する。 【事前事後学習の内容(1時間)】学習シート |
クラスとインスタンスの関係について理解し,インスタンスを生成して使ったプログラムを書くことができる。
|
14週 |
クラスの機能の拡張:クラスの継承やプログラムの流用方法について学習する。 【事前事後学習の内容(2時間)】プログラミング演習 |
クラスの継承について理解することができるかを確認する。
|
15週 |
期末試験:中間試験の試験範囲の復習、配列、クラス、オブジェクト(インスタンス)、ファイル入出力に関する問題を出題する。 |
Java言語の機能を理解し,それを用いたプロうグラムが作成できることを確認する。
|
16週 |
|
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 4 | 前1 |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 4 | 前3 |
変数の概念を説明できる。 | 4 | 前1 |
データ型の概念を説明できる。 | 4 | 前12 |
制御構造の概念を理解し、条件分岐を記述できる。 | 4 | 前2 |
制御構造の概念を理解し、反復処理を記述できる。 | 4 | 前2 |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 4 | 前1 |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 4 | 前1 |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 4 | 前4 |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 2 | 前1 |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 2 | 前1 |
プログラミング言語は計算モデルによって分類されることを説明できる。 | 2 | 前9 |
主要な計算モデルを説明できる。 | 2 | 前9 |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 3 | 前8 |
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 | 3 | 前8 |
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 | 3 | 前8 |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。 | 3 | 前8 |
分野別の工学実験・実習能力 | 情報系分野【実験・実習能力】 | 情報系【実験・実習】 | 与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。 | 3 | 前9 |
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | 前10,前14 |
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。 | 3 | 前11,前13 |
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。 | 3 | 前12,前13 |
問題を解決するために、与えられたアルゴリズムを用いてソースプログラムを記述し、得られた実行結果を確認できる。 | 3 | 前10,前14 |
与えられた仕様に合致した組合せ論理回路や順序回路を設計できる。 | 2 | 前2 |
標準的な開発ツールを用いてプログラミングするための開発環境構築ができる。 | 2 | |
要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。 | 2 | |
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。 | 2 | |