SCMBootCamp in Tokyo 3 に参加しました
2012/07/21に開催された,SCMBootCamp in Tokyo 3 に参加してきました.
初めて夜行バスに乗って大阪〜東京間を移動したのですが,思っていたよりもずっと乗り心地が良かったです.
早朝に頑張って起きて新幹線で移動するよりも,場合によってはこちらの方が良いかも,と思えたのは収穫でした.
会場はニフティ様提供のセミナールーム.広い部屋にプロジェクタが3台あって快適な部屋でした. (デジカメ忘れたので画像はありませんが...)
午前中は基調講演,午後はハンズオンという形式で,ハンズオンの
お題は使っているDVCSのチートシートをつくる.というもの.
自分はgitを使っているため,登録もgitで行ったのですが
一人で使っているため普段ははgit add git commit git log git checkout位.
今回はチーム作業ということもあり,初めてのコンフリクト祭りを体験することが出来て非常に勉強になりました.
(実はこれまで コンフリクトの解消方法もしりませんでした)
github上の共有リポジトリ役をやらせて頂きましたが,githubの使い方をよくわかってなかったので,
アクセス権限の追加時などに手間がかかってしまいましたのは反省点です.
関西組み込み小僧勉強会に参加しました
6/16(土) 第三回 関西組み込みこぞう勉強会に参加してきました.
TDDBC 大阪 1.0に参加しました!!
2012/06/02に, [twitter:@bufferings] さんの主催する
TDDBC 大阪 1.0に参加しました.
総括
東京のTDDBC for C++ 以来2回目となるTDDBCの参加でしたが,
非常に楽しかったです.
以前のTDDって何?っていう状態から一歩進んだ考え方ができました.
会場の感想
楽天株式会社 大阪支社様内部のカフェテリアでの開催となりました.
会場は4月に作られたという事もあって非常に綺麗で広々としています.
プロジェクタ,ネット環境も完備しているので勉強会をやるのには
非常に良い環境でした.
唯一難点を挙げるとすれば,カフェテリアのイスなので長時間座っていると
腰が痛くなることでしょうか.
まぁこれも座布団持ち込むなりすれば解決しそうな気がします.
ペアプロ実施の感想など
当初C or C++で人数合わせられる方に入ろう,と思ってたのですが
予想以上にC言語は人気が無く,C/C++の意味ないんじゃない?という感じでした.
最終的にC言語希望の [twitter:@cozykaz] さんがいたのでペアを組むことに.
C言語でのTDD修羅道を邁進することになりました.
テストフレームワークはcmockery を使う事にして,環境設定をしたのですが
午前中はgithubの設定に手間取ったためPC交換で駆動することにしました.
フレームワーク自体も使った事があまりない(そもそもCでのTDDは経験がない)ので,
右往左往していたら,TAの方から「テストフレームワークの使い方を調べる(素振り)」を
した方が良い,とのアドバイスを頂き,成功,失敗時の各挙動を調べました.
後々のテスト実行効率を上げられたのも,フレームワークに対する迷いが無かったことなので,
この時点でこのアドバイスが頂けたのは非常に助かりました.
他のチームがC++,Groovy,Rubyなどのモダンな環境を使う中,泥臭くやっていましたが
TDDの演習を通して実際の業務での実践方法が見えてきた感があり,
良い経験だったと感じています.
またPCUnitというC言語向けフレームワークの情報を頂いたので,ちょっと試してみたいところ.
懇親会で [twitter:@kyon_mm] さんから気づきを頂く
懇親会の間に[twitter:@kyon_mm] さんと少しお話をさせて頂き,その際に聞いた事が
非常に参考になったので忘れないようにメモ.
実際にTDDを製品に適用するテスト環境を構築する際の視点としたい.
- テストの観点別にテストコード(ファイル, クラス etc)を分ける
- 観点とは「構造に依存したテスト」「ロジックに依存したテスト」など
- 何に依存したテストか,を明確にすることで早いうちでの影響見積もりができる
- テストに多少の重複があるかもしれないが,観点がきちんと別になっていれば問題はない.
- テスト観点が明確になっていることで,拡張性のしやすい(≒テストの弱い)ところなどが判断できる
TDDBC tokyo for C++ に参加しました
なかなか関西でTDDBCが開催されないため、
ついに我慢できずに東京で開催されたTDDBC for C++に参加しました。
http://www.zusaar.com/event/agZ6dXNhYXJyDQsSBUV2ZW50GK_kBgw
以前からTDDには興味があったのですが、
実際に使用してみようとしてもうまくいかず、実際に使用している方は
どうやっているのか?というのが気になっていました。
今回自分の好きな言語であるC++でのTDD Boot Campが開催されるという事で
ちょっと距離はありましたが参加することにしてみました。
当日の感想
当日は朝5時起床で新幹線に乗り現地会場へ行くという
強行軍でしたが、それだけの価値はありました。
とりあえずバイブル的な「テスト駆動開発入門」で予習はしていたものの
TDDレベル1程度での参加となりました。
演習はペアプロ
演習はペアプロで行われたため初ペアプロを体験することとなりましたが
充実感を得られると同時にむちゃくちゃ疲れるのが実感できました。
リアルタイムで指摘を受けられる、人の書くコードを見れる、というのは
非常に刺激になります。
TDDをやってみて感じたこと
変更に対する安心感が非常に高い。
テストを走らせれば外部から見た振る舞いが変わっていないのがわかるのは安心できます。
設計が改善されていく
Red→Green→Refactor のサイクルで、設計が改善されていくのが楽しくなってきます。
達成感がある
RedだったコードをGreenにしたとき、リファクタリングをしてGreenのテストが再度通った時、など
達成感を感じるタイミングがあり、やりがいがあります。
今後に向けて
演習時に自分のTDDスキルがまだ弱くテストを書く前にコードを書いてしまい、
後であわててテストを書くような場面が何回かあり、反省材料です。
TDDは繰り返す事によって身につくようなので今後も実践してTDD力を高めていきたいと思います。
関西方面や名古屋、岡山あたりでTDDBCがあれば、また参加したいと思います。