객체지향 설계의 3가지 관점 아래 3가지 관점은 순서가 아닌 동일한 클래스를 3가지 다른 방향에서 바라보는 것을 의미 개념 관점 설계 도메인 안에 존재하는 개념과 개념들 사이의 관계를 표현 실제 도메인의 규칙과 제약을 최대한 유사하게 반영하는것이 핵심 명세 관점 설계 실제 소프트웨어 안에서 살아 숨쉬는 객체들의 책임에 초점을 맞춰 설계 인터페이스와 구현을 분리하는 것은 훌륭한 객체지향 설계를 낳는 가장 기본적인 원칙 구현 관점 설계 객체들이 책임을 수행하는데 필요한 동작을 코드로 작성하는 것 실전 - 커피 전문점 커피 전문점 커피 전문점이라는 도메인은 손님, 메뉴 항목, 메뉴판, 바리스타, 커피 객체로 구성된 작은 세상 도메인 모델 소프트웨어가 대상으로 하는 영역인 도메인을 단순화해서 표현한 모델을 도메..
객체 지향은 자주 변경되는 기능이 아닌 안정적인 구조를 기반으로 시스템을 구조화함 구조 설계 소프트웨어 제품 설계의 두가지 측면 기능: 제품이 사용자를 위해 무엇을 할 수 있는지에 초점 구조: 제품의 형태가 어떠해야 하는지에 초점 요구사항 변경과 대비 소프트웨어 분야에서 예외가 없는 유일한 규칙은 요구사항이 항상 변경된다는것 설계가 어려운 이유는 오늘의 기능이 내일 변경될지도 모르는 요구사항을 수용할 수 있는 코드를 창조해야하지 때문 미래에 대비하는 가장 좋은 방법은 변경을 예측하는것이 아닌 수용할 수 있는 설계를 하는것 자주 변경되지 않는 객체 구조를 바탕으로 시스템 기능을 객체간의 책임으로 분배해야 함 기능과 구조 구조는 사용자나 이해관계자들이 도메인에 관해 생각하는 개념과 개념들 간의 관계로 표현 ..
자율적인 책임 객체들은 애플리케이션의 기능 구현을 위해 협력하고 협력 과정에서 자율적으로 판단하고 행동함 자율적인 객체란 스스로의 의지와 판단에 따라 맡은 책임을 수행하는 객체를 의미 증언에서의 자율적 책임 자율적인 방식으로 증언할 책임을 지는 모자장수 모자장수의 경우 증언할 책임은 있지만 증언을 위한 구체적인 방법 및 절차는 자율적임 모자장수는 증언만 한다면 증언하는 방식에 대해서는 자율적으로 행동함 2. 상세한 수준의 책임을 요청받아 수행하는 모자 장수 왕이 모자장수에게 증언에대한 행동을 구체적으로 요구함 (자율성 침해) 왕에대한 의존도가 높아져 모자장주의 책임을 수정하기 어려워짐 ex) 시간 순서대로가 아닌 생각나는대로 말 할수가 없음 너무 추상적인 책임 협력의 의도를 명확하게 표현하지 못할 정도로..
이상한 나라의 앨리스 이야기 🏰 이상한 나라의 앨리스 내용 요약 앨리스가 재판장에 도착했을때 하트 왕과 하트 여왕은 옥좌에 앉아 있었다. 그리고 주위에는 온갖 종류의 새와 짐승과 한 벌의 카드가 모여 있었으며 그들 앞에 파이를 훔쳤다는 혐의를 받고 있는 하트 잭이 서 있었다. … ”첫 번째 목격자를 불러라” 하트 왕이 명령하자 하얀 토끼는 트럼펫을 불고 큰 소리로 목격자를 불렀다. 첫번째 목격자는 모자 장수였다. ”증언하라” 왕이 명령하자 모자 장수는 벌벌 떨며 자기 자신에 대해 설명하기 시작했다. … ”네가 아는게 그것뿐이라면 이제 증인석에서 내려가도 좋다” 왕이 허락하자 모자 장수는 신발을 신을 틈도 없이 서둘어 법정을 빠져나갔다. 재판속의 협력 협력 UML 책임 어떤 객체가 어떤 요청에 대해 대답해..
추상화를 통한 복잡성 극복 복잡성의 총체인 현실을 그대로 수용하기에 인간의 인지 능력과 저장 공간이 제한적임 본능적으로 이해하기 쉽고 예측 가능한 수준으로 분해하고 단순화하는 전략을 따름 추상화란? 불필요한 부분을 도려내면서 사물의 본질을 드러나게 하는 과정 불필요한 부분을 무시함으로써 현실에 존재하는 복잡성 제거를 목적으로함 추상화의 두가지 차원 구체적인 사물들간의 공통점은 취하고 차이점은 버리는 일반화를 통해 단순하게 만듦 중요한 부분을 강조하기 위해 불필요한 세부사항을 제거하여 단순하게 만듦 객체지향과 추상화 앨리스 이야기 🏰 앨리스 두번째 이야기 요약 아름다운 정원에 들어선 앨리스는 정원사들과 마주쳤다. 정원사들은 트럼프처럼 생겼고 스페이드 무늬가 그려져 있었다 …. 하트 여왕의 행렬이 정원에 들..
객체지향과 인지능력 객체란 인간이 분명하게 인지하고 구별할 수 있는 물리적인 또는 개념적인 경계를 지닌 어떤것. 객체지향 패러다임은 인간이 인지 가능한 다양한 객체들이 모여 이뤄짐 객체지향의 목적은 현실세계를 기반으로 새로운 세계를 창조하는 것. 이상한 나라의 앨리스 🏰 이상한 나라의 앨리스 내용 요약 앨리스는 회중시계를 들고 뛰어가는 토끼를 따라감 토끼를 쫓다가 작은 문을 발견, 문이 40cm가 안되었기에 들어갈 수 가 없었음 탁자 위에 있던 액체를 마시자 키가 작아짐 탁자 아래에 있던케이크를 먹으니 키가 커짐 토끼가 두고간 부채로 부채질하니 몸이 서서히 작아짐 쐐기벌레가 둔 버섯의 한쪽을 먹으면 몸이 커지고 다른쪽을 먹으면 몸이 작아짐 …. 키를 작게 해 문을 통과, 아름다운 정원으로 들어가게 됨 …..