応用プログラミングA

科目基礎情報

学校 函館工業高等専門学校 開講年度 2019
授業科目 応用プログラミングA
科目番号 0071 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 生産システム工学科 対象学年 3
開設期 通年 週時間数 2
教科書/教材 内田智史監修 C言語によるプログラミング応用編第2版 (オーム社)
担当教員 佐藤 恵一,東海林 智也

到達目標

1. 与えられた問題に対して、それを解決するための応用プログラムを作成することができる。
2. 組み込み系のプログラム開発に必要な知識を理解し、組込み系の応用プログラムを作成することができる。
3. コンピュータ上で数値計算を行う際に発生する誤差の影響を理解し、適切な数値表現ができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1より実践的な応用プログラムを作成することができる。単純な応用プログラムを作成することができる。単純な応用プログラムを作成することができない。
評価項目2より実践的な組込み系の応用プログラムを作成することができる。単純な組み込み系の応用プログラムを作成することができる。単純な組み込み系の応用プログラムを作成することができない
評価項目3誤差の影響を理解し、適切な数値表現ができる。誤差の影響を理解できる。誤差の影響を理解できない。

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

函館高専教育目標 B 説明 閉じる
函館高専教育目標 C 説明 閉じる

教育方法等

概要:
2年までのプログラミング入門、プログラミング基礎で学習したことをさらに発展させ、より実践的なプログラムを作成する。開発環境もPC上、組込み系、各種OSにおける開発手法を学ぶ。
授業の進め方・方法:
プログラミング入門、プログラミング基礎は文法中心の学習であったが、それを実際のアプリケーションで活用する知識を学ぶ。プログラミング言語に関する文法もさらに詳細に学習する。ネットワーク、スレッドなど実際に社会で使用されているテーマで演習を行う。
注意点:
前期はC言語、後期はJava言語をプログラミング言語として用いる。

評価方法:
課題 55% (B,C)
試験 45% (B,C)

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス、static通用範囲と生存期間 static通用範囲と生存期間を理解できる。
2週 可変引数、コマンドライン引数の取得 可変引数、コマンドライン引数の取得を理解できる。
3週 疑似乱数 疑似乱数発生の仕組みを理解できる。
4週 ポインタ変数のポインタ表記とデータ表記。ポインタによる構造体メンバの参照 ポインタ変数のポインタ表記とデータ表記。ポインタによる構造体メンバの参照を理解できる。
5週 ポインタ配列、ポインタのポインタ ポインタ配列、ポインタのポインタを理解できる
6週 動的メモリ確保 動的メモリ確保を理解できる
7週 ビットごとの演算 ビットごとの演算を理解できる
8週 前期中間試験
2ndQ
9週 試験答案返却・解答解説 間違った問題の正答を求めることができる
10週 基本入出力関数、グリニッジ標準時の取得 基本入出力関数、グリニッジ標準時の取得を理解できる。
11週 サーバクライアント1対1通信 サーバクライアント1対1通信を理解できる。
12週 1対1通信の簡単なアプリケーションの作成 1対1通信の簡単なアプリケーションの作成できる。
13週 サーバクライアント1対多通信 サーバクライアント1対多通信を理解できる。
14週 1対多通信の簡単なアプリケーションの作成 1対多通信の簡単なアプリケーションの作成できる。
15週 前期期末試験
16週 試験答案返却・解答解説 間違った問題の正答を求めることができる
後期
3rdQ
1週 JavaのHello World ソフトウェア開発に利用する標準的なツールを用いてJava言語でHello Worldを作成できる。
2週 Javaのデータ型と画面表示 Java言語のデータ型の概念を説明できる。また画面表示が出来る。
3週 Java言語の演算処理と分岐処理 Java言語を用いて演算処理と分岐処理ができる。
4週 計算誤差1 与えられたアルゴリズムが問題を解決していく過程を説明できる。かつコンピュータ上での数値の表現方法が誤差に関係することを理解し、発生した誤差の影響を理解できる。
5週 計算誤差2 与えられたアルゴリズムが問題を解決していく過程を説明できる。かつコンピュータ上での数値の表現方法が誤差に関係することを理解し、発生した誤差の影響を理解できる。
6週 計算誤差3 与えられたアルゴリズムが問題を解決していく過程を説明できる。かつコンピュータ上での数値の表現方法が誤差に関係することを理解し、発生した誤差の影響を理解できる。
7週 計算誤差4 与えられたアルゴリズムが問題を解決していく過程を説明できる。かつコンピュータ上での数値の表現方法が誤差に関係することを理解し、発生した誤差の影響を理解できる。
8週 後期中間試験
4thQ
9週 試験答案返却・解答解説 間違った問題の正答を求めることができる
10週 入出力ストリームと例外処理 Java言語を用いてファイル操作と例外処理ができる。
11週 リスト型とマップ型 Java言語のリスト型とマップ型の概念を説明できる。
12週 ラムダ式と関数オブジェクト Java言語を用いて関数オブジェクトを作成できる。
13週 ラムダ式とforeach処理 Java言語を用いてforeach処理ができる。
14週 型推論とジェネリクスメソッド Java言語の型推論の概念を説明できる。またジェネリクスメソッドを作成できる。
15週 スレッドプログラミング Java言語を用いてスレッドプログラミングができる。
16週 ※ 学年末試験は実施しません

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4前1
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4前1,前2
変数の概念を説明できる。4前1,前2,前4,前5
データ型の概念を説明できる。4前1,前2,前4,前5,前6,後2
制御構造の概念を理解し、条件分岐を記述できる。4前1,前2
制御構造の概念を理解し、反復処理を記述できる。4前1,前2
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4前2
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4前1
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4前3,前11
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。4後1
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4前3,前11
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4前12
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4前12
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4前12
ソフトウェア与えられたアルゴリズムが問題を解決していく過程を説明できる。4前11,後4,後5,後6
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4前3,前10
計算機工学小数を2進数、10進数、16進数で表現できる。4前7,後3
情報通信ネットワークプロトコルの概念を説明できる。3前12,前13,前14
インターネットの概念を説明できる。3前12,前13,前14
主要なサーバの構築方法を説明できる。4前12,前13,前14
情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。4前12,前13,前14
情報数学・情報理論コンピュータ上での数値の表現方法が誤差に関係することを説明できる。3後7
コンピュータ上で数値計算を行う際に発生する誤差の影響を説明できる。3後7

評価割合

試験発表相互評価態度ポートフォリオ課題合計
総合評価割合45000055100
基礎的能力1500001530
専門的能力3000004070
分野横断的能力0000000