카카오테크캠퍼스 2기

클래스의 종류

지미닝 2024. 4. 20. 17:49

현실 세계에서는 다양한 객체들이 존재하고 그 객체들은 자신의 역할이 정해져 있다.

객체지향 프로그래밍에서는 클래스를 객체로 설계하기 때문에 클래스를 모델을 설계하는 도구라고도 한다.

01. 모델(Model)이란 무엇인가

  • 객체_Object(현실적) = 클래스_class(프로그래밍적)=모델_Model(소프트웨어공학적)
  • 객체지향 프로그래밍에서 클래스를 역할에 따라 부르는 이름모델(Model)이라고 부른다.
  • 역할에 따라 다양한 모델을 만들어 사용할 수 있다.

클래스로 만들어 사용하게 될 모델의 종류

개념 모델
시작 클래스 시작 클래스(모델)
DTO, VO Model 데이터를 담는(이동) 모델
DAO Model 데이터를 처리(DB)를 하는 모델
DBMS에 접근하는 모델 (Data를 CRUD 하는 기능을 가지고 있는 모델)
Utility Model 도움(Utility)을 주는 모델

02. DTO, VO 클래스가 왜 필요할까

  • 데이터를 하나로 묶어야 할 경우 데이터를 하나로 수집하는 역할을 하는 클래스가 필요하다.

    → 이러한 역할을 해주는 것이 DTO, VO 클래스다.

    • 자동차의 정보를 입력받아서 다른 메서드로 이동해야하는 경우
    • 데이터베이스에 있는 데이터를 프로그램에서 가져와서 사용해야 되는 경우

03. DAO 클래스가 왜 필요할까

  • DAO클래스란, 데이터베이스에 데이터(DTO,VO)를 저장, 수정하거나 검색,삭제를 하기 위해서 만들어지는 모델(클래스)
    • CRUD 동작을 가지고 있는 클래스
    • 비지니스 로직을 처리하는 클래스

04. Utility 클래스가 왜 필요할까

  • 반복적으로 사용해야 될 동작(기능)을 별도의 클래스로 만들어 놓고 필요할 때 사용하는 클래스
  • 꼭 필요한 것은 아니고, 필요하면 만들어서 사용하면 된다.
    • 자바에서도 java.util 패키지에 이러한 Utiltiy 클래스가 많이 있다.