상태(2)
-
01. 협력하는 객체들의 공동체
객체지향 프로그래밍이란 현실 속에 존재하는 사물을 최대한 유사하게 모방해 SW내부로 옮겨오는 작업이라고 많이 알고있음. 실세계의 모방이라는 개념은 객체지향의 철학적인 개념을 설명하는데 적합하나, 실제 분석 및 설계를 설명하기에는 적합하지 않음. 실제로 객체와 대응되는 실세계 사물을 발견할 확률이 높지 않다. 객체지향의 목표는 실세계를 모방하는 것이 아니라 새로운 세계를 창조하는 것 객체지향에서 가장 중요한 개념 : 역할, 책임, 협력 # 요청과 응답으로 구성된 협력 대부분 사람들은 큰 문제를 혼자서 해결하기 보다는 다른 사람들의 도움을 받아 해결하는 것을 선호 사람들은 스스로 해결하지 못하는 문제와 마주치면 문제 해결에 필요한 지식을 알고 있거나 서비스를 제공할 수 있는 사람에게 도움을 요청 하나의 문제..
2023.05.28 -
디자인 패턴
디자인 패턴이란 아키텍처 설계 수준보다 낮은 수준의 설계 문제에 재사용 가능한 솔루션 제공 디자인 패턴 혜택 - 쉽게 재사용 가능 - 개발 시간 단축 - SW구조 파악 용이 - 설계 관련 지식 정리됨 - 개발자 간 의사소통 원할 - 객체지향 설계 원리를 잘따르게 됨 디자인 패턴 종류 생성 패턴 : 객체를 생성하는데 관련된 패턴 - 객체의 생성과 조합을 캡슐화 - 특정 객체가 생성,변경 되어도 프로그램 구조에 영향을 크게 안줌 : 유연성 제공 예 ) factory method: 생성할 객체의 클래스를 서브 클래스로 분리하여 객체 생성 - 팩토리 메서드를 포함하는 추상 클래스를 정의 - 하위 클래스에서 인스턴스를 생성 singleton: 한 클래스에 한 객체만 존재하도록 제한 - 클래스 자체를 정적 변수 -..
2022.06.04