プログラミング演習

科目基礎情報

学校 長野工業高等専門学校 開講年度 令和04年度 (2022年度)
授業科目 プログラミング演習
科目番号 0028 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 学修単位: 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) 説明 閉じる
(D-2) 説明 閉じる
産業システム工学プログラム 説明 閉じる

教育方法等

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

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

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

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

評価割合

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