Blocksの活用法について

iphone_dev_thk 仙台iOS開発者勉強会! 2012/3/3 にて「Blocksの活用法」について発表してきました。内容はBlocksの基本的な部分の説明と下記の3つのソース解説です。

勉強会ではBlocksの仕様、挙動、ハマりどころを踏まえ、拡張のテクニック等の突っ込んだコアな内容までやったので時間的にも多少厳しかったかもしれません。まあ便利になりそうな雰囲気だけでも掴んでもらえればと思います。

今回の勉強会で使用した資料とサンプルコードはアップしてありますので参照ください。

スライド

解説に使用したサンプルコード

https://github.com/hmori/MyBlocks


今回サンプルコード解説では大きく分けて、BlocksKit自体の使い方、UITableView+BlocksKitExtendsの実装と使い方、UIViewControllerの基底拡張クラスの実装と使い方を中心に行いました。

MyBlocksでは下記のそれぞれ下記のGroupに実装しています。

  • BlocksKitSample (BlocksKitの使い方)
  • TableViewSample (UITableView+BlocksKitExtendsの使い方)
  • ViewLifeCycleSample (UIViewControllerの基底拡張クラスの実装と使い方)


まず最初にソースを見ないで色々と動作させてみて実装方法をイメージしてみてから、実際にソースを見てみるとかなりギャップがあると思います。色々と無茶してはいますがスマートに纏まっています。Blocksによる拡張はアイディア次第で疎結合な実装が簡潔に行え、ビジネスロジック部を切り出すことが可能です。
本当にiOSコーディングスタイルを変えるほどのインパクトがありますので、これを機にBlocksの拡張実装を検討してみては如何でしょうか。