Backend 11강

최창서·2022년 7월 10일
0

객체를 만들자 => Class

쉽게 얘기하면 물건을 만드는 설명서

class 붕어빵 {
// 만드는 법
}
====>
new 붕어빵()

class 컴포넌트{
// 만드는 방법
}
===>
new 컴포넌트()

객체지향프로그래밍 => OOP(Object-Oriented-Programming)

class Date{
	getFullYear(){
    	//년도 추출 기능
    }
    getMonth(){
    	// 월 추출 기능
    }
    getDate(){
    	// 일 추출 기능
	}
}

class 안에 있는 것들은 함수라고 부르기보다 매서드라고 한다.
함수를 만들어놓고 import하게 되면 분리되어 있는 느낌이고,
매서드로 만들어 놓게되면 date.getFullYear() 이러한 방식으로 따로 꺼내서 사용 가능
이렇게 객체로 묶는 방식을 객체지향프로그래밍이라고 한다.

아래와 같은 코드들이 있다고 해보자 그렇다면 판매여부를 검증하는 코드도 2가지 API에서 중복사용되고 API도 중고상품API 카테고리로 묶어 줄 수 있다.

아래와 같이 Class를 활용하여 구조를 나누어주면 코드 시인성도 뛰어나고 유지보수 측면에서 공통되는 로직들을 수정해야할 경우 하나만 수정하면 되기 때문에 굉장히 편리해진다.

폴더 구조 => MVC(Model-View-Controller)

1. API들을 묶는 것을 Controller

위에서 배웠던 객체지향 class로 로직들을 분리했다면 공통되는 API들도 Controller라는 것으로 묶어 줄 수 있다.
class 로직들은 Controller 하위 개념으로 묶이고 API 들은 Controller 라는 개념으로 묶이는 것이다. 마지막 부분에 폴더 구조를 보면 좀 더 이해하기 쉬울 것이다.

2. database, schema 들은 Model

3. view는 HTML 파일들

4. Controller 폴더 안에 service

폴더는 controller class 안에 들어가게되는 핵심 로직 파일들을 저장한다.

전체적인 폴더 구조는 아래와 같다

이렇게 객체지향적으로 파일을 만들어 놓았을 때 장점은 중간에 기획이 바뀌거나 코드 수정이 필요할때 공통되는 로직들이 있는데 모든 API마다 같은 로직을 수정하는 것이 아니라 하나만 수정하면 되기 때문에 유지보수 측면에서 굉장히 좋다.

profile
프론트엔드 개발자

0개의 댓글