Edited at

『徹底攻略Rails4技術者認定シルバー試験問題集』第1章の勉強メモ

More than 3 years have passed since last update.

徹底攻略Rails4技術者認定シルバー試験問題集』第1章「Rails概要」の勉強メモです。


第1章 Rails概要


問1


  • Action Pack は Action Dispatcher と Action Controller で構成されている

  • Action Mailer ではメールの送信だけでなく受信も可能

  • Railtie は Rails のプラグイン機構。Active Record、Action View なども、この機構を利用している


問3


  • app/controllers/concerns/、app/models/concerns/ に共通コードが置ける

  • フィクスチャは test/fixtures/ に置く


問4


  • rails new コマンドに省略形はない

  • rails generate view コマンドは存在しない(view というジェネレータは存在しない)


    • rails generate コマンドの省略形は rails g



  • rails destroy AAA BBB コマンドを実行すると、rails generate AAA BBB コマンドで作られたファイルが削除できる


    • rails destroy コマンドの省略形は rails d



  • rails dbconsole コマンドの省略形は rails db

  • rails console --sandbox コマンドでコンソールを起動すると、終了時にデータベースのトランザクションがロールバックされる


問6


  • rake -D コマンドで、タスクの説明文を途切れさせずに表示できる


問7


  • rake stats で、コードの統計が表示できる

  • rake notes で、TODO、FIXME、OPTIMIZEコメント行が表示できる


問8


  • String#html_safe で、「安全である」とマークされた文字列(ActiveSupport::SafeBuffer のインスタンス)が得られる


問9


  • Object#presence は、レシーバの present? メソッドが true を返す場合はレシーバ自身を、それ以外の場合は nil を返す


問11


  • Object#in?(val) は、val.include?(self) の結果を返す。ただし、val が include? メソッドを持たない場合は例外が発生する


    • Hash#include?(key) は、ハッシュのキーに key が存在する場合に true を返す




問12


  • Module.delegate で、別のオブジェクトにメソッドを委譲できる。1つ以上のメソッド名と、:to オプションで委譲先を指定するのが基本形


問13


  • Module.cattr_accessor は Module.mattr_accessor のエイリアスであり、クラス変数のアクセサが定義できる


    • Module.cattr_accessor にブロックを渡すことで、クラス変数の初期値が設定できる

    • Module.cattr_accessor のデフォルトでは、インスタンス用のアクセサも定義される(:instance_accessor オプションを false にすることで回避できる)




リンク