나는 “객체지향 프로그래밍이 무엇이냐”고 물어본다면 “객체 간의 협력으로 이루어진 프로그래밍이다” 라고 설명할 것이고, “왜 객체지향 프로그래밍을 해야 하냐?”고 물어본다면 “코드의 재사용성과 유지보수성이 높으니까”, “자바는 객체지향 언어어니까!” 와 같이 교과서적인 답변같은 말을 할 것 같다. 왜냐하면 나도 왜 객체지향이 쓰이는지 잘 모른다,,! 저렇게 배웠으니 저렇게 알고있을 뿐,, 이번 기회에 객체지향에 대해 잘 설명할 수 있도록 학습해보고자 한다. 객체지향 프로그래밍; OOP 프로그램은 절차에 따라 실행된다. 절차에 따라 코드를 작성하게 되면 프로그램의 볼륨이 너무 커지게 된다. 이를 함수로 나누어 구조적인 프로그래밍으로 변경할 수 있을 것이다. 하지만 구조적인 프로그래밍에서도 어떠한 문제가 있..