객체지향 4.0-4.10
- 프로그램을 객체로 정의해서 객체들끼리 서로 의사소통하도록 디자인하고 코딩해 나가는것을 말한다.
- 장점
- 객체지향은 오브젝트 단위로 만들어 나가기 때문에 한 곳에 문제가 생긴다면 관련있는 오브젝트만 수정하면된다.
- 여러번 반복되는 것이 있다면 관련된 오브젝트를 재사용 할 수 있다.
- 무언가 새로운 기능이 필요하다면 새로운 오브젝트를 다시 만들면 되니까 확장성도 높아진다.
- 생산성이 높아지게하고 높은 퀄리티의 프로그램을 만들 수 있고 유지보수를 더 빠르게 해준다.
- 오브젝트에 있는 데이터들은 fields or properties라고 부르기도 한다. 함수들은 보통 method라고 부른다.
- 캡슐화: 서로 관련 있는 데이터와 함수를 한 오브젝트 안에 담아 두고 외부에서 보일 필요가 없는 데이터를 잘 숨겨 놓음으로서 캡슐화를 할 수 있다
- 추상성: 내부의 복잡한 기능을 이해하지 않고 외부의 간단한 인터페이스를 통해 쓸 수 있는것을 말한다.
- 상속: 한번 잘 정의해둔 클래스를 재사용할 수 있다.
- 다형성: 다형성은 상속을 통해서 공통적으로 함수를 호출할 수 있다.