■
○HTMLとCSS
・レイアウトを作成するのがHTMLだがそのままでは見栄えが悪いため、
CSSクラス(自前やBootstrapなどの公開フレームワーク)を関連づけることで
デザインを洗練できる。
・app/assets/stylesheets/に置かれたスタイルシートはapplication.cssの一部として
Webサイトのレイアウトに読み込まれる。
・パーシャル:
レイアウトを整理し、コードをリファクタリングするため(効率化)に、
コードの一部をパーシャルファイルに分ける。
パーシャルのファイル名は先頭にアンダースコアをつける。例:_shim.html.erb
呼び出す時はrenderメソッドを用いる。例:<%= render 'layouts/shim' %>
・アセットパイプライン:
開発効率と読み込み時間の両方に配慮した構造。
プログラマにとっては読みやすいままで、本番環境に最適化された接続を提供する。
・アセットディレクトリ:
静的ファイル(アセット)を目的別に分類した標準的な3つのディレクトリ。
2つのサブディレクトリが用意されており、app/assetsの場合は画像用
とCSS用のサブディレクトリがある(config、images、stylesheets)。
マニフェストファイル:
アセットを1つのファイルにまとめる指示を行うファイル。実際にまとめるのは、
Sprocketsというgem。また、適用されるのはCSSとJavaScriptで画像は適用外。
プリプロセッサエンジン:
ディレクトリに配置されたアセットを、ブラウザに配信できるようにマニフェスト
ファイルで結合し、プリプロセッサエンジンで実行する。ファイル名の拡張子で使用
するエンジンをRailsは判断する。Sass用の.scss、CoffeeScript用の.coffee、
ERB用の.erbなどが一般的。
・Sass
CSSに新たな機能を加えた言語。
ネスト:スタイルシート中の共通パターンをネストの内側に含めることで
重複を避ける。
.center {
text-align: center;
h1 {
margin-bottom: 10px;
}
}
変数:何度も用いるコードを変数として定義し、わかりやすく呼び出しやすく
したもの。
$light-gray: #777;
・名前付きルートの定義:
get '/help', to: 'static_pages#help'
→getリクエストが/helpに送信された時にStaticPagesコントローラーの
helpアクションを呼び出す。
・統合テスト(Integration Test)
アプリケーションの動作全てをシミュレートするテスト。ブラウザによるページ間の遷移がある場合、効率良くシミュレートできる。