Study/객체지향2 [오브젝트] 2장 객체지향 프로그래밍 개인 학습용 글입니다. 객체지향 프로그래밍의 조건 어떤 클래스가 필요한지를 고민하기 전에 어떤 객체들이 필요한지를 고민하라. 객체를 독립적인 존재가 아니라 기능을 구현하기 위해 협력하는 공동체의 일원으로 보라. 객체는 다른 객체에게 도움을 주거나 의존하면서 살아가는 협력적인 존재다. 객체를 협력하는 공동체의 일원으로 보는 것은 설계를 유연하고 확장 가능하게 만든다. 클래스를 구현하거나 다른 개발자에 의해 개발된 클래스를 사용할 때 가장 중요한 것은 클래스의 경계를 구분 짓는 것이다. 클래스의 내부와 외부를 구분해야 하는 이유 : 경계의 명확성이 객체의 자율성을 보장한다. 프로그래머에게 구현의 자유를 제공한다. 객체 내부에 대한 접근을 통제하는 이유 : 객체를 자율적 존재로 만들기 위함. 객체가 자율적인 .. Study/객체지향 2023. 11. 14. [오브젝트] 1장 객체, 설계 개인 학습용 글입니다. 객체지향적 설계 예시를 위해 절차지향적 코드를 객체지향적 코드로 변경하는 과정을 보여줌. 영화 티켓 판매 프로세스를 모델링함. 1장은 객체지향을 가볍게 훑고 객체지향의 중요성을 강조하기 위해 만들어진 것으로 보임. 많은 정보를 담았다기보다 이 책에서 강조하는 포인트를 독자에게 전달하기 위한 빌드업을 하는 것으로 보였음. 중요 내용 1. 객체지향 설계를 해야 하는 이유 변경에 유연하게 대응 가능하다 버그 발생률이 낮아진다(결합도가 낮기 때문) 이해하기 쉬운 코드를 만들 수 있다 2. 능동적인 객체를 만들어라 수동적인 객체를 만드는 경우 절차지향적으로 흘러간다. 능동적인 객체를 만들어라 키워드 캡슐화 응집도 절차지향 프로그래밍(Procedural Programming) 객체지향(Obj.. Study/객체지향 2023. 10. 11. 이전 1 다음