10월 14일 (목) MVC

남이섬·2021년 10월 14일
0

MVC (Model View Controller)

  • 소프트웨어가 돌아가는 방식에대한 하나의 패턴
  • 특정 라이브러리를 지칭하는 것은 아니다, 어떤 서비스가 돌아가는 방식에 대한 아이디어, 디자인, 패턴
  • 특징은 서비스가 돌아가기 위해서 여러과정과 처리들이 필요하다,
    그런 처리들을 각 기능 별로 나눠서 프로그래밍을 할때 정돈된, 의도된 코드를 특정 역활에서 할 수 있다 (코드가독성, 코드관리성, 코드퀄리티에서 유리하다)

MVC를 사용하는 wab frameworks

  • Ruby on Rails (Ruby)
  • Laravel (PHP)
  • Codeigniter (PHP)
  • Django (python)
  • Express (JS)
  • Backbone (JS)
  • Angular (JS)
  • Flask (python)

1. Model

  • 데이터의 정보를 가지고 있다, 자신이 데이터를 가지고 있던지, 데이터베이스와 연결이 되어서 데이터를 가져올 수 있다 (모델은 데이터베이스와 이야기를 한다)
  • 데이터베이스에서 가지고온 데이터 또는 모델 자체에서 가지고있는 데이터를 가지고 컨트롤러와 이야기를 한다
  • 모델이 뷰랑 이야기하는 경우는 거의 없다

2. View

  • 유저가 보는 화면을 보여주는 역할 (HTML, CSS)
  • 컨트롤러와만 이야기를 한다
  • 뷰는 데이터를 받으면 그것을 그리는 역할

3. Controller

  • 뷰에서 일어나는 엑션과 이벤트에 대한 input값을 받는다
  • 받은 input값을 모델에 던저주기전에 일련의 가공과정을 거친다
  • 가공과정을 거친 값을 모델에게 전달해준다

View(액션, 이벤트 인풋값) -> Controller(가공) -> Model (database) -> Controller(가공) -> View

profile
즐겁게 살자

0개의 댓글