ソフトウェア工学

Menu Menu

この授業では、Haskell と Agda を使って、ソフトウェアの信頼性を高める手法の一つである証明について学びます。


参考書

「やさしい Haskell 入門 (バージョン98)」

すごい Haskell Miran Lipova

達人プログラマー アンドリュー ハント、デビッド トーマス (ピアソン・エデュケーション)

    オブジェクト指向における再利用のためのデザインパターンエリッ
    ク ガンマ (著), ラルフ ジョンソン (著), リチャード ヘルム (
    著), ジョン ブリシディース (著), Erich Gamma (原著), Ralph Johnson
    (原著), Richard Helm (原著), John Vlissides (原著), 本位田
    真一 (翻訳), 吉田 和樹 (翻訳)

プログラミング作法
    ブライアン カーニハン (著), ロブ パイク (著), Brian Kernighan (原著), Rob Pike (\
    原著), 福崎 俊博 (翻訳)

やさしいUML入門 Javaオブジェクト・モデリング
    浅海 智晴 (著)

コードコンプリート —完全なプログラミングを目指してMicrosoft PRESS
    スティーブ マコネル (著), Steve McConnell (原著), 石川 勝 (翻訳)

Effective C++ 原著第3版


評価方法

    演習の結果を総合して判定する。
    


授業計画

  1. ソフトウェア工学
  2. 集合、論理、関数
  3. 一階述語論理とシーケント代数
  4. Haskell 入門
  5. Haskell のFunctor
  6. Curry Howard 対応
  7. Agda
  8. Category と Natural Transformation
  9. Monad
  10. Monad の合成
  11. Hoare Logic
  12. Design Pattern と Refactoring
  13. Test と Debug

電子メールおよび ura.ie.classes.software のニュースグループを使用する。


古い授業 

  1. EasyPackage
  2. Perl と Perl module
  3. Python
  4. 5分でわかる Ruby
  5. Ruby part 2
  6. Ruby UML Web framework
  7. Haskell part 1
  8. Haskell part 2
  9. Haskell part 3
  10. Haskell part 4
  11. Emacs Lisp
  12. Lisp part 2
  13. Coq
  14. Prolog
  15. Prolog part 2
  16. Object 指向
  17. AppleScript
  18. Objective C
  19. Server Programming
  20. Eralang


Shinji KONO / Wed Jul 22 14:38:31 2020