책2 02. 옵저버 패턴 객체지향 원칙 * 상호작용하는 객체 사이에서는 가능하면 느슨한 결합을 사용해야 한다. 느슨한 결합이란? => 객체들이 상호작용할 수는 있지만, 서로를 잘 모르는 관계를 의미한다. 옵저버 패턴으로 예를 들면 - 옵저버 패턴에서 주제는 옵저버가 특정 인터페이스(Observer 인터페이스)를 구현한다는 사실만 안다. - 옵저버는 언제든지 새로 추가할 수 있고 새로운 형식의 옵저버를 추가할 때도 주제를 변경할 필요가 없다. - 주제와 옵저버는 서로 독립적으로 재사용할 수 있고 주제나 옵저버가 달라져도 서로에게 영향을 미치지 않는다. 옵저버 패턴 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체에게 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다 (one-to-many) 의존성을 정의한다. 주제(Sub.. 2022. 6. 14. 01. 디자인 패턴 소개와 전략패턴 객체지향 기초 * 추상화 클래스들의 중요하고 공통된 성질들을 추출하여 슈퍼 클래스를 선정하는 개념 * 캡슐화 연관된 목적을 가지는 변수와 함수를 하나의 클래스로 묶어 외부에서 쉽게 접근하지 못하도록 은닉하는 것 * 다형성 상위 클래스가 동일한 메시지로 하위 클래스들을 서로 다르게 동작시키는 객체 지향 원리 * 상속 자식 클래스가 부모 클래스의 기능을 그대로 물려받을 수 있는 기능 객체지향 원칙 * 바뀌는 부분은 캡슐화한다. 코드를 변경하는 과정에서 의도치 않게 발생하는 일을 줄이면서 시스템의 유연성을 향상시킬 수 있다. * 상속보다는 구성을 활용한다. 구성(Composition) : 기존 클래스가 새로운 클래스의 구성요소로 쓰인다. 새로운 클래스를 만들고 private 필드로 기존 클래스의 인스턴스를 참.. 2022. 6. 11. 이전 1 다음