@kotyのブログスマートフォン用の表示で見る@kotyのブログPythonとかAWSとか勉強会のこととかを、田舎者SEがつづります。BY"でお願いします。行ってきた.net↓こちらに行ってきました。http://kokucheese.com/event/index/2467/和田さん、@bleisさん、ほか主催者のみなさん、お疲れさまでした。セミナーやカンファレンスの現場に行くのはやはり楽しいです。以下日本語でおkですみませんが、メモ的なものを。Java、c/c++、.NETが大半かと思いきや、集団に偏りがあった。名古屋は関数型言語が盛んなよーだ。ocamlなんて初めて耳にしたよ。1日目午前TDDエヴァンジェリスト(?)和田卓人氏のTDD入門。仮実装でテストのテストをする。これに失敗するならテストにバグがある。「TDDの真の目的は健康です」っていうのはプログラマ始め現場の人間にとっては納得できるところだけど、えらい人にそんなこと言ったって「おめーらが楽するだけじゃないか。仕事ってのは厳しいもんなんだ!昔はな(以下略」って言われるのが関の山。部として、プロジェクトとして、会社としてTDDやるためにはトータルとしてコストを下げられるよっていうのをアピールしてくしかないんだろうな。和田さんが話の中で「仕事でペアプロやってるひといますか?」という質問に対して、手はあがらなかった。これが実際ってことか。1日目午後TDDペアプロ体験。VBで希望していたが人数が少ないためC#にしてと事前に言われていた。VB希望者が見つかりVBにて作成。ペアプロはちょっと気をつかってしまった。後輩にOJT的に教えることはあっても、力が同じ人どうしでプログラミングすることなんてないもんな。このへんは慣れかなぁ。DateTimeをラップしてシステム日付に依存しないようにテストを書くっていう、業務アプリにありがちな課題でした。いう条件付きコンパイルと、Interfaceで本物と偽物を切り替えるという二通りの実装があった。金融系のシステムの保守をやってるって人と話しけど、やはりお互い悩みは同じ。レガシーコードとの戦いです。2日目午前レガシーコード改善ガイドを元ネタに和田さんのお話と、参加者から提供のあったレガシーコードをテストで保護していくライブ。データと戦うDBもリファクタリングするテストコード量との戦いFragileTests・・・プロダクションコードをちょと直すだけでREDがたくさん出ちゃうテストコード大量のテストコードが足を引っ張る→テストをリファクタリングする。今のところこれといったKnow-HowなしMockを作るとMockのメンテが必要になる。テストの独立性とトレードオフテストが無い状態からすりゃ、贅沢な悩みっすね。継ぎ目)を探す、作る何が正しいか<<どう動いているか→仕様化テスト現状を正としてテストに記録していく。仕様化テストが作れればもう勝ったようなもんですねー。サンプルとなったレガシーコードは外部の依存がなくて比較的簡単な方な印象なんだけど、それでもあれだけ苦戦してしまうのだからやはりレガシーコードの戦いは辛く険しいもんです。@bleisさんのテストメソッド名のつけ方は参考になった。○○のとき_△△が返る。2日目午後winformの中に書かれた業務ロジックの分離。こればっかりは命綱なしでやるしかない。