Java/[패스트캠퍼스] Java & SpringBoot로 시작하는 웹 프로그래밍

Ch 02. 객체 지향 입문 - 01. 객체와 객체 지향 프로그래밍

hinote 2022. 12. 29. 23:22

객체 (Object)

  • 사전적 의미로는 의사나 행위가 미치는 대상을 나타낸다
  • 구체적, 추상적 데이터의 단위 액션을 수행하는 데이터의 단위 여러가지 명사를 객체라고 할 수 있다 
  • 동작을 나타내는 것을 객체로 나타낼 수 있다(ex. 학생, 회원, 생산, 주문, 배송 )



객체 지향 프로그램과 절차 지향 프로그래밍

  • 아침에 일어나 학교를 가는 과정을 예를 들어 봅시다.

 

 

  1. 절차 지향 프로그래밍 (ex.대표적으로 C언어)
    -시간이나 사건의 흐름에 따른 프로그래밍
    일어난다 -> 씻는다 -> 밥을 먹는다 -> 버스를 탄다-> 요금을 지불한다 -> 학교에 도착


  2. 객체 지향 프로그래밍(ex.C++,C#,Python-컴파일언어는아님,JS)

=> 객체로 버스, 학생, 밥, 학교가 있다고 하면 객체사이에 관계가 생기는데 (인터랩션.협력이 일어난다)

그 관계를 가지고 프로그래밍 하는 것이 객체지향 프로그래밍

 

 

 

객체 지향 프로그램은 어떻게 구현하는가?

  • 객체를 정의 하고 (속성 정의)

  • 각 객체 제공하는 기능들을 구현하고 (역할, 책임 - 이 객체가 해야하는 일)

  • 각 객체가 제공하는 기능들 간의 소통(메세지 전달)을 통하여 객체간의 협력을 구현