TOC

This article is currently in the process of being translated into Korean (~98% done).

Introduction:

What is MVC?

MVC는 Model-View-Controller의 약자로, 그래픽 사용자 인터페이스가 초기 단계에 있던 1970년대에 원래 개발된 소프트웨어 패턴입니다. MVC는 응용 프로그램을 세 가지 영역으로 나누려고 노력합니다:

모델

모델은 데이터와 업무 로직이 저장되는 곳입니다. 예를 들어 전형적인 웹 애플리케이션에서는 데이터베이스 테이블이나 당신의 애플리케이션이 처리해야 하는 객체가 있습니다.

뷰(View)는 모델(Model)의 실제 시각적인 표현입니다. 전형적인 웹 애플리케이션에서는 사용자에게 모델을 보여주는 페이지로 나타낼 수 있습니다. 이는 데이터를 입력하는 양식이나 데이터의 출력 또는 두 가지를 결합한 것 등이 될 수 있습니다. 물론, 뷰는 모델의 모든 부분을 표시할 필요가 없으며, 모델은 여러 뷰를 가질 수 있습니다.

컨트롤러

컨트롤러(Controller)는 모델(Model)과 뷰(View) 간의 모든 통신을 처리해야 합니다. 전형적인 웹 애플리케이션에서는 컨트롤러의 메서드가 페이지가 로드되거나 버튼이 클릭될 때 사용자에 의해 호출됩니다. 컨트롤러는 필요한 경우 모델을 업데이트하고, 필요한 경우 새로운 뷰(또는 액션, 이에 대해서는 추후 논의)를 반환합니다.

MVC의 시작

1970년대에 처음 도입된 이래로, MVC 패턴은 30년 동안 많은 주목을 받지 못했었습니다. 초창기 펄이나, PHP, ASP 클래식 같은 초창기 웹 언어는 디자인 패턴에 별로 초점을 두지 않았었고, ASP.NET 출시 때만 해도 MVC는 ASP.NET에 포함되지 않았었습니다. 사실, MVC 기술을 당신의 프로젝트에적용할 수도 있었겠지만, 어떤 방법으로든 이 패턴을 권장하는 유명한 프레임워크는 없었습니다.

2004년에는 Ruby 언어를 기반으로 한 웹 개발 프레임워크인 Ruby on Rails가 출시되었습니다. 이 프레임워크는 MVC 패턴에서 강력한 영감을 받았습니다. 많은 사람들은 이것이 MVC에 대한 주목을 불러일으켰다고 여기며, 이후 많은 PHP 프레임워크가 MVC 패턴을 중심으로 출시되었습니다. 이러한 동향으로 MVC 패턴은 매우 인기를 얻게 되었으며, 아마도 이것이 Microsoft가 .NET 프레임워크를 위해 이를 구현하기로 결정하고 Visual Studio에서 강력한 도구 지원을 제공한 이유 중 하나일 것입니다. ASP.NET MVC는 2007년에 처음으로 공개되었지만, 첫 번째 최종 버전은 2009년에 나오게 되었습니다.

다음 장에서는 ASP.NET MVC가 무엇인지 자세히 살펴보고 주로 ASP.NET WebForms와 비교하는 내용을 살펴볼 것입니다.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!