タグ

BlocksとiOSに関するrabbit2goのブックマーク (4)

  • Cocoaの日々: 10分でおぼえるBlocksの書き方

    iOS/iPhone/iPad/MacOSX プログラミング, Objective-C, Cocoaなど Blocksが使えるようになってはや数年。未だに書式が覚えられないわたし(あなた)の為に書き方をまとめてみた。 基型 戻り値 (^名前) (引数)(私が勝手に決めた)基型はこれ。これを覚えないことには始まらない。とにかくこれだけは覚える。 戻り値と引数は一般的なCの関数の書き方と同じなので、名前の書き方だけ (^名前) になったと覚えるのがいい。 (例)BOOL (^completion)(BOOL canceled) = ...;この基型を元に各場面でどう使うかを見ていく。 変数宣言・typedef宣言 変数宣言なら 戻り値 (^名前) (引数) = …;typedef宣言なら typedef 戻り値 (^名前) (引数);両方とも基型がそのまま使える。 (例)type

    Cocoaの日々: 10分でおぼえるBlocksの書き方
  • iOSコーディングスタイルを変えてしまうBlocksKitの紹介 - 中継地点

    iOS4からBlockが導入されました。利用目的としてはDelegateパターンと大差ないと思っていますが、処理記述が呼び出し元で記述できることで可読性が高くなります。 また、コールバック時に利用されるperformedSelectorが非常に使いづらく複数の引数となった場合などを考慮してNSDictionaryで定義したりInvocationを使う必要がったりと面倒な点が多々ありました。 今回は、CoreFoundationにカテゴリで組み込まれたBlockを活用したBlocksKitフレームワークを紹介したいと思います。かなり便利なため、今後のコーディングスタイルを変えてしまうほどのインパクトがあると個人的には思っています。 BlocksKit https://github.com/zwaldowski/BlocksKit BlocksKitはBSD, MITライセンスの元で利用可能で

    iOSコーディングスタイルを変えてしまうBlocksKitの紹介 - 中継地点
  • Using GCD and Blocks Effectively

    With iOS 4.0 Apple introduced two new technologies to the iOS platform: Grand Central Dispatch, and blocks.  Simply put, it is to multi-threaded programming what fire is to a barbecue.  Sure you can do without it, but the end result is much better. Despite all this, developers still seem to avoid using it. Some of the reasons for this, off the top of my head, could be backwards-compatibility for o

    Using GCD and Blocks Effectively
  • ブロックを使ってHTTP通信 – なんてこったい

    OS X 10.6, iOS 4.0から使えるようになったブロック構文。iOS 3系のデバイス(特にiPad)のことがあったため、なかなか格的に使う機会が訪れなかったのですが、先日iPadもOSが4.2となりブロックが使えるようになり、これでようやくブロック構文を格的に使って実装を行っていく事ができそうです。 ブロックを使うメリット 詳解Objective-C 2.0(改訂版)には「ブロックオブジェクトを用いることで、関数を呼び出す箇所で行いたいと考えていることを、まさにその位置に、そこにある情報を利用して記述することができる(P.331)」と書かれています。 例えば、通常非同期処理を実装するときは処理が完了したときに実行したいコードをコールバックメソッドという形で実装します。この方法で実装すると、非同期処理を呼び出しコードと結果をうけて実行されるコードがソースコードの中で別々の所に記

  • 1