Android/아키텍처를 알아야 앱 개발이 보인다
-
의존성 주입Android/아키텍처를 알아야 앱 개발이 보인다 2023. 3. 18. 18:42
https://developer.android.com/training/dependency-injection?hl=ko Android의 종속 항목 삽입 | Android 개발자 | Android Developers Android의 종속 항목 삽입 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 종속 항목 삽입(DI)은 프로그래밍에 널리 사용되는 기법으로, Android 개발에 적합합니 developer.android.com 의존성 Dependency A가 B를 의존한다 -> B에 변화가 생기면 A에 영향을 끼친다. ex) 요리는 레시피에 의존한다 -> 레시피에 변화가 생기면 요리에 영향을 끼친다. 주입 Injection : 생성자나 메서드를 통해 외부로부터 생성된 객체를 받는..
-
클린 아키텍처Android/아키텍처를 알아야 앱 개발이 보인다 2023. 3. 18. 17:10
클린 아키텍처 - 종속성이 외부에서 내부로 의존함 (내부로 갈수록 더 추상화 된다. , 내부 계층은 외부 계층을 알 수 없어야 한다.) 엔티티 핵심 비즈니스 규칙 포함 데이터의 구조나 메서드 포함 가장 영향을 적게 받는 영역 유즈케이스 엔티티 로부터 데이트 흐름 관리 UseCase를 캡슐화 하고 구현함. Model : DB의 질의나 네트워크 요청 등의 비즈니스 로직 수행 Repository : 내부 DB에 접근하거나 저장, 원격 서버의 데이터를 요청하는 역할, 일반적으로 인터페이스로 구현된다. 인터페이스 어댑터 유스케이스나 엔티티로 얻은 데이터를 가공하는 역할 데이터를 받아 UI에 표현하기 위해 데이터를 변경한다. View,Presenter,ViewModel,Controller등이 포함된다. 프레임워크 ..
-
애플리케이션 설계 - SOLID 원칙Android/아키텍처를 알아야 앱 개발이 보인다 2023. 3. 18. 15:16
Single Responsibilty Principle 단일 책임 원칙 모든 클래스는 하나의 책임만 가지며 그 책임을 완전히 캡슐화 해야 한다. 모든 클래스,모듈,메서드는 단 하나의 기능을 가져야 한다! → 변경 사항이 발생시 해당 부분만 수정하면 된다. Open Closed Principle 개방 폐쇄 원칙 소프트웨어가 확장에 대해서는 열려 있어야 하고, 수정에 있어서는 닫혀있어야 한다. 변경 사항이 발생하더라도 다른 코드나 모듈에 영향이 없도록 한다. Liskov Substitution Principle 리스코프 치환 원칙 객체 지향 프로그래밍 원칙으로 부모 클래스를 자식 클래스로 치환할수 있어야함 → 상속 관계시 대체할수 있어야함 하위 클래스 에서 메서드 파라미터의 반공변성 : 하위 클래스에서 오버..