본문 바로가기
개발/생각

크로스 플랫폼 개발의 진짜 장점

by 타코 개발자 2024. 7. 5.
반응형

사진: Unsplash 의 Valentin Antonini

최근 많은 스타트업들이 앱 개발을 위해 React Native (RN)와 Flutter를 활용하고 있습니다.

초기 단계의 스타트업들은 개발 자원이 한정되어 있기 때문에 각 플랫폼마다 네이티브 개발자를 고용하는 것이 큰 부담이 됩니다. 따라서 크로스 플랫폼 프레임워크를 채택하는 것은 자연스러운 선택처럼 보입니다.

단일 코드베이스로 iOS, Android, 웹 등 여러 플랫폼을 커버할 수 있는 능력은 매우 매력적인 기능입니다. 비록 실제로는 플랫폼별로 약간의 코드가 필요할 수 있지만요.

저는 iOS 모바일 앱 개발자로서 이 트렌드에 관심을 가지지 않을 수 없었고, 초보 수준이지만 두 프레임워크 모두를 사용해 보았습니다.

앞서 언급했듯이 호환성은 큰 장점이고, 채용 관점에서 보면 특히 React Native는 프론트엔드 개발자들을 끌어들일 수 있습니다. 하지만 저를 가장 놀라게 하고 큰 장점으로 보였던 것은 “Hot Reload” 기능이었습니다.

iOS 앱 개발에서는 프로젝트가 커질수록 빌드 시간이 심각한 문제가 될 수 있습니다. 대규모 프로젝트를 다루는 경우, 작업 시간의 거의 30%를 빌드 대기 시간으로 보내기도 했습니다.

프로젝트 크기와 적절한 모듈화로 이러한 문제를 어느 정도 완화할 수 있지만, 비즈니스가 성장함에 따라 프로젝트 크기도 커질 수밖에 없고, 모듈화를 통해 빌드 속도를 높이는 것은 상당한 노력이 필요합니다.

RN과 Flutter를 사용한 크로스 플랫폼 개발을 경험하면서, 두 프레임워크 모두에서 Hot Reload의 이점을 누릴 수 있었습니다. 레이아웃과 특정 로직을 즉시 보고 점진적으로 개선할 수 있는 능력은 개발 속도를 크게 향상시켰습니다. 개발 속도를 높이는 측면에서, 이것은 호환성보다도 더 중요한 요소라고 느꼈습니다.

즉, 두 개의 별도 앱을 iOS와 Android 용으로 RN이나 Flutter를 사용해 만든다고 해도 실제로 더 빨리 개발할 수 있을 것입니다.

하지만 네이티브 환경에는 문제 해결, 성능, 새로운 기술 처리 등 여러 면에서 장점이 있습니다. 이로 인해 결정 과정에서 어느 정도의 모호성이 발생합니다. 그럼에도 불구하고, 특히 초기 단계의 기업에게는 크로스 플랫폼 개발이 훌륭한 선택이라는 확신이 점점 더 들고 있습니다.

또한 Xcode가 Preview와 같은 기능을 도입했지만, 현재 효과적으로 사용하기 어려운 점을 고려하여 이 논의에는 포함시키지 않았습니다.

반응형

'개발 > 생각' 카테고리의 다른 글

이직이 정답은 아니지만  (0) 2024.07.08
과제와 코딩 테스트 사이  (0) 2024.07.05