👉객체 지향 프로그래밍(OOP)이란?
객체 지향 프로그래밍(영어: Object-Oriented Programming, OOP)은 컴퓨터 프로그래밍의 패러다임 중 하나이다. 객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다.
객체 지향 프로그래밍은 프로그램을 유연하고 변경이 쉽게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다. 또한 프로그래밍을 더 배우기 쉽게 하고 소프트웨어 개발과 보수를 간편하게 하며, 보다 직관적인 코드 분석을 가능하게 하는 장점이 있다. 그러나 지나친 프로그램의 객체화 경향은 실제 세계의 모습을 그대로 반영하지 못한다는 비판을 받기도 한다.
객제 지향 프로그래밍의 특징
1. 자료 추상화
객체들이 공통적으로 필요로 하는 속성이나 동작을 하나로 추출해내는 작업.
사진에서 볼 수 있는 토끼, 치타, 고양이, 사자라는 객체들은 '동물' 이라고 추상화할 수 있다.
2. 상속
여러 개체들이 지닌 공통된 특성을 부각시켜 하나의 개념이나 법칙을 성립하는 과정.
먹기, 걷기, 잠자기와 같은 공통된 특성을 상위 클래스에서 상속받아 코드의 재사용이 용이해진다.
3. 다형성
서로 다른 클래스의 객체가 같은 동작 수행 명령을 받았을 때, 각자 특성에 맞는 방식으로 동작하는 것.
같은 '짖다'의 메소드르 실행했을 때, 자식 클래스들이 다른 '짖다'를 한 것이 다형성이다.
4. 캡슐
정보 은닉화를 통해 높은 응집도, 낮은 결합도를 유지할 수 있도록 설계하는 것.
객체 내부의 어떤 동작에 대한 구현이 어떻게 되어있는지 감추는 것이다
객체 지향 프로그래밍이란 무엇인가요?
-> 객체 지향프로그래밍이 무엇인가의 질문에 답해드리겠습니다. 객제 지향 프로그래밍(OOP)이란 프로그램을 구성하는 구성요소들을 객체라는 곳에 담아두어 상호작용을 통해 프로그램이 동작할 수 있도록 하는 것을 말합니다.
과거에 코드를 작성하면 절차적으로 이루어지는 절차적 프로그래밍과는 달리 구성요소들이 객체 안에 담겨있어 특정 객체만 동작되게하거나 데이터를 처리하는데 용이하다는 점이 있는 등 다양한 일을 할 수 있게 합니다.
객체지향 프로그래밍에는 뭐가 있나요?
-> 객체지향 프로그래밍에는 뭐가 있냐는 질문에 답해드리겠습니다. 객체지향 프로그래밍은 크게 캡슐화, 상속, 추상화, 다형성으로 나눌 수 있습니다.