Mhwan's Study/Architecture & Design Pattern
-
[Android] MVC VS MVP VS MVVM (+ SVC)Mhwan's Study/Architecture & Design Pattern 2021. 8. 12. 18:13
아키텍쳐 디자인 패턴을 공부하면서 플랫폼마다 조금씩 패턴이 다르다는 것을 느꼈고, 안드로이드에 맞는 MVC, MVP, MVVM은 무엇일까 고민을 했습니다. 이 글을 보시기 전에 기본적인 MVC, MVP, MVVM을 찾아보시고 읽으시면 더 도움이 될 것입니다. 이는 아래의 링크를 바탕으로 작성한 게시글입니다. https://academy.realm.io/kr/posts/eric-maxwell-mvc-mvp-and-mvvm-on-android/ 안드로이드의 MVC, MVP, MVVM 종합 안내서 MVC vs. MVP vs. MVVM 안드로이드 앱을 논리적 구성 요소로 체계화하려는 베스트 프랙티스 접근법은 최근 몇 년간 지속적으로 발전했습니다. 모델 뷰 컨트롤러(Model View Controller, MVC..
-
MVC VS MVP VS MVVMMhwan's Study/Architecture & Design Pattern 2021. 8. 4. 20:53
MVC, MVP, MVVM이라는 아키텍쳐 디자인 패턴을 공부하면서 느낀 것은 플랫폼마다 적절한 아키텍쳐가 있다는 것입니다. Spring에서는 MVC가 가장 적절한 이유가 있고, Android에서는 MVVM이 현재 대세인 이유가 있는 것 같습니다. 또한 각 플랫폼마다 각 아키텍쳐의 구조도 조금씩 달라지니 유의하시기 바랍니다. # 왜 아키텍쳐 디자인 패턴이 필요할까? 화면에 무언가 데이터를 보여주기 위해서는 데이터를 생성하고, 관리하는 Model이 필요하고, 이 데이터를 사용자에게 UI로 보여주기 위한 View는 공통적으로 필요합니다. 이렇게 Model, View만 사용하게 된다면 둘 사이의 의존성이 심해지고, 이는 이후 변경사항이 생겼을 때 유지보수에도 좋지않고, 테스트 코드를 짤 수도 없을 것입니다. 이..
-
객체지향 프로그래밍 & 특징Mhwan's Study/Architecture & Design Pattern 2021. 7. 29. 18:49
객체지향 언어의 특징은 캡슐화, 상속, 다형성, 추상화가 있습니다. 솔직히 저는 그동안 면접용을 위해 이 4개의 특징이 무엇인지 달달 외웠던 것 같고, 실제로 무슨 특징을 의미하는 것인지는 몰랐습니다. 그래서 디테일하게 객체지향 언어가 무엇인지 공부를 해보았고, 포스팅하게 되었습니다. # 절차지향 프로그래밍? 프로그램을 구현하게 되면 그 안에는 데이터와 데이터를 조작하는 함수나 프로시저로 이루어져있습니다. 프로시저는 다른 프로시저를 사용할 수도 있고, 각각의 프로시저가 같은 데이터를 사용할 수도 있는데, 이러한 프로시저가 중심이 되어 프로그램을 구성하는 기법을 절차지향 프로그래밍이라고 합니다. 절차지향 언어의 문제는 기존의 프로그램을 수정할 때 생기게 됩니다. 데이터 중심적으로 프로그램을 짜게 된다면, ..