タグ

ブックマーク / blog.katty.in (6)

  • WEB APIのURL設計のトレンドはこれだ!WEB APIのURL設計まとめ

    APIのURL設計をしようと思い、その前に有名サービスのAPIのURL設計がどうなっているのかについて調べました。 一覧を載せた後に、「多数派なURL設計」を書きたいと思います。

    WEB APIのURL設計のトレンドはこれだ!WEB APIのURL設計まとめ
  • Amazon EC2のOpenJDKのアップデート

    AWSのフォーラムから。 Java 7 SDK on Amazon Linux AMI 「Amazonのyumリポジトリに、Java 7を入れてほしいです」からの「入れました!」というやりとりを見てアップデートしてみました。 Amazon Linux AMI 2012.09で追加 Amazon LinuxのAMIは半年に一回更新されていて、現在の最新バージョンは2013年3月のリリースです。 その一つ前のAMIでJava7に対応したそうです。ただ、yumリポジトリにJava 7が入っているというだけで、2013.03のAMIでも、デフォルトでインストールされているのはJava 6です。 $ java -version java version "1.6.0_24" OpenJDK Runtime Environment (IcedTea6 1.11.11) (amazon-61.1.11.

    Amazon EC2のOpenJDKのアップデート
  • Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス

    「Objective-CのBlocksの循環参照とその解決策」では、Blocksのメモリ管理の難しさと、世間ではよく使われている「weakSelfパターン」があまり良くないのではないかということを書きました。 このブログでは、いろいろ考えた結果たどりついた、僕が考えるBlocksの使い方を書きたいと思います。 サンプルをgithubに載せましたので、良ければそちらも参照してください。( BlocksMemoryExample ) Blocksを安全で便利に使うために必要なこと 先に、Blocksを安全で便利に使うためには、どんなことが必要なのかというのを考えておきたいと思います。 循環参照におちいらず、使用後に解放される。 使い手が内部の実装をできるだけ意識する必要がない。 おまじない的なコードを書く必要がない。 できるだけBlocksに渡すオブジェクトの存在を保証する。 そして、Bloc

    Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス
  • Objective-CのBlocksの循環参照とその解決策

    半年までは、Objective-Cでコールバックの処理は、delegateを使って実装していました。しかし、delegateによるコールバックは処理の繋がりが分かりにくいというデメリットがあります。 これは皆さん感じるところだと思いますが、実際に最近のObjective-C開発は、Blocksを使って記述するのがトレンドだと思います。 ただ、メモリ管理に関して少し注意しなければならない点があるので、検証結果も合わせて記していきたいと思います。(少し長くなるので2回にわけて書きたいと思います。) Blocksで処理を行う これは簡単なサンプルです。BlocksRunnerクラスは、Blocksで渡された処理を保持し、runメソッドが呼ばれた時にその処理を実行します。 int main(int argc, const char * argv[]) { @autoreleasepool { Bl

    Objective-CのBlocksの循環参照とその解決策
  • Objective-Cのクラスの依存関係を画像ファイルに出力

    試しに使ってみた。 cd ~/git git clone https://github.com/nst/objc_dep.git python ./objc_dep/objc_dep.py ~/sample_app/ > ~/Desktop/sample_app.dot 生成されたファイルをGraphvizというアプリに入力すると・・・ カオス!! 左側が自前ソースコードで、右側がライブラリ部分なのですが、ライブラリが結構巨大なためこのようなことに・・・。 プロジェクト単位でなくても良い。 基的にクラスの依存関係を追っているだけのようなので、かならずしもプロジェクトの全てのファイルを入力する必要はないようです。 たとえば、アプリのログイン関連のクラスをLoginディレクトリ内に入れていた場合、そのディレクトリだけを指定すれば小さくまとめることができます。 python objc_dep.

    Objective-Cのクラスの依存関係を画像ファイルに出力
  • tmuxで画面分割したり一斉にキー入力を送信したりする

    複数のサーバに同じコマンドを送れたりしてとても便利なtmuxのインストール では、tmuxで複数サーバに一気に接続して一気にコマンドを投げられるのが便利だと書きました。それを早速やってみます。 起動する ターミナル開いてtmuxと叩くと起動します。 tmux 下の緑色のバーがポイントですね。 画面を分割する。 コマンドは基的に、Ctrlとbの同時押しから始めます。 画面を縦に分割するには次のコマンドを打ちます。 Ctrl+b " 画面を横に分割するには、次のコマンドです。 Ctrl+b % 分割された画面はペインと呼ばれます。ペインを移動するには、次のコマンドを打ちます。 Ctrl+b o 全部の画面に同じコマンドを送る それぞれの画面で別々のサーバにSSH接続するなどした後に、次のコマンドを打つと入力が全ての画面に送られます。 Ctrl+b :set-window-option syn

    tmuxで画面分割したり一斉にキー入力を送信したりする
  • 1