개념 | 객체들의 집합으로 프로그램의 상호 작용을 표현 및 데이터를 객체로 취급하고 객체 내부에 선언된 메서드를 활용하는 방식 설계에 많은 시간이 소요되며 처리 속도가 다른 프로그래밍 패러다임에 비해 상대적으로 느림 |
객체 지향의 특징 ..
추상화(abstraction) | 복잡한 시스템으로 부터 핵심적인 개념 또는 기능의 특징을 뽑아내거나 간추려 내는 것 |
캡슐화(encapsulation) | 객체의 속성과 메서드를 하나로 묶고 일부를 외붸 감추어 은닉하는 것 |
상속성(inheritance) | 상위 클래스의 특성을 하위 클래스가 이어받아서 재사용하거나 추가, 확장하는 것 |
다형성(poldmymorphism) | 하나의 메서드나 클래스가 다양한 방법으로 동작하는 것, 오버라이딩, 오버로딩 |
다형성의 예시 ..
오버로딩 | 같은 이름을 가진 메서드를 여러 개 두는 것, 메서드의 타입, 매개변수의 유형, 개수 등으로 같은 이름의 메서드를 여러개로 가질수 있음(컴파일 중 발생하는 정적 다형성) |
오버라이딩 | 상위 클래스로 부터 상속받은 메서드를 하위 클래스가 재정의 하는 것(런타임 중 발생하는 동적 다형성) |
객체지향의 설계 원칙(SOLID) ..
Single Responsibility Principle | 모든 클래스는 각각 하나의 책임만 가져야하는 원칙 |
Open Closed Principle | 기존의 코드 수정에는 폐쇄, 확장에는 개방된 원칙 |
Liskov Subsitution Principle | 부모 객체에 자식 객체를 넣어도 시스템이 문제없이 작동하는 원칙 |
Interface Segregation Principle | 하나의 일반적인 인터페이스 보다 여러개의 구체적인 인터페이스를 만들어야하는 원칙 |
Depencency Inversion Principle | 상위 계층은 하위 계층의 변화에 대한 구현으로 부터 독립 |
'WEB > 자격증' 카테고리의 다른 글
2024 정보처리기사 1회차 실기 합격 후기 (0) | 2024.06.27 |
---|---|
Singleton (0) | 2023.12.19 |
객체 지향 5가지 원칙(SOLID) (0) | 2023.12.15 |
OCP(Open-Closed Principle) (0) | 2023.12.14 |