아래는 본인쟝의 답변 ㅇㅅㅇ
일단, OOP는 사실 간결하고 짧게 설명하기는 굉장히 어려운 것이라 생각합니다. ㅇㅅㅇ
그래서 제가 실전에서 경험했던 것들을 좀 종합하고 요약해서 설명해보자면
저희가 개발, 코딩을 하다보면 필연적으로 데이터와 함수를 응집시키는 방식과
이렇게 응집시킨 것들을 서로 모아 연결시키는 방식을 쓰게됩니다.
(화이트 보드로가며) 예를 한 번들어보겠습니다
4+4라는 문제가 있습니다. 이 문제를 어떻게 코드로 표현하면 좋을까요?
늘 하듯이 데이터와 함수(행위)로 분리응집하면 다음과 같이 됩니다.
class Int {
const int value = 4;
Int add(Int i) {
return new Int(this.value + i.value);
}
}
4+4라는 문제는
Int(4).add(new Int(4)) 해당 코드로 표현됩니다.
별 것 아닌것처럼 보이지만 저희는 다음과 같은 일을 했습니다.
1. 현실세계의 문제를 코드로 표현했습니다.
2. 이 코드는 컴퓨터가 해석해 실행할 수 있습니다.
3. 동시에 사람이 읽기 쉬우며, 대부분 사람들이 선호하고 또 편하게 생각하는 사고방식을 사용합니다.
저는 절차지향이든 OOP든 함수형이든 결국 현실세계의 문제를
컴퓨터가 해결할 수 있는 코드로 표현하는 방법론이라고 봅니다.
그중 OOP는 무엇보다 사람들의 본능적인 사고프로세스에 매우 최적화되어있는 방법을 사용하며
연관된 데이터와 함수를 하나로 모은 개체들을 서로 연결시켜 하나의 가상현실을 만든다고 생각합니다.
결론은 OOP란 현실세계의 문제를 사람이 쉽게 읽고 쓰고 수정하기 쉬운 형태의 코드로 표현하는 방법론입니다.
ㅇㅅㅇ ㅋㅋ
땡
나두 말 잘하고십다
OOP란 무엇인가요? 객체지향 프로그래밍이요. ★합격☆
ㅇㅅㅇ
보드 앞으로 갈때 지루해서 탈락 ㅋㅋ
말 많아서 탈락
Object-Oriented Programming 객체 지향 프로그래밍 입니다. 한 마디면 합격임
정의 몰라서 어물쩍 넘어가면서 장황하게 설명 탈락 - dc App
아가리코더다운 답변 잘 들었구여
OOP 설계원칙을 읊어줬어야지