ソフトウェア工学
Menu Menuこの授業では、Haskell と Agda を使って、ソフトウェアの信頼性を高める手法の一つである証明について学びます。
参考書
「やさしい Haskell 入門 (バージョン98)」達人プログラマー アンドリュー ハント、デビッド トーマス (ピアソン・エデュケーション)
オブジェクト指向における再利用のためのデザインパターンエリッ ク ガンマ (著), ラルフ ジョンソン (著), リチャード ヘルム ( 著), ジョン ブリシディース (著), Erich Gamma (原著), Ralph Johnson (原著), Richard Helm (原著), John Vlissides (原著), 本位田 真一 (翻訳), 吉田 和樹 (翻訳)プログラミング作法
ブライアン カーニハン (著), ロブ パイク (著), Brian Kernighan (原著), Rob Pike (\ 原著), 福崎 俊博 (翻訳)やさしいUML入門 Javaオブジェクト・モデリング
浅海 智晴 (著)コードコンプリート —完全なプログラミングを目指してMicrosoft PRESS
スティーブ マコネル (著), Steve McConnell (原著), 石川 勝 (翻訳)Effective C++ 原著第3版
評価方法
演習の結果を総合して判定する。
授業計画
- ソフトウェア工学
- 集合、論理、関数
- 一階述語論理とシーケント代数
- Haskell 入門
- Haskell のFunctor
- Curry Howard 対応
- Agda
- Category と Natural Transformation
- Monad
- Monad の合成
- Hoare Logic
- Design Pattern と Refactoring
- Test と Debug
電子メールおよび ura.ie.classes.software のニュースグループを使用する。
古い授業
- EasyPackage
- Perl と Perl module
- Python
- 5分でわかる Ruby
- Ruby part 2
- Ruby UML Web framework
- Haskell part 1
- Haskell part 2
- Haskell part 3
- Haskell part 4
- Emacs Lisp
- Lisp part 2
- Coq
- Prolog
- Prolog part 2
- Object 指向
- AppleScript
- Objective C
- Server Programming
- Eralang