객체 지향
사실 여태 온전한 객체 지향으로 코딩해본 적이 없다. 그렇다고 함수형 프로그래밍을 좋아하는 것도 아니다. 다루기 쉽고 어렵지 않았기 때문에 항상 절차 지향적인 프로그래밍을 해왔다. 면접에서 객체 지향에 대해 물어봤을 때 나는 아무 말도 할 수가 없었다. 조금 더 공부해 보자.
이 글과 하위 글들은 [객체 지향 프로그래밍 입문]에 관한 내용입니다.
최범균님의 인프런의 강의를 보며 정리한 내용으로 문제가 될시 삭제하겠습니다.
강의 링크도 첨부해 둡니다.
객체란,
객체의 핵심은 기능을 제공하는 것이다. 따라서 _객체는 제공하는 기능으로 정의_하며 내부적으로 가진 필드 (데이터)로 정의하지 않는다.
예를 들어 [회원 객체]라면 '암호 변경하기 기능', '차단 여부 확인 하기 기능' 로 정의할 수 있고, [소리 제어기]라면 '소리 크기 증가하기 기능', '소리 크기 감소하기 기능'으로 정의할 수 있다.
기능 명세
메서드(오퍼레이션)를 이용해서 기능 명세
이름, 파라미터, 결과로 구성
객체와 객체
객체와 객체는 기능을 사용해서 연결한다.
기능 사용 = 메서드 호출
Q) Member 혹시 객체일까?
A) 실질적으로 이 코드는 name
과 id
를 직접 접근하는 것과 차이가 없다. 실질적으로는 기능이 없고 데이터에 더 가깝다. 데이터 클래스라고도 한다.
여기서 기능이 더 붙게된다면 그 때부터 객체라고 부를 수 있을거 같다.
Last updated