일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 설계 재사용
- 추상화
- 컴파일 타임 의존성
- 객체 생성 사용 분리
- 메서드를 통한 해결
- 유연한 설계
- dip
- 상속 조합 폭발적 증가
- 의존성
- 객체지향
- 상속
- 하향식 접근
- 믹스인
- 명령-쿼리 분리
- 런타임 의존성
- Swift#flatMap#map#Monad#함수형 프로그래밍#Optional
- '기존 설계 재사용
- 책임주도설계
- 알고리즘
- iSP
- 유여난 설계
- OCP
- 서브 타이핑
- 합성
- 다형성
- OOP
- Apple # HIG #iOS15 #iOS14 #Human #Interface #Guidelines #Apple developer # Apple human interface guidelines
- 오브젝트
- 행동 호환성
- 일관성 있는 협력
- Today
- Total
목록의존성 (2)
도니의 iOS 프로그래밍 세상
잘 설계된 객체 지향 App은 작고 응집도 높은 객체로 구성작고 응집도가 높기 때문에 다른 객체와의 협력이 필수적이고 이는 의존성이 필연적으로 수반됨과도한 의존성은 App의 수정을 어렵게 하기에 이를 관리해야 함1. 의존성 이해하기두가지 의존성실행 시점 의존성: 객체 정상 동작을 위해선 실행 시 의존 대상 객체가 반드시 존재해야 함구현 시점: 의존 대상 객체 변경시, 의존하는 개체또한 변경런타임 의존성과 컴파일 타임 의존성런타임 의존성애플리케이션 실행 시점컴파일 타임 의존성컴파일 시점 or 코드 그 자체를 의미하며 이는 코드의 구조를 의미함→런타임의 객체 사이의 의존성을 의미하고, 컴파일 타임때는 클래스간 의존성을 의미함객체가 협력하기 위해선 구체적인 클래스를 알아선 안되고, 런타임에 협력 객체가 결정되..
밑의 내용은 “오브젝트” 도서를 읽고 본인이 이해한 내용을 정리한 글입니다. 실제 내용과 다를 수 있습니다. 의존성객체 지향 설계에서, 객체간 협력은 필수적이나 과도하게 많은 협력은 추후 변경을 어렵게 한다.객체간의 협력은 객체간 정보를 가지고 있어야 하며, 이는 의존성이라고 부른다.잘못된 의존성은 유연한 설계를 방해하는 요소이다.1. 의존성의 이해의존성 전이캡슐화 여부에 따라 의존성이 전이된다.ex. PeriodCondition → Screening → Movie으로 의존성 구조이때, Screening이 캡슐화를 올바르게 처리하지 않으면 PeriodCondition은 Move에 의존하는 구조를 가질 가능성이 매우 높음의존성 해결 방법객체 생성 시점에 생성자에 의존성 주입객체 생성후 의존성 주입→ 생성 ..