오늘은 절차지향 프로그래밍과 객체지향 프로그래밍에 대해서 알아보는 시간을 갖도록 하겠습니다.
: 기능을 작은 함수로 나누고, 각가의 함수가 데이터를 매개변수로 전달받아 작업을 수행. 코드의 재사용성과 모듈화에 유리하지만, 프로그램이 커지면 복잡해질 위험성 존재
: 데이터를 속성과 메서드로 묶어 객체 단위로 프로그램을 구성하고, 객체 간의 메시지를 통해 작업을 수행하며 추상화 캡슐화 상속 다형성 등의 특징을 갖게 됨
(1) 캡슐화
: 객체를 캡슐로 싸서 그 내부를 보호하고 볼 수 없게 하는 것
(2) 상속
: 상위 개체의 속성을 하위 개체에 물려줘 하위 개체가 상위 개체의 속성을 모두 가지는 관계
** 슈퍼클래스에 만들어진 필드와 메소드를 물려받음으로써 코드의 중복 작성을 방지하고, 코드를 재사용함으로써 코드 작성에 드는 시간과 비용을 줄여줌
(3) 다형성
: 같은 이름의 메소드가 클래스 혹은 객체 따라 다르게 구현되는 것