정말 오랜만에 til 이다.
과제 때문에 til을 쓸 시간이 없어서 매번 못 쓰고 있었는데, 이번 과제를 위해 필요로 하는 강의의 양이 전의 강의보다 상대적으로 많이 줄어서, 과제를 빨리 끝낼 수 있었다.
이번 과제는 저번 과제의 데이터베이스 관리에 쓰는 기술과 인증 기능 그리고 검증 기능 등을 추가한 과제였다.
해당 과제도 이전 과제랑 마찬가지로 lv별로 과제의 요구사항을 다르고, 난이도 또한 다르다.
이번 과제에서 내가 중점적으로 해본 것은
두가지 모두 전 과제에서 내가 만족하지 못하였기에 이번 과제에서 더 열심히 한 것 같다.
이전 과제와 더불어 이번 과제에서 필요로 하는 개념에 전반적인 흐름을 적어보려한다.
ps 해당 과정은 왕복되는 과정이나 왕복과정에서 역할을 쓰기 애매한 경우가 있어, 설명 받는 주체를 기준으로 요청이 들어오는 것과 응답을 보내는 부분의 역할을 함께 적었다.
스프링으로 개발을 할 적에 MVC 와 3layer 라는 말을 자주 들을 수 있게 된다.
우선 MVC 와 3layer의 역할은 비슷하면서도, 비슷하지 않다.
model view controller 를 가지고, 서로에 역할 군에 맞게 역할을 다 하되, 데이터를 주고 받을 수 있는 경우? 데이터를 주거나 받을 애가 정해져 있다.
controller - > model - > view
MVC 와 3layer 의 차이는 view에 있다고 말할 수 있다.
view 는 시각적으로 보여주는 역할로 웹페이지를 말한다. 그말은 즉, 3layer에는 해당 기능이 없거나, 다른 것으로 대체한다는 말이다.
우선 내용을 이어가자면,
controller에서 받은 요청에 따라 필요 데이터를 model에서 가지고와 view로 뿌려준다.
이때, SSR ,CSR 이라는 개념이 나온다
SSR(Server Side Rendering) : 서버에서 이용할 html을 미리 만들어 요청마다 html을 바꿔끼워주 듯이 보여주는 방법이다.
CSR(Client Side Rendering) : 위와는 다르게 비동기식으로 실시간으로 변동에 대해 웹페이지의 일부가 변동에 적용되어 페이지를 보여준다. - 이때 javascript 를 쓴다.
CSR - ajax 라는 개념과 SPA 라는 개념도 같이 알아 두면 좋다.
controller , service , repository 로 구성이 된다.
service 비지니스 로직.. 계산하는 아이 , repository 저장db와 소통하는 아이
자 간략적으로 두개의 소개는 끝났고, 다른점을 말하자면
3layer 는 프론트앤드 와 같이 협업함으써 MVC에서 만든 view 에 대해 고려없이 비지니스 로직에만 집중 할 수 있다.
3layer 에서의 프론트앤드는 CSR 을 채용하는 반면, MVC는 SSR을 채용한다.
생각보다 배운 것은 많지만, 한번 쓰려하니 어디서 부터 적어야할지 감이 안잡힌다..;
내일부터는 주제를 정하고 til을 작성해야겠다