NBU日本文理大学

シラバス情報

注)公開用シラバス情報となります。在学生の方は、「UNIVERSAL PASSPORT」で詳細をご確認下さい。

科目名 プログラミング2(Computer Programming 2)
担当教員名 星芝 貴行、濱田 大助、吉森 聖貴
配当学年 2 開講期 前期
必修・選択区分 選択 単位数 1
履修上の注意または履修条件 この科目で学習する内容は以後履修するプログラミング、ソフトウェア関連科目の基礎となる大切な内容が数多く含まれています。理解を確実なものとするために、授業以外の時間の予習復習も含めて、数多くのプログラミング演習を行うことを勧めます。USB接続のポータブルハードディスクが必要です。
受講心得 授業時はもちろん、課外の予習復習(自習)を通して、Java言語を用いて簡単なプログラムが作成できるように学習を進めてください。
教科書 やさしいJava第4版 高橋麻奈著 ソフトバンク
参考文献及び指定図書 Java言語プログラミングレッスン改訂第2版上・下 結城浩著 ソフトバンク
プログラミングの方法(岩波講座ソフトウェア科学第2巻) 川合慧著 岩波書店
コードコンプリート第2版上・下 スティーブ・マコネル著 日経BP
関連科目 (先修科目)
プログラミング基礎、プログラミング1
(後修科目)
アルゴリズムB、アルゴリズム演習B、メディア処理2A、メディア処理演習2A、メディア処理2B、メディア処理演習2B、知的システムA、知的システム演習A、知的システムB、知的システム演習B
(先修・後修に関係なく関連性の高い科目)
アルゴリズムA、アルゴリズム演習A、情報処理A、情報処理B、情報処理C、情報処理D
オフィスアワー
授業の目的 この科目の目的は、Java言語を用いて、オブジェクト指向プログラミングに関する基礎的な知識と技術を習得することです。Java言語は現在の主流となっているオブジェクト指向型のC系列言語(C++、Java、C#など)の代表的な言語であり、Java言語の文法(構文)を学習することは、他のC系列言語の学習にも大いに役立ちます。また、特定のOSやハードウェアに依存しないプログラムを記述できることから、現在では特にWebアプリケーション開発の世界で主流のプログラム言語として使われています。この科目の到達目標は、Java言語を用いて簡単なプログラムを作成できるようになることです。
授業の概要 PC教室にて実際にプログラムを打ち込む演習を中心に授業を進めます。USB接続のポータブルハードディスク上にJavaの開発環境を構築し、プログラミングの演習を行います。自宅等でも予習復習ができます。
授業計画 学習内容 学習課題(予習・復習)
○第1回 オリエンテーション
 プログラミング言語Javaについて概説します。VMware上のUbuntuにJavaの開発環境をインストールし、プログラミングの環境を整えます。

○第2回 Javaの基本
 Javaを学習していくはじめの段階として、Javaプログラミングの基本スタイルや命令規則、メッセージの表示について説明します。実際にJavaプログラムを記述し、メッセージの表示を行います。

○第3回 データ型と変数
 プログラムで扱うすべてのデータには、データの種類を表すデータ型というものが存在します。実際にJavaで扱う様々なデータ型について概説します。Javaが扱う「数」には定数と変数の2種類があり、プログラムを作成する上で非常に重要な「変数」について説明します。実際に変数を用いたプログラミング課題に取り組みます。

○第4回 式と演算子
 プログラムを作成する上で必ず必要となる「演算子」について、その種類と基本的な使い方について説明します。また、データ型の変換(キャスト)についても学びます。実際に算術演算子や代入演算子を使用したプログラミング課題に取り組みます。

○第5回 条件判断
 プログラムの制御構造には、「順次」、「判断」、「繰り返し」があり、その2つめの処理の流れを条件によって変化させる方法である「if文」と「switch文」について学びます。実際にif文を使用したプログラミングの課題に取り組みます。

○第6回 繰り返し
 プログラムの処理を「繰り返す」方法である、「for文」、「while文」、「do while文」について学習し、実際にプログラミングの課題に取り組みます。

○第7回 配列・レポート(1)
 データの集まりを処理する「配列」について学習し、実際にプログラミングの課題に取り組みます。また、これまでの授業内容を発展させたレポート課題についても出題します。

○第8回 クラスの基本
 Javaの大きな特徴の1つであるオブジェクト指向について学習します。設計図にあたる「クラス」と設計図から生成した実体である「オブジェクト(インスタンス)」について学び、オブジェクトの性質を記述する「フィールド」とオブジェクトの機能を記述する「メソッド」について学びます。実際に授業内容に関連したプログラミング課題に取り組みます。

○第9回 クラスの機能
 クラスのメンバである「フィールド」と「メソッド」のアクセスの制限にいついて学びます。また、初期化専用のメソッドである「コンストラクタ」と、メソッドの多重定義である「オーバーロード」についても学びます。実際に授業内容に関連したプログラミング課題に取り組みます。

○第10回 クラスの利用
 Javaには多くのクラスが用意されています。クラスを活用すると、実践的なプログラムを作成することができます。クラスを利用し様々なプログラムを作成することを学びます。実際に授業内容に関連したプログラミング課題に取り組みます。

○第11回 クラスの継承
 オブジェクト指向プログラミングにおいて重要な手法であるクラスの「継承」について学びます。クラスの継承を行うことで、より効率のよい、わかりやすいプログラムも作成でき、機能の拡張や追加も簡単に行えます。演習の時間には、授業内容についてプログラミングの課題を出します。

○第12回 インターフェイス
 Javaでは多重継承(複数のクラスからの継承)のしくみの一部を「インタフェース」という方法で実現できます。インタフェースを利用することで、効率よくプログラムを作成できるようになります。演習の時間には、授業内容についてプログラミングの課題を出します。

○第13回 アプレット(1)
 Webブラウザなどの上で稼動させる「アプレット」について学習します。演習の時間には、授業内容についてプログラミングの課題を出します。

○第14回 アプレット(2)
 アプレットに「イベント処理」を加えます。演習の時間には、授業内容についてプログラミングの課題を出します。

○第15回 アプレット(3)・レポート(2)
 アプレットに「スレッド処理」を加えます。演習の時間には、授業内容についてプログラミングの課題を出します。また、これまでの授業内容を発展させたレポート課題についても出題します。

○第16回 期末試験
 この授業で扱った知識項目の理解度を確認するために、筆記形式の期末試験を行います。
○第1回
 スライド・配布資料・演習問題
 課題の時間 60分

○第2回
 スライド・配布資料・演習問題
 課題の時間 60分

○第3回
 スライド・配布資料・演習問題
 課題の時間 60分

○第4回
 スライド・配布資料・演習問題
 課題の時間 60分

○第5回
 スライド・配布資料・演習問題
 課題の時間 60分

○第6回
 スライド・配布資料・演習問題
 課題の時間 60分

○第7回
 スライド・配布資料・演習問題
 課題の時間 60分

○第8回
 スライド・配布資料・演習問題
 課題の時間 60分

○第9回
 スライド・配布資料・演習問題
 課題の時間 60分

○第10回
 スライド・配布資料・演習問題
 課題の時間 60分

○第11回
 スライド・配布資料・演習問題
 課題の時間 60分

○第12回
 スライド・配布資料・演習問題
 課題の時間 60分

○第13回
 スライド・配布資料・演習問題
 課題の時間 60分

○第14回
 スライド・配布資料・演習問題
 課題の時間 60分

○第15回
 スライド・配布資料・演習問題
 課題の時間 60分
授業の運営方法 プログラミング演習を中心に授業を進めます。
備考
学生が達成すべき到達目標 ①Java言語を用いて、簡単なプログラムを作成できる。
②アルゴリズムの図的表現(フローチャート)をもとにプログラムを作成できる。
③他のC系列言語(C++、C#など)を独習できる。
④オブジェクト指向プログラミングの基本的な知識を理解する。
評価方法 評価の割合 評価の実施方法と注意点
試験 30 授業の内容を理解できているかを確認します。(30点)
小テスト
レポート 70
成果発表
作品
その他
合計 100