Ви побачите, що програми Rails починаються як один репост. Більш успішні (Twitter, Square, багато інших) розділяються на декілька кодових баз, коли вони переростають у цю вимогу. Такими додатковими базами коду можуть бути демони , сервіси , дорогоцінні камені, Rails Engine або щось інше.
Цей рефакторинг на кілька проектів не робиться, поки не виявиться необхідним, оскільки YAGNI . Біфуркація вашого проекту в перший день сповільнює час складання прототипів, а швидкість прототипування є ключовою силою Ruby та Rails. Ви хочете пам’ятати, що створення або клас у Ruby майже нічого не коштує, як і розбиття добре розробленого класу. Ваш чистий рубін код буде жити в основному під /app/( app/models, app/views app/controllers, app/helpers) і /lib/. Ваші статичні активи, багатошаровий JS / Coffee включає, а CSS / Sass / тощо включає в себе /app/assets.
Розуміння того, чому розбивати клас Ruby так легко, вимагає трохи ознайомитися з набором качок і розуміти, що інтерфейси Ruby не такі залізні, як ви могли звикнути в менш динамічному середовищі.
Ось кілька посилань, які можуть вас зацікавити:
Успіхів у ваших проектах!