코드는 크게 2가지 분류로 나뉜다.
1) 사용자와 닿아있는 부분
- 프론트엔드 (데이터를 조금 다룰 수 있다는 뜻, 실제 어떠한 기능을 하지는 x)
2) 프로그램에서 기능을 수행하는 부분
- 백, 서버, DB
- DB & DBMS (MySQL, 오라클, ....)
- 서비스 단, Controller, 비즈니스 단
MVC란?
Model View Controller를 의미한다.
M V C 패턴으로 코드를 작성하면 유지보수가 용이하다.
[M] : DB, DBMS
[V] : 사용자에게 출력을 하는 메서드, 사용자에게 입력을 받아오는 메서드
[C] : V와 M을 조합하는 영역
View
프론트엔드
- 사용자에게 입출력을 하고/받아오는 메서드
- 입출력을 담당하는 것이라서, 스캐너나 syso(출력)는 view 파트에만 있다.
- 사용자에게 결과를 보여주는 (콘솔창에 출력을 해주는) 아이들은 다 void (output이 없음)
- 반면, 사용자가 무언갈 입력받은 아이들은 입력값을 다른 곳에서 사용해야 하므로 output이 있다. (return)
Model
백 단
DB
- MVC 패턴에서 DB == data를 VO, DTO라고 한다.
- 학생, 포켓몬, 사람, 동물 등 객체는 다 DTO
- getter, setter, 멤버변수 선언 DTO에서
DBMS
- MVC 패턴에서 DBMS를 DAO라고 한다.
- 배열리스트와 CRUD를 가지고 있다.
- 또한 DAO는 다섯가지의 메서드만 가질 수 있다. (CRRUD) 따라서 다른 메서드는 가질 수 없다.
Controller
- V와 M을 조합하는 영역
- ==사용자(Client)에게 M과 V를 조합해서 서비스를 제공하는 역할
- Controller는 View와 Model을 가져다 쓰는 것이어서 스스로 무언가를 만들지는 않는다.
'JAVA > java' 카테고리의 다른 글
[JAVA] MVC 패턴_2 (4) | 2024.07.25 |
---|---|
[JAVA] 팀 과제_커뮤니티 사이트 (0) | 2024.07.19 |
[JAVA] 컬렉션 (배열리스트와 맵) (0) | 2024.07.17 |
[JAVA] 인터페이스 (0) | 2024.07.17 |
[JAVA] 객체지향언어의 특징_추상화 (0) | 2024.07.16 |