Ruby
Rails
RubyOnRails

新人Ruby / Rails開発者 を試す N の質問

More than 1 year has passed since last update.

「子孫クラスからしか使わないので、privateにしましょう」
「えっ?」

Ruby/Rails は間口が広い言語/FWです。

今まで他言語で開発していて最近Railsプロジェクトに入ってきたエンジニア・・・そう、あなた。あなたも公式・非公式のドキュメントを読めば、数日である程度のコードを書けるようになったはずです。

でも、「よし、Railsのことは大体わかってきたぞ」と思っていませんか?
初心者がハマリがちな落とし穴も実は色々あるんですよ。

この記事では、そういった落とし穴を炙り出す質問を列挙してみましょう。

なにはともあれ読んでおいて欲しいページ

とはいえ、落とし穴に炙り出す前に、基本的な資料は読んで置いた方が建設的です。

Rails チュートリアル
https://railstutorial.jp/

Rails ガイド
https://railsguides.jp/

Rails APIリファレンス
http://api.rubyonrails.org/

Ruby リファレンスマニュアル
https://docs.ruby-lang.org/ja/2.4.0/doc/index.html

Ruby 標準ライブラリ一覧
https://docs.ruby-lang.org/ja/2.4.0/library/index.html

Ruby編

Rubyのprivate / protected と、C++の private / protected の違いを説明してください。

private なクラスメソッドを定義する方法を説明してください。

Pythonでは bytes型とstr型がありますが、RubyにはString型しかありません。両者の違いを説明してください。

Gemfileには各gemのバージョンを様々に指定することができますが、いつ、どんな内容を指定するべきか、説明してください。

Gemfile.lock はVCSにコミットするべきかですか? 理由を説明してください。

Rails編

ActiveModel::Model の #assign_attributes メソッドの動作を説明してください

StrongParameterはなんのための機能か説明してください。

routesファイルで使えるメソッド、resource, namespace, scoping の機能を説明してください。

本来の「MVC」という用語における "model" と、Railsにおける "model" にはズレがあることがよく指摘されますが、ズレの内容について説明してください

Fat Controller 問題と Fat Model 問題について、問題の内容と解決方法について説明してください

以下、随時追加