タグ

デザインパターンに関するhitoriblogのブックマーク (4)

  • Cocoa iOS デザインパターン

    Cocoa iOS デザインパターン どうも今のインターネット※の上ではMacよりも、iOSのコードやフレームワークを前提にした話が多いせいか、“Cocoa” という言葉を見なくなってきたように見えるのは、iOS前からCocoaを書いてきた人間にとっては少し悲しいことである。 そんなことはどうでも良くて、最近他人の書いたiOSのコードをよく見るのだが、その書き方、クラスの切り方、命名規則、カテゴリの使い方、継承の使い方、デリゲートなど各種パターンの使い方などなどその差は千差万別である。最初にCocoaを使ったという人は希少で、その大半は以前にC#, Java, Ruby, Python, PHPやそれらでよく使われているフレームワークを使っているがゆえ、CocoaらしいCocoaを書いている、書けている、または意識している人は少ないかもしれない。 Cocoa的な書き方は何で正解であるかとい

    Cocoa iOS デザインパターン
  • 状態管理用の変数をインスタンスに持たせるなこのタコって話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く

    たとえば、今、「ユーザーが方向を入力したらプレイヤーが動くゲーム作りたい」みたいなはなしがあるとする。その場合、モデルクラスはまあシンプルな実装として下のようなものが考えられると思う。 「できたよー」って見せにいったら、今度は「あのさー、『高速移動モード』っていうモード欲しいんだよね。そのモードだと二倍速で動くの」って言われたとする。シンプルにやるとこうなりますね。 「できたよー」って見せにいったら、今度は「なあ、すげえ面白いこと考えたんだけど、『蟹モード』って面白くない?横は4倍速で動くんだけど縦は半分の速度で動くの」とか言われたわけです。あなたは「お、おう」と言って、以下のようにコードを修正しました。 これ、ヤバい感じしますね。破滅の匂いがする。「今度は『よっぱらいモード』欲しいな〜。入力に関係なくランダムに動くの」みたいなこと言われたら確実に複雑さが爆発してメンテ不能になりになり死

    状態管理用の変数をインスタンスに持たせるなこのタコって話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く
  • Objective-Cのテストでのモックとかスタブとか差し替えの話 - yaakaito's diary

    こんにちは!元気にiOS開発でテストを書いていますか???まだ書いていない人は、さっさと書きましょうね!!!今回はObjective-Cでテスト書く上でのモックオブジェクトとかのお話です。 OCMockというライブラリ使うのでCocoaPodsはインストールしましょう! 先にOCMockについて少しだけ 実際にOCMock使ってどうこうはちょっと先の話になってしまいますが、簡単にOCMockの説明だけしておきます。 Mulle kybernetiK -- OCMock Objective-Cのモック系のライブラリにはほかにもOCMockitoやExpectaなどがありますが、個人的にはOCMockが好きです。 有名なBDDフレームワークのCedarなんかでも、OCMock使うといいよ〜と言ってるので、そういう意味でもおすすめですね。 で、OCMockは何するの〜という話なのですが

  • FeedManager の実装 - オフライン機能の実現 #3 (MacBloggerGlass)

    身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 前回の記事で書いたように(→「オフライン機能の実現 #2」)、フィードデータの保存、読み込みは、FeedManager と呼ぶ管理用のクラスを作り、ネットワークからのデータの取得と合わせて、その詳細を隠すことに決めた。 今日は、その FeedManager を作っている。残念ながら FeedManager はまだ完成していない。今回は、この実装の過程で気付いた注意点を 2 点ほど書き留めておく。 シングルトン・パターン FeedManager にはシングルトン・パターンを使う。Cocoa でシングルトン・パターンを使うには少し注意が必要だ。簡単に言うと、NSObject で定義ずみのいくつかのメソッドを上書きしなければならない。また、シングルトン・パターンには付きもの

  • 1