Rails

「サブクラス化するのは、スーパークラスの実装をよく知っているときに限るべきだ」

Rubyでは、サブクラスで親クラスのprivateメソッドやインスタンス変数を上書きしてしまい、見付けづらいバグを出すことがあります。このことについて、オライリーの『プログラミング言語Ruby』P248では、次のように述べています(P250も参照)。 Rubyでサブ…

Railsの開発環境の自動再読み込みはどうやってるのか

以前から気になっていたけど調べたことのなかったRailsのアノ機能を調べてみました。開発環境でソースを修正→ブラウザーをリロード→変更が反映、の機能です。どうやっているかというと、RubyのModule#const_missingとModule#remove_constを使っています。ソ…