기록 저장소
객체 지향 프로그래밍(Object Oriented Programming) 본문
1. 정의
문제를 객체 단위로 나누어 구성하고 이를 필요에 따라 조립하여 해결하는 프로그래밍 방식으로, 여러개의 함수를 순차적으로 호출하여 문제를 해결하는 절차 지향 프로그래밍과 구분된다.
2. 특징
- 추상화 : 다른 것과 구분되는 공통적인 속성과 행위를 추출하는 것을 말한다.
- 캡슐화 : 객체에 정의된 속성과 행위의 과정을 외부에 노출되지 않도록 은닉하여, 간단한 메시지의 전달만으로 해당 객체를 이용할 수 있게 하는 것을 말한다.
- 상속 : 공통적인 속성을 갖는 객체를 계층적으로 분류하여, 상위 객체의 속성과 행위를 하위 객체에서 물려받아 사용할 수 있게 하는 것으로, 코드의 중복을 방지한다.
- 다형성 : 같은 형태의 메소드나 클래스가 다양한 방법으로 동작하게 하는 것을 말하며, 코드의 재사용성을 높이며 유지보수 비용을 낮추는데 기여한다.
3. 장단점
- 장점 : 코드의 재사용성이 높고, 유지보수 비용이 낮으며, 업무분담이 용이하여 대형 프로젝트에 적합하다.
- 단점 : 설계 단계에 시간이 많이 소요되며, 처리 속도가 상대적으로 느리며, 객체가 많은 경우 용량이 커진다.
[ 참고 ]
* Reference
- https://bakjh6280.com/2018/05/24/what-is-oop/
객체지향 프로그래밍(OOP)이란?
객체지향 프로그래밍(OOP)이란? 기존의 절차지향 프로그래밍 방식에서 발견된 문제점을 보완하기 위해 로직을 상태와 행동으로 이루어진 객체로 만드는 프로그래밍 방식이다. 유지보수가 쉬워 대형 프로젝트에 적합하다는 장점이 있지만, 실행속도가 절차 지향에 비해 느리고, 설계에 많은 시간이 투자된다는 단점이 있다. 절차 지향 프로그래밍이란? 순차적으로 처리되…
bakjh6280.com
- https://jeong-pro.tistory.com/95
객체 지향 프로그래밍이 뭔가요? (꼬리에 꼬리를 무는 질문 1순위, 그놈의 OOP)
객체 지향 프로그래밍(Object Oriented Programming) 여러 SW기업 신입사원 기술면접에서 워밍업느낌으로 면접자들 긴장을 풀어줄 겸 처음으로 자주 나오는 질문이다. "객체 지향 프로그래밍에 대해 설명 한번 해..
jeong-pro.tistory.com
- https://victorydntmd.tistory.com/117
객체 지향 프로그래밍( OOP ) 개념
1. 객체 지향 프로그래밍 ( Object Oriented Programing ) 1) 객체 객체란 말 그대로 대상을 나타내는 단어입니다. 예를 들어, 사람 개인 한 명 한 명을 모두 객체라 할 수 있고, 책 한 권 한 권을 객체라 할 수..
victorydntmd.tistory.com
'Note > 개념정리' 카테고리의 다른 글
Maven (0) | 2019.08.20 |
---|---|
디자인 패턴 (0) | 2019.08.19 |
자바(Java)의 메모리 구조 (0) | 2019.08.19 |
라이브러리와 프레임워크 (0) | 2019.08.19 |
Spring 기본 개념 (0) | 2019.08.17 |