DIContainer 도입 논의 과정
·
Architecture, Design Pattern
안녕하세요 집주인들입니다.DIContainer를 어떻게 도입해야할지에 대해 정말 많은 고민을 했습니다..아래는 저희의 고민과정입니다! 바로 보러가시죵문제 상황현재 상황에서 DIContainer를 도입하는 것이 적절한지에 대해 논의가 필요했다.의존성 주입을 누가 해줄 것인지, 모듈화되어 있는 구조에서 어떻게 의존성을 주입할 것인지 결정이 필요함문제 해결DIContainer 도입 계기클린 아키텍처가 적용을 함에 따라 아래와 같이 뷰컨트롤러 하나를 띄우더라도 viewModel부터 useCase, Repository를 다 만들어주고 최종적으로 viewModel을 뷰컨트롤러에 넣어주면서 띄워준다.let issueRepository = IssuesRepository()let fetchIssuesUseCase = F..
MVVM 아키텍처 도입, 우리의 ViewModel 사용법
·
Architecture, Design Pattern
안녕하세요!! 집주인들 중 가장 잘생긴 박효준입니다!이번에는 MVVM의 도입여부 논의를 하면서 결정한 ViewModel등의 사용법을 공유하고자 합니다.거두절미하고 바로 들어가겠습니다~~문제 상황MVC 패턴의 코드 길어짐과 수많은 의존성을 컨트롤러가 갖는 문제,또한 View와 비즈니스 로직 분리 등을 위해 MVVM 도입했다.우리 팀에서 MVVM의 ViewModel을 어떻게 사용하기로 정의했는지 설명하겠다.문제 해결MVVM 도입 결정MVC에선 Controller가 View와 Model 일을, MVP에선 Presenter와 View가 서로 일 주고받음 MVVM에서 ViewModel은 Model하고만 소통함 즉, 관심사 분리를 잘 해낼 수 있음위 특징 때문에 테스트 가능한 구조가 되어 테스팅도 가능MVC 패턴의..
[Architecture] 기록소의 아키텍처 논의를 기록하다...
·
Architecture, Design Pattern
안녕하세요?이번 숙제 타자 임정현입니다. ㅎㅅㅎ 사실 이 논의... 꽤 오래전에 했는데 이제 서야 쓰네요...핳....(죄송합니다..)그럼 거두절미하고 바로 가시죠. 문제 상황프로젝트 아키텍처를 무엇을 적용할 것인가?특정 아키텍처가 아니어도 좋으니 Layer를 어떻게 나눌 것인지 논의Presentation LayerMVC vs MVP vs MVVM전체 ArchitectureClean vs Butterfly vs TCA vs RIBs vs VIPER우리의 상황 / 배경프로젝트 인원: 4명배경지식: MVC, MVVM, Butterfly Architecture(aka. Clean Architecture)프로젝트 목표 중: 테스트 가능해야 함 (Swift Testing 등 도입 목표)문제 해결MVVM을 결정한 ..