タグ

ブックマーク / naoty.hatenablog.com (4)

  • Swiftのオブジェクトグラフを生成する flock を作った - AnyType

    Swift で定義されたオブジェクト間の依存関係を可視化する flock というツールを作った。これによって、 Swift で書かれたコードベース全体を把握しやすくなったり、リファクタリング時に影響範囲を把握しやすくなる。 Usage Homebrew からインストールできる。 $ brew tap naoty/misc $ brew install flock flock は指定したディレクトリ(何も指定しなければカレントディレクトリ)以下の Swift のソースコードを解析して dot 形式のソースコードを出力する。これを Graphviz 等を用いて画像に出力して使う。 $ flock <directory> 試しに Alamofire で flock を試してみた。 横長になってしまうので、一部を切り取った。 コードの依存関係がハッキリと把握できるようになった。 How it wo

    Swiftのオブジェクトグラフを生成する flock を作った - AnyType
  • Alamofireを読んだ - AnyType

    Alamofireとは https://github.com/Alamofire/Alamofire Swiftで書かれたHTTP通信ライブラリ。 AFNetworkingの作者であるmatttさんの新作。 AFNetworkingをリプレースするものではなく、AFNetworkingはSwiftでも安定して動くのでそのまま使えるとのこと。(参考: http://nshipster.com/alamofire/の最後の方) ファイルはAlamofire.swiftだけで1000行に満たない。 使い方 Alamofire.request(.GET, "http://httpbin.org/get") .responseJSON { (request, response, JSON, error) in println(JSON) } Alamofire.request(.GET, "http

    Alamofireを読んだ - AnyType
  • ChefでRaspberry Piをセットアップする - AnyType

    仕事で複数台のRaspberry Piをセットアップすることになったので、Chefを使ってセットアップを自動化することにした。Chef、Vagrant、Serverspecなどいろいろな周辺ツールの全体像を整理したり、それらを使ったワークフローを体験できてよかったので、ブログとして残しておく。 また、セットアップに使ったChefのレポジトリはgithubホストしてあるので参考にどうぞ。 https://github.com/naoty/chef-repo 今回、Chefで自動化したのは以下の通り。 apt-getの更新 gitのインストール rbenvを使ってRuby 2.0.0-p247をインストール nodebrewを使って最新安定版のnode.jsをインストール Wiringpi(GPIOを簡単に操作するためのライブラリ)のインストール mjpg-streamer(Webカメラを使

    ChefでRaspberry Piをセットアップする - AnyType
  • Railsに組み込むgemを作るためのTips - AnyType

    params_inquirerというgemを作りました。何ができるかと言うと、文で説明するのがなかなか難しいので、下のコードを見てください。 # users_controller.rb def index if params[:status].accepted? # params[:status] == 'accepted' と同じ @users = User.accepted elsif params[:status].rejected? # params[:status] == 'rejected' と同じ @users = User.rejected else @users = User.all end end params_inquirerを使うと上のaccepted?のようなメソッドがparamsに対して呼べるようになります。すでにrubygemsで公開してるので、ちょっと試して

    Railsに組み込むgemを作るためのTips - AnyType
  • 1