소프트웨어 디자인 패턴(software design pattern)은
- 소프트웨어 공학의 소프트웨어 디자인에서 특정 문맥에서 공통적으로 발생하는 문제에 대해
재사용 가능한 해결책이다.- 소스나 기계 코드로 바로 전환될수 있는 완성된 디자인은 아니며, 다른 상황에 맞게 사용될 수 있는 문제들을 해결하는데에 쓰이는 서술이나 템플릿이다.
- 디자인 패턴은 프로그래머가 어플리케이션이나 시스템을 디자인할 때 공통된 문제들을 해결하는데에 쓰이는 형식화 된 가장 좋은 관행이다.
Model View,View, Model의 약자로 프로그램의 비지니스 로직과, 프레젠테이션 로직을 UI로 명확하게 분리하는 패턴- 언뜻 보기에는
MVP와 비슷한 부분이 많습니다. 그러나MVP는View와Presenter사이의 의존관계가 1:1로 형성되어있다면, MVVM은View와ViewModel사이의 관계가 1대n으로 되어있습니다.
또한 데이터 바인딩을 이용한다면View와ViewModel사이의 의존성을 없앨 수 있습니다.
- 데이터와 비즈니스 로직을 담당하는 부분입니다.
- 데이터를 가져오고 저장하는 역할을 수행합니다.
- 보통 데이터베이스, 네트워크 요청 또는 파일 시스템과 같은 데이터 소스와 상호 작용합니다.
- 사용자 인터페이스를 담당하는 부분입니다.
- 사용자가 보는 화면을 표시하고, 사용자 입력을 처리합니다.
- 보통 XAML과 같은 마크업 언어를 사용하여 디자인됩니다.
View에서 발생하는 이벤트를 감지하고, 해당 이벤트에 맞는 비즈니스 로직을 수행합니다.Model과 상호작용하여 데이터를 가져오거나 업데이트하고,
View에 데이터를 업데이트하는 역할을 합니다.View에 표시할 데이터를 가공하여 제공하는 역할을 합니다.
MVVM
https://velog.io/@blucky8649/MVC-MVP-MVVM-패턴의-특징
https://beomy.tistory.com/43
https://jeongkyun-it.tistory.com/136
https://forum.dotnetdev.kr/t/mvvm/2475
https://velog.io/@kyeun95/series/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4Design-Pattern
어제 저녁부터 MVVM 파볼라고 했더니 선행되어 공부해야되는 개념이 데이터 바인딩, 뷰 바인딩 인거 같아 공부 했더니...데이터 바인딩 is 곧 DIE(사장되는) 방식...
그래서 다시 공부해야 할 부분은레트로핏,코루틴 - 플로우