1. Fizzy 프로젝트와 오픈 소스 공개
37signals는 새로운 제품인 Fizzy의 전체 코드베이스를 오픈 소스로 제공합니다. 이는 단순한 코드 공유를 넘어, 실제 프로덕션 환경에서 Rails가 어떻게 활용되어야 하는지에 대한 ‘살아있는 문서’ 역할을 합니다.
2. 모델(Models) 중심의 로직 설계
가장 인상적인 부분은 비즈니스 로직의 배치 방식입니다. 현대의 많은 Rails 개발자들이 로직 분리를 위해 ‘서비스 객체(Service Objects)’ 패턴을 선호하는 반면, 37signals는 다음과 같은 방식을 취합니다.
-
모델 디렉토리의 확장: 서비스 객체라는 별도의 추상화 계층을 만드는 대신, 모델 디렉토리 내에서 로직을 구조화하고 응집력을 높입니다.
-
복잡한 연산 처리: 복잡한 작업 역시 Rails의 기본 구조를 최대한 활용하여 해결하며, 이는 프레임워크의 철학에 더 부합하는 방식임을 강조합니다.
3. 실무 중심의 학습 자원
Jorge Manrubia가 제작한 두 편의 해설 영상은 Fizzy의 코드베이스를 탐험하며 설계 결정을 내린 배경을 설명합니다. 이는 단순한 문법 공부를 넘어, 대규모 Rails 애플리케이션의 유지보수성과 확장성을 확보하는 실전적인 전략을 학습하는 데 최적의 자원입니다.