객체지향 프로그래밍 입문 - 객체

Beomsun·2022년 6월 10일
1

최범균님의 인프런 강의를 학습한 내용을 기록했습니다.

객체

객체란?

객체는 제공하는 기능으로 정의(내부적으로 가진 필드로 정의하지 않음)

객체의 햄식 -> 기능제공

   ex) 회원객체
       - 암호 변경하기 기능
       - 차단여부 확인하기 기능

   ex) 소리제어기
       - 소리 크기 증가하기 기능
       - 소리 크기 감소하기 기능
       

기능 명세

  • 메서드(오퍼레이션)를 이용해 기능 명세
    • 이름, 파라미터, 결과로 구성

객체와 객체는 기능을 사용해 연결

    기능 사용 = 메서드 호출
    VolumnController volCont = new VolumnController();
    volCont.increase(4);
    volCont.decrease(3);
    int currentVol = volCont.volume();

메시지란?

   객체와 객체 상호작용을 메시지를 주고받는다고 표현한다. 메서드를 호출하는 메시지, 리턴하는 메시지 익셉션 메시지

클래스란?

   데이터를 캡슐화 하고 캡슐화한 데이터를 다루는 코드를 한 곳에서 관리하는 것이다.

절차 지향 VS 객체 지향

절치지향

- 데이터를 여러 프로시저가 공유하는 방식(프로시저와 데이터간의 접근이 자유롭다)
- 데이터가 변경되면 데이터를 사용하는 코드도 변경해야 함
- 개발 초기단계에서는 편의성이 있지만 시간이 지날수록 프로시저가 어느 데이터에든 접근할 수있어 캡슐화가 저하되기 때문에 개발이 어려움

객체지향

- 데이터와 프로시저를 객체라는 단위로 묶고 데이터에 직접 접근을 할 수 없고 프로시저를 이용해 데이터에 접근하는 방식

0개의 댓글