プログラミング演習

科目基礎情報

学校 長野工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 プログラミング演習
科目番号 0030 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 学修単位: 4
開設学科 電子情報工学科 対象学年 4
開設期 通年 週時間数 2
教科書/教材 教科書:伊藤祥一「Springs of C」森北出版株式会社参考書:林正幸「Java サンプルプログラム集」共立出版株式会社自作プリント
担当教員 大矢 健一,伊藤 祥一

到達目標

<前期>画像処理を用いたシミュレーションプログラムが作成できることと,ボタンなどを用いたインタラクティブなアプリケーションプログラムが作成できることにより(D-1),(D-2)の達成とする.
<後期>C言語とOpen GLによりリアルタイムに動作するプログラムが作成できることにより(D-1),(D-2)の達成とする.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
Java言語 画像処理やボタンなどを用いたJava言語のプログラミングがほぼ完璧にできる.画像処理やボタンなどを用いたJava言語のプログラミングが概ねできる.画像処理やボタンなどを用いたJava言語のプログラミングができない.
C言語C言語とOpen GLによりリアルタイムに動作するプログラムの作成ができ、自分なりの工夫を盛り込める.C言語とOpen GLによりリアルタイムに動作するプログラムの作成が概ねできる.C言語とOpen GLによりリアルタイムに動作するプログラムの作成ができない.

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

(D-1) 産業システム工学プログラム

教育方法等

概要:
前期は多数のプログラムの読み書きを通じてJava言語をさらに習得することを主な目的とする.
後期はC言語とOpenGLによる簡単なリアルタイムゲームの作成を通じて実践的なプログラミングテクニックを習得することを目的とする.
本科目の前期は,企業でソフトウェア開発をしていた教員が,その経験を活かし,ソフトウェア開発について講義形式で授業を行うものである.
授業の進め方と授業内容・方法:
<前期>授業方法は講義を中心とし,毎回,演習問題や課題を出すので.提出すること.
<後期>演習を中心として進め,適宜レポートを課すので期限に遅れず提出すること.

・この科目は学修単位科目であり,授業時間60時間に加えて,自学自習時間120時間が必要である.前期は事前・事後学習として課題等を与える.後期は事前・事後学習として授業時間内に説明した内容のプログラムを完成させて次回の授業に臨むようにすること.
注意点:
<成績評価>前期・後期ともにレポート(100%)の100点満点で(D-1),(D-2)を評価する.前期・後期ともに6割以上を獲得した者をこの科目の合格者とし,
評価点は前期と後期の平均点とする.どちらかが不合格で平均点が60点以上の者については評価点を59点とする.
<オフィスアワー>月曜日16:00~17:00,電子情報工学科棟第7教員室(大矢),第4教員室(伊藤)
<先修科目・後修科目>先修科目はオブジェクト指向,後修科目はソフトウェア工学,画像処理となる.
<備考>情報処理全般に関する基礎的なことを習得していること.
C言語の基本的な部分を習得していること.後期はノートPCを使用する.

授業計画

授業内容・方法 週ごとの到達目標
前期
1週 Javaプログラミングの復習 簡単なJava言語のプログラムが作成できる.
2週 画像処理1 画像処理を用いたJava言語のプログラムが作成できる.
3週 画像処理2 画像処理を用いたJava言語のプログラムが作成できる.
4週 画像処理3 画像処理を用いたJava言語のプログラムが作成できる.
5週 画像処理4 画像処理を用いたJava言語のプログラムが作成できる.
6週 シミュレーション1 画像処理を用いたシミュレーションプログラムが
作成できる.
7週 シミュレーション2 画像処理を用いたシミュレーションプログラムが
作成できる.
8週 シミュレーション3 画像処理を用いたシミュレーションプログラムが
作成できる.
9週 シミュレーション4 画像処理を用いたシミュレーションプログラムが
作成できる.
10週 インタラクティブなアプリケーション1 ボタンなどを用いた
インタラクティブなアプリケーションが作成できる.
11週 インタラクティブなアプリケーション2 ボタンなどを用いた
インタラクティブなアプリケーションが作成できる.
12週 インタラクティブなアプリケーション3 ボタンなどを用いた
インタラクティブなアプリケーションが作成できる.
13週 インタラクティブなアプリケーション4 ボタンなどを用いた
インタラクティブなアプリケーションが作成できる.
14週 インタラクティブなアプリケーション5 ボタンなどを用いた
インタラクティブなアプリケーションが作成できる.
15週 総合演習 前期で学んだことをもとに,与えられた仕様のプログラムが作成できる.
16週
後期
1週 環境構築 Cygwinとglpngを導入してコンパイルができるようにする.
2週 make makeを使った分割コンパイルができる.
3週 GIMP 画像処理ソフトGIMPを用いてアプリケーションアイコン画像を作成することができる.
4週 アナログ時計の作成1 標準ライブラリを用いて現在時刻を取得して表示できる.
5週 アナログ時計の作成2 ウィンドウを開いて各種イベントハンドラを記述できる.
6週 アナログ時計の作成3 ウィンドウ上に直線などの基本図形を表示できる.
7週 アナログ時計の作成4 割り込み処理を用いてアナログ時計の針を更新できる.
8週 文字列の描画 ウィンドウ上に文字列を描画することができる.
9週 PNG画像の表示 ウィンドウ上に透明情報つきPNGを表示することができる.
10週 マウス操作 マウス入力のイベントハンドラを記述できる.
11週 キーボード操作 キーボード入力のイベントハンドラを記述できる.
12週 ミニゲームの作成1 画像を並べてゲームマップを表示してキャラクターをキーボード操作することができる.
13週 ミニゲームの作成2 マップ上の歩ける部分と歩けない部分を正しく処理してキャラクターを操作することができる.
14週 ミニゲームの作成3 敵キャラクターを導入して当たり判定をつけ,ゲームとして完成させる.
15週 デバッグ・最適化 デバッガを用いた効率的なデバッグについて理解できる.コンパイラの最適化処理について理解できる.
16週

評価割合

試験小テスト平常点レポートその他合計
総合評価割合0001000100
配点0001000100