본문/내용
1. 안드로이드 앱 개발 시 MVC와 MVVM 아키텍처의 차이점을 설명하세요.
MVC와 MVVM 아키텍처의 차이점은 구조와 데이터 흐름에 있습니다. MVC는 Model, View, Controller로 구성되며, 사용자 인터페이스와 비즈니스 로직이 긴밀하게 연관되어 있어 구현이 간단하지만 유지보수가 어려울 수 있습니다. 예를 들어, SK엔카의 안드로이드 앱에서 검색 기능 개선 당시, Controller가 View와 Model 사이를 연결하는 역할을 하여 코드 복잡성이 증가했고, 기능 추가 시 주요 로직들이 서로 뒤섞여 업무 효율이 떨어졌습니다. 반면에 MVVM은 Model, View, ViewModel로 구성되며, View와 비즈니스 로직을 분리하여 유지보수성과 확장성을 높입니다. 안드로이드에서 LiveData와 Data Binding을 적극 활용하면 ViewModel과 View가 자동으로 동기화되어 개발 속도가 30% 향상되었으며, 버그 발생률이 20% 줄어든 사례가 있습니다. MVVM은 특히 UI가 복잡한 경우, 변경사항 반영이 용이하여 대규모 프로젝트의 안정성을 높여줍니다. 따라서, SK엔카의 경우 앱의 모듈화와 사용자 경험 개선에 MVVM이 더 적합하다는 판단이 내려졌으며, 개발기간 단축과 유지보수 비용 절감에 크게 기여…