■授業内容と方法 |
○授業の概要 ・プログラミングIに関する演習を行う. ・ノート型パソコンと学内LAN を活用して、パソコン、ネットワーク、UNIX を有効利用するための技術を修得する。 ・可読性が高くインタプリタのあるスクリプト言語Pythonを演習・課題を通じ学ぶ。
|
■達成目標 |
1. 提示された課題を口頭および報告書として説明することができる。[コミュニケーション能力, 専門性] 2. Pythonの基本的な宣言・式・関数・制御文・関数・スコープ・ファイルI/Oを理解し,用いることができる。[実践性] 3. クラス,モジュール,関数の表面的な違いを意識し,コードを読み書きできる。[実践性] 4. 開発中に得られたErrors, Warningsを元に,どのようにデバッグしたら良いかを考え,実行に移すことができる。[実践性] 5. 第三者の書いたコード(100行程度)を読み,動作を説明することができる。(小作品理解)[実践性, 専門性, コミュニケーション能力] 6. プログラミングの概念と設計方法を理解し,KISS原則を意識した構造化プログラミング(100行程度)を実践することができる。(小作品制作)[実践性, 専門性, 課題解決能力と創造性] 7. 第三者にとって保守管理し易くするためにコード規約を意識し,適切なコメントを記述,単体テストを用意することができる。(小作品仕上げ)[実践性, 専門性]
|
■評価基準と評価方法 |
○演習課題(100%)により評価する。
|
■履修条件 |
UNIX環境を有するノートPCを使用する.MacOSX環境+EasyPackage,PC+Cygwinなど
|
■授業計画 |
第1回: UNIX,シェル,ファイル管理,ネットワークへの接続 第2回: Pythonインタプリタとスクリプトの体験1、ペア・プログラミングの導入 第3回: コード例を通したインタプリタとスクリプトの体験2: モジュール、クラス、関数とスコープ、式と変数、if文、コメント文 第4回: 基本的な型と変数、ドキュメンテーション文字列、mathモジュール、オンラインヘルプ 第5回: リスト・タプルとfor文 第6回: 制御文・条件文と関連予約語とコーディングスタイル 第7回: 関数、ユニットテスト、アサーション 第8回: 振り返り1(プログラムの実行、関数の理解、プログラミング基礎、コード読解) 第9回: バージョン管理 第10回: ファイル入出力と文字列パターンマッチング、設計と実装の検討 第11回: インターネットへのアクセスと文字コード、エンコードとデコード 第12回: 集合とディクショナリ、pickel 第13回: クラス1: クラスオブジェクト、インスタンスオブジェクト、メソッドオブジェクト、継承 第14回: クラス2: スコープと名前空間 第15回: 振り返り2(実践的なプログラミング、クラスやメソッドとスコープ)
|
■事前・事後学習 |
事前学習 ・講義用Webページ、教科書で予習しておくこと。第1回についてはPrefaceを読んでくること。第2回以降については授業は講義用Webページにて指示する。 事後学習 ・講義で実習したことを復習し、時間内にできなかった課題は次の授業までに行うこと。
|
■教科書 |
ISBN |
|
■参考書 |
ISBN |
|
■備考(メッセージ) |
ニュースグループ: ura.ie.classes.programming1, ura.ie.classes.basic-software
|
■オフィスアワー |
火曜日3限目,木曜4限目
|
■メールアドレス |
koji@ie.u-ryukyu.ac.jp
|
■URL |
http://www.ie.u-ryukyu.ac.jp/~koji/pw
|