다중 플랫폼 제품의 기능 동등성 유지 전략: Turbo와 반응형 웹 디자인 활용

37signals Dev — Speeding up mobile development with Turbo

3줄 요약

  • 다중 플랫폼 제품 개발에서 웹-모바일 간 기능 동등성 유지의 어려움이 증대되고 있습니다.
  • 37signals는 터보-iOS와 반응형 웹 디자인을 활용하여 모바일 앱의 개발 지연을 줄이고 있습니다.
  • 이를 통해 적은 네이티브 코드 변경으로 웹에서 빠르게 기능을 배포하며, 동시에 네이티브에 준하는 사용자 경험을 제공합니다.

오늘날 사용자들은 웹, 모바일 등 다중 플랫폼에서 일관된 소프트웨어 경험을 기대하며, 이는 제품 개발에 높은 요구사항을 부과합니다. 전통적인 개발 방식은 팀 분리, 모바일의 API 의존성, 앱 스토어 검토 지연 등으로 기능 동등성 유지에 어려움을 겪습니다. 37signals는 이 문제 해결과 개발 효율성 증대를 위해 Turbo와 반응형 웹 디자인을 활용하는 혁신적인 전략을 채택했습니다.

기존 방식은 모바일 팀이 웹 팀의 API 개발과 앱 스토어 검토를 기다려 출시 지연 및 웹 우선 출시를 야기했습니다. 37signals는 이를 극복하고자 Turbo-iOS를 도입했습니다. Basecamp ‘최신 활동’ 탭 필터 기능을 네이티브 대신 Turbo 기반 웹 뷰로 전환하여, 1,436 라인의 네이티브 코드를 제거하고 개발 복잡성을 줄였습니다.

이로써 모든 변경 사항은 웹에서 관리되어 즉각적인 배포가 가능하며, Turbo 성능 개선은 앱에 즉시 반영됩니다. Turbo-iOS는 네이티브에 준하는 사용자 경험을 제공합니다. Turbo 8의 빠른 로딩 및 캐싱 덕분에 거의 네이티브 UI처럼 빠르게 페이지를 표시하며, 시스템 제스처와 애니메이션(스와이프, 푸시/팝)도 그대로 유지됩니다.

물론, 작은 화면 최적화 웹 디자인 전문성과 iOS 개발자의 Turbo-iOS 내비게이션 인터셉션 학습이 필요하나, 그 이점은 단점을 크게 상회합니다.

Turbo-iOS 도입은 코드 감소, 개발 속도 향상, 그리고 웹/모바일 팀이 각 핵심 역량에 집중하도록 하여 효율성을 극대화합니다. 37signals는 모든 신규 모바일 앱에 Turbo를 핵심 라이브러리로 채택하여, 화면의 네이티브 구현 여부를 유연하게 결정할 수 있는 기반을 마련했습니다. 높은 트래픽, 복잡한 제스처, 풍부한 애니메이션이 필요한 일부 화면을 제외하고 대부분의 경우 Turbo-iOS는 네이티브에 준하는 경험과 기능 동등성을 제공하며, 궁극적으로 네이티브의 부드러움과 웹의 빠른 개발 속도를 결합하여 사용자에게 최상의 가치를 선사합니다.