MVVM Pattern
안드로이드 개발을 하면서 가장 많이 접했던 MVVM 패턴에 대하여 기록하였습니다.MVVMMVVM은 안드로이드 개발에서 많이 사용되는 아키텍처 패턴 중 하나로, Model, View, ViewModel로 구성되어 있습니다.이 패턴은 코드의 재사용성, 테스트 용이성, 유지보수성을 높이기 위해 설계되었으며, UI 로직과 비즈니스 로직을 분리하여 복잡한 프로젝트에서도 모듈화가 가능하게 해줍니다.MVC와 MVP에서 View와 Model간의 의존성은 없었지만, Controller나 Presenter와 View 사이에 의존성은 여전히 존재합니다. MVVM에서 ViewModel을 도입하여 ViewModel이 View를 참조하지 않으므로 의존성을 제거할 수 있습니다. 비즈니스 로직과 프레젠테이션 로직을 UI로 부터 분리..
- [Android] Architecture/Architecture Pattern
- · 2024. 9. 9.
MVP 패턴에서의 DataBinding
💡MVP 패턴에서 DataBinding을 활용한 양방향 DataBinding 대해 정리하였습니다! MVP with DataBindingMVP 패턴은 안드로이드에서 널리 사용되는 아키텍처 패턴 중 하나로, UI 로직과 비즈니스 로직을 분리하여 유지보수성과 테스트 용이성을 높입니다.DataBinding을 함께 사용하면 UI와 데이터를 더 쉽게 연결할 수 있으며, 코드량 감소와 직관적인 UI 업데이트가 가능해집니다.MVP에서 DataBinding을 사용하는 이유코드 간결화findViewById()를 통한 UI 탐색이 아닌 DataBinding을 통해 XML 레이아웃 파일과 직접적으로 연결할 수 있습니다.이를 통해 UI 요소와의 상호작용을 더 직관적이고 간단하게 처리할 수 있습니다.양방향 데이터 바인딩MVP ..
- [Android] Architecture/Architecture Pattern
- · 2024. 9. 5.
MVC to MVP Migration
💡 우아한테크코스 과정을 진행하면서 MVC 디자인패턴을 MVP로 마이그레이션을 진행한 이유와 과정에 대하여 기록하였습니다! 개요이전에 MVC 패턴에 대하여 학습하였습니다.[디자인패턴] MVC [디자인패턴] MVC💡 디자인패턴 중에 하나인 MVC 패턴에 대하여 학습하였습니다 ! MVCMVC는 Model, View, Controller의 약자로 하나의 애플리케이션이나 프로젝트를 구성할 때 구성요소를 세가지 역할로 구분한 패턴입jinudmjournal.tistory.com하지만 MVC 패턴으로 구현 후 테스트와 의존성 관련해서 문제점이 있다는 것을 알게 되었고, 이를 보완한 MVP 패턴에 대해서 학습하였습니다.[디자인패턴] MVP [디자인패턴] MVP💡 디자인 패턴 중에 하나인 MVP 패턴에 대하여 학습..
- [Android] Architecture/Architecture Pattern
- · 2024. 9. 1.
MVP Pattern
💡 디자인 패턴 중에 하나인 MVP 패턴에 대하여 학습하였습니다 ! MVPMVP는 Model, View, Presenter를 합친 용어이며, MVC에서 C에 해당하는 Controller가 Presenter로 교체된 패턴입니다.자동화된 단위 테스트를 용이하게 하고, Presenter 로직에서 관심사를 분리하도록 설계 된 사용자 인터페이스 아키텍처 패턴입니다.MVC와의 차이MVC에서는 Controller를 통해서 직접적으로 View에 접근하기 때문에, Controller와 연결 된 Model과 View는 서로 어느정도의 결합도가 있다고 볼 수 있습니다.하지만 MVP는 오직 Presenter와 인터페이스를 통해 메시지 전달하기 때문에 분리된 책임(Separation of Concerns)를 얻을 수 있습니다..
- [Android] Architecture/Architecture Pattern
- · 2024. 8. 30.
MVC Pattern
💡 디자인패턴 중에 하나인 MVC 패턴에 대하여 학습하였습니다 ! MVCMVC는 Model, View, Controller의 약자로 하나의 애플리케이션이나 프로젝트를 구성할 때 구성요소를 세가지 역할로 구분한 패턴입니다.사용자가 controller를 조작하면 controller는 model을 통해서 데이터를 가져옵니다.그 데이터를 바탕으로 시각적인 표현을 담당하는 View를 제어하혀 사용자에게 전달합니다.MVC의 특징MVC 패턴을 적절하게 사용하면, 사용자 인터페이스로부터 비즈니스 로직을 분리할 수 있습니다.애플리케이션의 시각적인 요소와 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있습니다.ModelData와 애플리케이션의 내부 비즈니스 로직을 처리하기 위한 역할..
- [Android] Architecture/Architecture Pattern
- · 2024. 8. 30.