• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

프론트엔드 쪽을 보면서 궁금한게 생겼습니다

22.12.21 17:33 작성 22.12.21 17:33 수정 조회수 399

0

안녕하세요 강의 잘 듣고 있습니다!

1) MVC에서 V는 view잖아요 그리고 view를 제공하는 jsp나 thymeleaf같은 템플릿이 있구요... 그러면 MVC라는건 BE가 프론트 엔드 없이 혼자서 개발할때 View를 고려하며 개발하는 과정인가요?? 프론트엔드 개발자가 같이 일을 할텐데 MVC에서 view를 고려하는 맥락이 무엇인지 궁금합니다...!! BE에서는 그냥 기능구현만 하고 view 필요없이 데이터만 넘겨주면 될 것 같아서요... View는 왜 있는걸까요 .. ?

2) 그리고 강의 내용과는 큰 상관 없는 것 같지만, BE에서 FE로 데이터를 어떻게 넘겨주는지 이해가 안돼서 질문드립니다... 검색해보면 rest API 를 사용하여 json을 넘겨주는거로 이해를 했는데, 영한님 강의 들어보면 json을 넘겨주는 과정은 없는 것 같아서 FE와 어떻게 소통하는지가 궁금합니다!

알려주시면 감사하겠습니다 !!

답변 1

답변을 작성해보세요.

4

codesweaver님의 프로필

codesweaver

2022.12.22

안녕하세요, 팡휘 님! 공식 서포터즈 codesweaver 입니다.

MVC 개념은 웹 초창기, 뷰, 로직, 도메인 코드가 명확한 구분없이 혼재되어 사용되고 있던 때에 주창한 개념입니다.

 

가령 PHP로 만든 오래된 프로젝트에서 가끔 이런 경우를 만납니다.

데이터베이스 쿼리, 데이터 가공, HTML 코드 생성을 모두 하나의 파일안에서 처리하는 경우요.

초기 개발은 이런 방법이 속도가 더 빠를 수 있습니다만, 업무는 고정된 것이 아니고 항상 변하고 있기에 이에 대응하는 부분을 고려하지 않을 수 없습니다. 또 인간의 인지 크기에는 한계가 있기에 너무 큰 파일을 제대로 인지, 파악하기 어렵습니다. 그래서 이런 덩어리 코드를 논리상 유사한 것끼리 분류(추상화)하자는 아이디어가 MVC 입니다.

 

그리고, 스프링에서 뷰에 JSON 데이터를 전달하기 위해선 @RestController 를 사용하거나 @ResponseBody 어노테이션을 사용합니다. 두 키워드로 검색하시면 자료를 찾으실 수 있을거에요.


감사합니다.

팡휘님의 프로필

팡휘

질문자

2022.12.22

답변 감사합니다!! ^.^