到達目標
1.ストラクチャーの配列を理解できる.
2.ポインターを使う高度なプログラムが解読できる.
3.Shell中でパイプ等を用いた色々なコマンド操作ができる.
4.Linux上のCUIからC言語のプログラムを開発できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | Shellとはプログラム言語でもあることが理解できる. | Shell中でパイプ等を使った操作ができる. | Shellがプログラム言語であることを理解していない. |
評価項目2 | Linux上で簡単なmakefileを準備できる. | Linux上でgccを使ったコンパイルができる. | gccを使ったコンパイルができない. |
評価項目3 | GDB等のデバッガーをプログラミングに役立てうる. | GDBデバッガーを操作できる. | GDBデバッガーのメッセージが分からない. |
学科の到達目標項目との関係
教育方法等
概要:
1年生の続きで,C言語のポインターを理解した後,
Linux上でC言語のプログラミングに必要なツールを使えるようになることを目的とする.
特に,GUI(Graphical User Interface)ではなく,CUI(Character User Interface)を使った開発に重点を置く.
授業の進め方・方法:
1年生の続きで,C言語のポインターを学習した後,教科書の例に従って授業を進める.授業でカバーできない例などは,自宅で入力および実行する必要がある.そのため,自分専用のPCを持っていることが望ましい.
PCの環境設定等は,教科書に詳しく記述があるので,授業開始前に準備しておくこと.1年で学んだ
C言語を使って各自プログラム作品を作る.春休み中にプログラム作品の構想を練っておくこと.
注意点:
LinuxはPC上のOracle Virtualbox上にインストールするので,Linux専用のPC等の購入の必要はないが,WindowsノートブックPCが必要となる.また,Raspberry Pi上でも作業はできる.
評価方法詳細:
定期試験 30%,課題等その他 70% を目安として評価する. 60点以上を合格とする.再試は行わない.
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
オリエンテーション |
Linuxでのgccによるコンパイルを説明する
|
2週 |
Mulitidimensional Array |
多次元配列とポインタの関係を理解できる.
|
3週 |
Pointer to strings |
ストリングが配列であることを理解できる
|
4週 |
Structures: Simple structure, nested structure |
配列との対比でストラクチャーが理解できる.
|
5週 |
Array of structures |
ストラクチャーの配列を理解できる.
|
6週 |
Array of pointers to structures |
ストラクチャーへのポインタを使える.
|
7週 |
VM(Virtual Machine)とCentOS |
VMとは何か分かる
|
8週 |
Shellの操作 |
Shellの基本操作ができる.
|
2ndQ |
9週 |
Shellのコマンド |
Shellのコマンドを試すことができる.
|
10週 |
C言語のコンパイル |
C言語をgccでコンパイルできる.
|
11週 |
プログラム作品発表会(1) |
自分のプログラムを他人に説明できる.
|
12週 |
プログラム作品発表会(2) |
他の発表におけるプログラムの内容が理解できる.
|
13週 |
プログラム作品発表会(予備) |
他の発表におけるプログラムの内容が理解できる.
|
14週 |
プログラムのアーカイブ |
アーカイブを経験する.
|
15週 |
まとめ |
全体を復習し理解する.
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 情報を適切に収集・処理・発信するための基礎的な知識を活用できる。 | 3 | |
論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 2 | |
コンピュータのハードウェアに関する基礎的な知識を活用できる。 | 3 | |
数値計算の基礎が理解できる | 2 | |
コンピュータにおける初歩的な演算の仕組みを理解できる。 | 2 | |
データの型とデータ構造が理解できる | 2 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 30 | 20 | 0 | 0 | 0 | 50 | 100 |
基礎的能力 | 0 | 20 | 0 | 0 | 0 | 0 | 20 |
専門的能力 | 30 | 0 | 0 | 0 | 0 | 30 | 60 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 20 | 20 |