Computer Science

클래스 간의 연관 관계는 크게 두 가지로 나뉜다. IS - A Relationship 부모 클래스와 자식 클래스를 구별할 때 자주 사용하는 표현이다. 주로 상속 관계를 의미한다. (extend 키워드로 명시) (사과는 과일이다) HAS - A Relationship 특정 기능을 사용하고 싶을 때 만들어진다. (차는 엔진을 가지고 있다)와 같이 기능을 포함하고 싶을 때 사용한다.
Inheritance(상속) 상위 클래스가 존재하고 하위 클래스에서 상위 클래스를 extends 하는 경우를 상속이라 부른다. 확장에 용이하고 기능의 중복이 없어 코드가 간결하여 유지보수가 쉬워진다. 그러나 상위 클래스와 하위 클래스의 결합이 강해지기 때문에, 상위 클래스가 변경될 경우 이를 상속 받는 하위 클래스도 수정되어야 하는 경우가 많다. Aggregation과 Composition은 모두 Association의 종류이며 has-a 관계를 가진다. IS - A Relationship 부모 클래스와 자식 클래스를 구별할 때 자주 사용하는 표현이다. 주로 상속 관계를 의미한다. (extend 키워드로 명시) (사과는 과일이다) Association 모든 오브젝트가 각자의 라이프사이클을 가지고 있으며 ..
객체지향이란? 객체지향이란 프로그램 설계 방법론의 일종이다. 프로그램에 필요한 데이터를 추상화 시키고 객체(Object)라는 기본 단위를 만든다. 이렇게 만들어진 객체끼리 상호작용을 하는 것이 객체지향 프로그램이다. 객체 지향 프로그램은 유연한 유지 보수, 손쉬운 확장이 쉬워진다. 즉, 개발의 생산성이 높아진다. 모든 일에는 메뉴얼이라는 것이 존재하고 이는 길잡이 역할을 한다. SOLID 원칙이란 객체 지향 프로그램의 메뉴얼이다. 객체 지향 프로그래밍을 사용하는 여러 디자인 패턴은 모두 SOLID 원칙에 입각하여 만들어진 것이기 때문에, SOLID 원칙에 대한 개념을 제대로 잡고 가는 것이 중요하다. 1. SRP(Sigle Responsibility Principle : 단일 책임의 원칙) 클래스(객체)..
꽉악꽉
'Computer Science' 카테고리의 글 목록