Boost.勉強会 #15 札幌を開催しました

Boost.勉強会 #15 札幌を開催しました

Boost.勉強会 #15 札幌について

Boost.勉強会 #15 札幌を開催しました。 多くのご参加ありがとうございました。 運営に携わっていただいた方々もありがとうございました、お疲れさまでした。

前回のBoost.勉強会 #6 札幌から2年半ぶりの開催となりまして、札幌市内のみならず、市外、道外からも多くの方に参加していただけてとても嬉しかったです。
登壇者の発表内容もさまざまで面白かったです。

当日は、利用した北大施設のネットワーク環境が不調で、ちゃんとしたネットワークを提供できなかったのが残念です。
ちなみに、動画配信に際してUstreamではなくYoutube Liveというサービスを利用したのはこれが関係していたりします。

今回の勉強会で初めてお会いした人や、久しぶりに会えた人もいて、いろいろと話ができて良かったです。
とはいえ、いつも勉強会と懇親会の後に「あの人とももっと話しておきたかった」とか思うので、また勉強会とかイベントを主催したり参加したりして、お話する機会ができるといいなと思います。

f:id:heisseswasser:20140524210558j:plain

C++のポーズ!」

自分の発表の補足と反省点

今回僕はbalorというライブラリを紹介しました。 発表資料はこちら

balor(読み方がわからないので、僕はバロールと読んでいます)は、syanjiという人が作ったC++ Windows GUIライブラリです。

サイト紹介されている通り、

  • WIN32 APISTL と連携しやすい。
  • 無名関数(ラムダ式)によるイベント記述。
  • 右辺値参照サポートによってインスタンス作成にヒープメモリ割り当てを強制しない。

などの特徴があります。

これらよって、MFCよりも簡単にコードを書くことができ、SIGNAL/SLOTの仕組みをもつQtよりも純粋にC++の世界でコードを書けるものになっています。

balorは32bitプラットフォームでのビルドをサポートしていますが、残念ながら64bit版をサポートしないまま開発が停止してしまっています。
そのためこのライブラリを広く使っていくことはためらわれますが、簡単にWindows 32bit GUIアプリケーションを書くには非常に便利だと感じています。

そして、これが一番伝えたかったことなのですが、
balorは右辺値参照やラムダ式などモダンなC++の書き方でGUIプログラミングができるものであり、MFCやQtにはない特徴を持っていて面白いライブラリです。 (ただしラムダ式によるイベントハンドラの設定はQtでもQt5から可能)
ここらへんもうちょっと時間を割いて紹介できればよかったとちょっと後悔しています。

僕はいままでC++GUIライブラリとしてMFCを使って来て、Qtは少し触ってみた程度でしたが、初めてbalorに触った時、C++のモダンな考え方が取り入れられたこのライブラリによるGUIプログラミングを非常に楽しく感じました。

balorは開発が停止してしまっていたり32bitしかサポートしていないなどの欠点のため、利用できるシーンは限られますが、 直接ライブラリを利用しないとしても、他のGUIライブラリにはない上記の特徴は自分でGUIライブラリを書いたりするときに参考にできる部分もあると思います。 江添さんのブログでは使うべきではないとまで断言されてしまってますが、僕としては使う使わないはともかく面白いライブラリですよという点を伝えたかったので、そこがうまくできなかったのが残念です。

そんなわけで勉強会で紹介してみた次第でした。

(ところで、balorの64bit対応はそんなに難しいことではないかもしれなくて、balorのVisual Studioプロジェクト構成でプラットフォーム設定を64bit版にしてビルドして、出てきたコンパイルエラー数個を修正するだけで、今回用意したサンプルアプリケーションを64bit版でビルドできてしまいました。この辺りは今後別の記事で書くかも)

第2回 Sapporo.vim(の懇親会に)参加しました

第2回 Sapporo.vimを寝坊しました。

Boost.勉強会のあとカラオケオールして、目覚ましかけて仮眠したらバッチリ寝過ごしてしまいました。

起きて準備して会場のインフィニットループ社に着いたらもう終了の時間だったという・・・。
でも懇親会へは参加して、Vimの話とか、例外安全性の話とかして、数学の話とか聞かせてもらって、みんなで@thincaさんにプレッシャーかけたりして、めっちゃ楽しかったので大満足でした!

quickrunめっちょ便利