valid,invalid

関心を持てる事柄について

8/10学んだこと / Ruby開発環境 ( vim / Vagrant ) / CoffeeScript / jbuilder / 英語

Ruby

今更ながら、Rubyの開発環境について何も知らなかったので色々調べていた。vimが主流ぽい。

vim

JavaはEclipe、PythonAtomで書いてきたのでvim力が低い…。vim力上げていきたい。

$ brew unlink vim
$ brew install vim --with-lua
$ curl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh | sh

以下のリンクを参考にしつついくつかvim plugin入れてみたりした。NeoBundleというplugin管理方法がわかったので、あとは開発する中で考える。

+luaなvimをインストール - ko2ic Blog

Javaエンジニアがいまさら始めるRuby開発環境 - Qiita

仮想環境

何も考えずに bundle install とか gem install してたらMacにバンドルされてるRubyが汚染されてるぽい。

Pythonでいうpyenvみたいなのないか、そういえばRuby開発ではvagrant使う〜みたいな話を聞いたことがあったので調べてみた。 調べたらvagrantは仮想環境管理ツールで、pyenvに当たるのはrbenvとのこと。間違えてた。

いちいち仮想環境入れるの重そうでいやな気もしたけど、時代は仮想化なので試してみることにした。

rails-dev-boxという便利なのがあるらしいので試している。

Ruby on Rails の開発環境を自動で構築するプロジェクトのこと。vagrantのBoxとプロビジョニングがセットになっていて手早く開発環境が構築できる。 [Mac] rails-dev-boxで環境構築 - Qiita

$ brew cask install virtualbox
$ brew cask install vagrant
$ git clone https://github.com/rails/rails-dev-box.git
$ vagrant up

/rails-dev-box ディレクトリ以下は仮想環境の /vagrant にマウントされるので、 自分のrepositoryを /rails-dev-boxgit clone してきて、そのファイルをローカルホストで編集したらそのまま仮想環境に反映されて良い。

Ruby on Rails

↑の環境構築後、既存のRails × Marionetteアプリをvagrant上に置いて動かしてみた。

とりあえず動くようになったのであとはソースを読んで Backbone.js × Marionette.js、およびRailsでのRESTについて理解していきたい。

jbuilder

Railsにはjbuilderというテンプレートエンジンがあるとのこと。

jbuilderとは

jsonのテンプレートエンジンです。 xxx.json.jbuilderファイルにDSLを記述するとJSONにして返してくれるという物。 ファイルに記述するので難しいjson形式を返す時とかは便利そうです。 DHHが作ったもので、Rails4からはデフォルトで使えるようになっているようです。 Rails4でJSONを作るならto_jsonよりjbuilder - しめ鯖日記

RESTfulなサーバとして開発するときはかなり良さそう。

Coffeescript

単独で学ぶより、Backbone.js、Marionette.js、Railsとあわせてやったほうが効率よさそうなのでそうする。コンパイルが自動化されるRailsのAsset Pipelineが便利で助かる。

英語

外ではDuo3.0のCD聴きまくってた。

銀座で地図見てる白人がいたので「May I help you?」してみた。一応質問には答えられたけど、ネイティブの英語はやっぱりほとんど聞き取れず絶望した。