C++ Mix #2
C++ Mix の第2回に参加してきたメモ。
iOS パズル「パズモナ」の秘密, @5mingame2
C++ でゲーム作った話。
フレームワークとして CINDER というものを採用してる。
また方針として new と delete は使わず、
包含やスマートポインタでどうにかしている。
また UI は boost::any を使用して書きやすくしている。
UI 周りは詳しくないが、や利用あるもんなんだろうか?
Qt x Reactive Extensions, @tetsurom
Reactive Extensions と Qt の話。
Rx の説明として「values-distributed-in-time」というのは初めて聞いた。 あとオブザーバパターン、イテレータパターン、関数型プログラミングのいいとこ取りというのも。
C++ でも RxCpp があるのは意外だったが、run loop は自分で仕込む必要があるらしい。 あと Qt と RxCpp をつなぐライブラリを作ったとのこと。うまく Qt の難しい部分を解決できているらしい。
C++のパッケージマネージャ「poac」を開発した話 @matken11235
poac は C++ 向けのパッケージマネージャ。 以前に聞いたときは「開発している」話だったので、結構進歩あったっぽい。 この発表を見てインストールしてみたがなかなか使えそうな感じ。
公式のドキュメント(https://docs.poac.io/ja/)を見ながら実行するとこんな感じになる。 これから対応パッケージが増えることに期待。
% poac new hello
Your "hello" project was created successfully.
Go into your project by running:
$ cd hello
Start your project with:
$ poac run
% cd hello
% poac install hello_world
==> Resolving packages...
==> Resolving dependencies...
==> Fetching...
● hello_world 0.1.0 (from: poac)
==> Done.
% vim main.cpp
% poac run
==> hello
Compiled: Output to `_build/bin/hello`
Running: `_build/bin/hello`
Hello, world!
雑談タイム
なんというかここが本番だった気がする。