OOP 특징 및 장점
OOP(Object Oriented Programming) 의 특징
4가지(캡슐화 상속 추상화 다형성)가 있음
SOLID 설계 원칙은 추후에 게시할 예정
장점
- 객체를 중심으로 프로그래밍
- 사람의 관점에서 프로그램 이해 및 파악이 쉬움
- 관계는 있지만 없어도 대체해서 동작시킬 수 있는 유연함이 있음
- 재사용성, 확장성 높음
단점
- 설계에 많은 시간을 투자해야 함
- 설계 실패 시, 다시 처음부터 작성해야 함
- 객체지향 -> 객체와 클래스 사용하여 각 모듈의 높은 독립성 권장 -> 여러 클래스를 상속해 중복코드 최소화 및 유지보수확장성을 높임 하지만 단점인 이유 -> 실행 속도가 느림
캡슐화(Encapsulation)
캡슐화는 필드에 접근제한자를 두어 외부에서 값을 바꾸지 못하게 하는 것
- 데이터에 직접 접근하는게 아닌 메소드를 통해 접근
- 필요한 정보만 보이게끔 설계하기 위함
상속(Inheritance)
이미 만들어진 객체의 특성을 새로운 객체가 받아서 쓰는 것 (부모 클래스가 자손클래스에게 물려줌)
추상화(Abstraction)
객체 안의 공통적인 특징을 추출해 하나의 기능 또는 개념으로 정의하는 것
다형성(Polymorphism)
같은 형태이지만 다른 기능을 하는 것
- 오버라이딩 : 상위 클래스가 가지고 있는 메서들르 하위 클래스가 재정의해 사용하는 것
- 오버로딩 : 이름의 메소드 여러개를 가지면서 매개변수의 유형과 개수가 다르게 하는 것
마치며
좀 더 보충해야 할 부분이 있는 거 같아 조금씩 보충할 예정입니다.
수정/보충해야 할 내용이 있으면 이메일이나 댓글로 연락주세요.
보충하고있나요? 잊은 건 아니죠?