C++勉強会in広島に参加してLTしてきました。

テスト駆動開発がオープンセミナー2014@広島のテーマのひとつなので、C++ のテスティングフレームワークである CppUTest を試しすことで告知するという手法をとりました。

C++は大学生のころ勉強していたようなそうでもないような、More Effective C++ ぐらいは読んだかなぁ。 そういえば丸善出版で再販されるそうですね。よかったよかった。

冷静に考えると C++ で書いたプログラムをビルドするのに Makefile を書いたのは、はじめてな気がしたり、clang++ をコマンドから使うのがはじめてだったり、LT をしようとすることでいろいろ勉強になるなぁ、と感じました。 勉強会があるので、そのために勉強するのも良い方法だと思います。

「まとめ」が「まとめ」じゃないって言われたので、今度から「いろいろ試した結果、最終的な結論」とかにしたいと思います。

実際に動作確認するのに使用したソースコードは GitHub に置いています。

  • src/test_runner.cpp がテストを実行する部分です。
  • src/factorial_test.cpp がテストコードです。
  • src/factorial.hpp が階乗求めるプログラムの実装部分です。

make を実行するとビルドしてテストを実行するようにしています。

そういえば test というディレクトリを最初つくっていて、 make test した時に test ディレクトリがあるせいでうまく動かなかったりしました。 一般的にはどうするんだろうか。

その他の発表

南山まさかず氏 の Template Meta Programming なんかは全く知らない世界でした。 シンタックスを気にしなきゃ、純粋関数型プログラミングと見なせるようだったので、がんばれば使えそうな気がしてきております。 ちょっとぐらいサンプルコードを書いてみたいと思いますが、コンパイルエラーの解読がきっとつらいんだろうなぁ、と想像してます。

uchan_nosさんのC++でできる!OSの自作入門は、知ってる範囲のこともあったりそうでないところもあったりでおもしろかったです。 プログラム書いてたらOSの仕組みやらブートシーケンスはやっぱり知りたくなりますよね。

「フリースタンディング環境」という言葉は初めて知ったので、いろんな言語のそのあたりの状況もちょっと気になっております。

その他、全体の雰囲気はTogetterのまとめをみるほうがわかりやすいかもしれない。