到達目標
(1) プログラミング言語やその開発環境を利用するための知識を身につける。
(2) Pythonを利用した基本的なプログラミングについて理解する。
(3) C#言語の基本的な文法について理解する。
(4) オブジェクト指向について理解する。
【教育目標】D
【教育目標】C
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
(1) プログラミング言語に関する基礎知識 | プログラミング言語の機能の意味を理解し、開発に利用するツールの有用性を説明できる。 | プログラミング言語やその開発環境を利用するための知識がある。 | プログラミング言語やその開発環境についての知識がない。 |
(2) Python言語の知識 | Pythonを利用して自分でプログラミングを設計し、その内容を説明することができる。 | Pythonを利用した基本的なプログラミングについて理解している。 | Pythonを利用したプログラミングが理解できない。 |
(3) C#言語の知識 | C#言語の応用的な文法について、自ら調査し理解できる。 | C#言語の基本的な文法について理解できる。 | C#言語の基本的な文法について理解できない。 |
(4) オブジェクト指向の知識 | オブジェクト指向について理解し、応用的なプログラムをオブジェクト指向を用いて設計できる。 | オブジェクト指向について理解できる。 | オブジェクト指向について理解できない。 |
学科の到達目標項目との関係
教育方法等
概要:
本授業ではプログラミング入門者がプログラミングの基礎知識を習得することを目的とする。前期ではスクリプト言語Pythonを利用して基礎的なプログラムの制御、構造、データ型、クラスなどを学ぶ。Pythonの標準ライブラリ、外部ライブラリを利用したプログラム開発についても学ぶ。後期では、C#言語の基本的な文法やオブジェクト指向について学ぶ。
授業の進め方・方法:
本授業ではプログラミング言語の理解を目的として講義を進める。前期ではPythonについて文法やデータの使い方について実例を交えながら説明していく。演習でプログラム開発を行うための環境についても説明を行う。後期ではC#の文法やオブジェクト指向を用いたプログラム設計について講義する。
注意点:
【事前学習】
「授業内容・方法」に対応する教科書や資料の内容を事前に読んでおくこと。
【評価方法・評価基準】
試験結果(100%)で評価する。詳細は第1回目の授業で告知する。
プログラミングに関する基本的な知識、Python、C#言語の文法、オブジェクト指向の知識を評価する。
総合評価60点以上を単位修得とする。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
プログラミング言語と開発環境(1) |
プログラミング言語と開発環境について理解する。
|
2週 |
プログラミング言語と開発環境(2) |
プログラミング言語と開発環境について理解する。
|
3週 |
算術演算、比較演算、変数、文字列、入力、条件分岐、繰り返し |
算術演算、比較演算、変数等の利用ついて理解する。
|
4週 |
リストとリストの操作、文字列操作、辞書型など |
リストの操作、辞書型などを理解する。
|
5週 |
関数、無名関数、イテレータとジェネレータ |
関数、無名関数などについて理解する。
|
6週 |
例外処理、外部入出力 |
例外処理や外部入出力を理解する。
|
7週 |
クラス、継承 (1) |
クラスと継承などオブジェクト指向の基本を理解する。
|
8週 |
クラス、継承 (2) |
クラスと継承などオブジェクト指向の基本を理解する。
|
2ndQ |
9週 |
Pythonの内部および外部ライブラリ |
Pythonのライブラリ利用を理解する。
|
10週 |
Pythonの内部および外部ライブラリ |
Pythonのライブラリ利用を理解する。
|
11週 |
Pythonによる実践的プログラミング(1) |
Pythonによる実践的なプログラム開発を行うための知識を身につける。
|
12週 |
Pythonによる実践的プログラミング(2) |
Pythonによる実践的なプログラム開発を行うための知識を身につける。
|
13週 |
Pythonによる実践的プログラミング(3) |
Pythonによる実践的なプログラム開発を行うための知識を身につける。
|
14週 |
Pythonによる実践的プログラミング(4) |
Pythonによる実践的なプログラム開発を行うための知識を身につける。
|
15週 |
中間試験 |
|
16週 |
これまでの学習内容まとめ |
中間試験の解答・まとめ
|
後期 |
3rdQ |
1週 |
C#言語の仕組み(コンパイラ,バーチャルマシン等) |
コンパイラやバーチャルマシンなどの仕組みを理解できる。
|
2週 |
変数、条件分岐、繰り返し |
データ型や条件分岐、繰り返しなどの制御構造について理解できる。
|
3週 |
配列とコレクション |
配列やリスト、ディクショナリーについて理解できる。
|
4週 |
メソッドとラムダ式 |
メソッドについての基本事項やLINQ、ラムダ式について理解できる。
|
5週 |
オブジェクト指向概要 |
オブジェクト指向の考え方について理解できる。
|
6週 |
継承とポリモーフィズム |
継承やポリモーフィズムの考え方を理解できる。
|
7週 |
オブジェクト指向によるアプリの設計(1) |
オブジェクト指向の活用方法について理解できる。
|
8週 |
オブジェクト指向によるアプリの設計(2) |
継承やポリモーフィズムの活用方法について理解できる。
|
4thQ |
9週 |
Visual C#概要 |
Visual C#を活用したwindowsアプリケーションの基礎について理解できる。
|
10週 |
総合演習(1) |
プログラミング設計へのオブジェクト指向の活用方法を理解できる。
|
11週 |
総合演習(2) |
プログラミング設計へのオブジェクト指向の活用方法を理解できる。
|
12週 |
総合演習(3) |
これまで学んできたプログラミングの知識を課題解決に活用できる。
|
13週 |
総合演習(4) |
これまで学んできたプログラミングの知識を課題解決に活用できる。
|
14週 |
総合演習(5) |
これまで学んできたプログラミングの知識を課題解決に活用できる。
|
15週 |
期末試験 |
|
16週 |
学習内容のまとめ |
期末試験の解答・まとめ
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 3 | |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 3 | |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 3 | |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 3 | |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 変数の概念を説明できる。 | 3 | |
データ型の概念を説明できる。 | 3 | |
代入や演算子の概念を理解し、式を記述できる。 | 3 | |
制御構造の概念を理解し、条件分岐を記述できる。 | 3 | |
制御構造の概念を理解し、反復処理を記述できる。 | 3 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 3 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | |
計算機工学 | 基本的な論理演算を行うことができる。 | 2 | |
基本的な論理演算を組合わせて、論理関数を論理式として表現できる。 | 2 | |
評価割合
| 定期試験 | 合計 |
総合評価割合 | 100 | 100 |
基礎的能力 | 100 | 100 |