到達目標
1. 形式言語の概念について説明できる。
2. 形式言語が制限の多さにしたがって分類されることを説明できる。
3. オートマトンの概念について説明できる。
4. 正規表現と有限オートマトンの関係を説明できる。
5. コンパイラの役割と仕組みについて説明できる。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 最低限の到達レベル |
評価項目1 | 形式言語とオートマトンの関係について説明でき、課題解決に応用することができる。 | 形式言語とオートマトンの関係について説明できる。 | 形式言語の概念について説明できる。 |
評価項目2 | 形式言語を制限の多さにしたがって分類でき、課題解決に応用することができる。 | 形式言語を制限の多さにしたがって分類できる。 | 形式言語が制限の多さにしたがって分類されることを説明できる。 |
評価項目3 | オートマトンの概念について状態遷移図をもとに説明でき、課題解決に応用することができる。 | オートマトンの概念について状態遷移図をもとに説明できる。 | オートマトンの概念について説明できる。 |
評価項目4 | 正規表現と有限オートマトンの関係を具体的な例を挙げて説明でき、課題解決に応用することができる。 | 正規表現と有限オートマトンの関係を具体的な例を挙げて説明できる。 | 正規表現と有限オートマトンの関係を説明できる。 |
評価項目5 | コンパイラの役割と仕組みについて具体的な例を挙げて説明でき、課題解決に応用することができる。 | コンパイラの役割と仕組みについて具体的な例を挙げて説明できる。 | コンパイラの役割と仕組みについて説明できる。 |
学科の到達目標項目との関係
教育方法等
概要:
これまで学んできたプログラミングなどの知識をベースとして、コンパイラがプログラムを処理するプロセスについて学ぶ。また、第一線で活躍している外部講師による実践的な演習を実施する。
授業の進め方・方法:
基本的には教科書にそって進める。自学自習での演習を通じて理解を深めていく。
【授業時間30時間+自学自習時間60時間】
注意点:
課題はMoodleを通じて電子ファイルで提出すること。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
プログラムが動作する仕組み |
プログラムが動作する仕組みを説明できる。
|
2週 |
言語が動作する仕組み |
言語が動作する仕組みを説明できる。
|
3週 |
字句解析 |
字句解析について説明できる。
|
4週 |
文法 |
プログラミング言語が満たす文法について説明できる。
|
5週 |
下向構文解析 |
下向構文解析の概要について説明できる。
|
6週 |
上向構文解析 |
上向構文解析の概要について説明できる。
|
7週 |
LALR構文解析 |
LALR構文解析の概要について説明できる。
|
8週 |
【中間試験】 |
|
2ndQ |
9週 |
構文木と意味づけ |
構文木と意味づけについて説明できる。
|
10週 |
コード生成 |
コード生成の概要について説明できる。
|
11週 |
関数・手続きの処理 |
関数・手続きの処理について説明できる。
|
12週 |
最適化 |
最適化の概要について説明できる。
|
13週 |
インタプリタと仮想計算機 |
インタプリタと仮想計算機について説明できる。
|
14週 |
コンテナとDocker【外部講師】 |
コンテナについて理解し、Dockerを使うことができる。
|
15週 |
開発手法とGitHub【外部講師】 |
GitHubを使ったアプリケーション開発について説明できる。
|
16週 |
【学年末試験】 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | システムプログラム | 形式言語の概念について説明できる。 | 4 | |
形式言語が制限の多さにしたがって分類されることを説明できる。 | 4 | |
オートマトンの概念について説明できる。 | 4 | |
正規表現と有限オートマトンの関係を説明できる。 | 4 | |
コンパイラの役割と仕組みについて説明できる。 | 4 | |
評価割合
| 試験 | ポートフォリオ | 合計 |
総合評価割合 | 70 | 30 | 100 |
基礎的能力 | 20 | 10 | 30 |
専門的能力 | 50 | 20 | 70 |
分野横断的能力 | 0 | 0 | 0 |