マイペースなRailsおじさん

Ruby、Ruby on Rails、オブジェクト指向設計を主なテーマとして扱います。だんだん大きくなっていくRuby on Rails製プロダクトのメンテナンス性を損なわない方法を考えたり考えなかったりしている人のブログです。

オブジェクト指向設計

Active RecordとNull Objectパターン

Active RecordでNull Objectパターンを使うことはできるのか考えてみました。 RubyでNull Objectパターン RubyでもNull Objectパターンを使えます。下記の記事を御覧ください。 ytnk531.hatenablog.com Active RecordとNull Objectパターン どんなときに使い…

RubyのNull Objectパターン

Rubyの場合はNil Objectパターンと呼ぶことになるんでしょうか? Null Objectパターン Null Objectパターンは、値が存在しない場合の処理を共通化したい場合に使えるデザインパターンです。 こちらの解説がわかりやすいです Nullオブジェクトパターンの紹介…

Railsの設計について思うこと

Railsと設計 Railsは、Active Recordを中心に据えてコードを書いていきます。そうなると、自然とテーブル設計に強く依存したアプリケーションになって行くので、アプリケーションが複雑になっていくとツライ!となることがあります。こういった、Railsのアー…

extendを使ったStrategyパターン風のアルゴリズム切り替え

リファクタリング:Rubyエディション作者:ジェイ・フィールズ,シェーン・ハービー,マーティン・ファウラー発売日: 2020/03/21メディア: 単行本に、extendの興味深い利用方法が出てきていたのでご紹介。この本の、8.13 タイプコードからモジュールのextendへ(R…

SOLID, KISS, YAGNIをどう活かすのか

SOLID, KISS, YAGNIはいずれもソフトウェア開発において重要とされる原則です。原則というくらいなので、様々な形態を持つソフトウェア開発において共通して適用することができます。逆に言えば、特定のコンテキストに依存しない程度に抽象化されていると言…