MVC 란 무엇입니까? 이 소프트웨어 아키텍처를 알아보십시오!

에 대한 학습 MVC 란 무엇입니까? 그리고 이 새로운 유형의 소프트웨어가 코드 세계와 가장 중요한 특성에 혁명을 일으켰기 때문에 이 모든 것은 아래에서 설명할 내용 덕분입니다.

mvc-2란 무엇인가

MVC 또는 Model View Controller, 코드를 만드는 새로운 방법

MVC 란 무엇입니까?

MVC는 Model View Controller의 약자이며 목표는 소프트웨어 설계 기반 역할을 하는 것입니다. 소프트웨어 아키텍처는 이러한 요소의 구성을 용이하게 하는 가이드로, 어떻게 되어야 하는지에 대한 모델을 제공합니다.

MVC는 다른 소프트웨어 아키텍처와 달리 각 코드를 분리하여 특정 작업을 처리하므로 단일 작업으로 코드를 개발하고 중단 없이 수행됩니다.

사용을 용이하게 하려면 사용자 인터페이스를 사용하십시오. 사용자 인터페이스는 이해하기 쉽고 컴퓨터를 인터넷 사용자와 직접 연결하기 때문입니다. 마찬가지로 MVC 코드는 다양한 프로그램이나 스키마에 사용할 수 있습니다.

사용 시간이 길고 실용적이며 상호 작용이 간단합니다. 과거와 같이 많은 복잡성 없이 소프트웨어를 만들려고 하기 때문입니다. 시스템은 사용하더라도 서로 다른 코드를 사용하고 각각 하나의 작업이나 개념에 대해서만 작동하도록 구분합니다.

위에서 설명한 것처럼 아키텍처인데 왜 그럴까요? 글쎄, 그것은 건설 계획과 마찬가지로 세 가지 다른 작업 계획을 수립합니다. 모델, 뷰 및 컨트롤러.

코드의 개념에서 분리한다는 이러한 아이디어는 오래되었고 좋은 프레임워크가 등장하면서 추진력을 얻었습니다. 프레임워크는 문제를 해결하고자 하는 소프트웨어 유형이며 그 구성은 문제 자체를 기반으로 합니다.

MVC란 무엇입니까?: 모델, 뷰 및 컨트롤러의 역사

Model, Views & Controllers의 아이디어는 웹 페이지가 생성되기 이전에 있었다고 합니다. GUI나 그래픽 비디오 인터페이스에서 나온 아이디어였습니다. GUI는 시스템에서 사용 가능한 데이터인 시각적 콘텐츠를 나타내는 소프트웨어를 사용하는 사용자 인터페이스와 함께 작동하는 도구입니다.

개념을 다른 기능으로 나눈 소프트웨어를 사용하는 것은 선구적인 혁신 중 하나였습니다. 그것은 70년대에 개념으로 시작되었고, 80년대 후반에 Smalltalk-80용 버전이 구현되었습니다.

Smalltalk-80은 MCV와 달리 개념과 기능을 분리하지 않는 능동형 프로그래밍 언어입니다. MCV의 통합은 기반을 테스트하는 작업 라이브러리에 제공됩니다.

마지막으로 80년대 후반에 MVC는 Smalltalk-XNUMX에서 분리된 자체 개념으로 출시되었습니다. 초기에 MCV는 입력 모드에 기반한 코드 분리 기능을 아직 구현하지 않은 매우 기본적인 프로그램이었습니다.

몇 개월의 개발로 이것은 출력 모델인 보기를 구현하고 입력 모델과 결합하여 변경되었습니다. 수년에 걸쳐 이러한 유형의 모델은 더 이상 현재 응용 프로그램에 충분하지 않았으므로 MVC는 오늘날 알려진 개념으로 발전했지만 오늘날의 것이 될 때까지 다른 버전을 거쳤습니다.

HMVC(계층적 모델 보기 컨트롤러)

2000년 초에 발생한 첫 번째 변형 중 하나입니다. MVC와 달리 HMCV는 모델을 먼저 구성하고 마지막에 보기를 구성하므로 약간 더 긴 프로세스입니다. 이 버전에서는 보기에서 데이터를 직접 검토하거나 액세스할 수 없습니다.

모델 보기 어댑터(MVA)

MVC와 유사한 버전으로 각 작업이나 코드를 수준별로 구분하는 유사한 아키텍처를 가지고 있습니다. 이전 모델과 달리 MVA는 각 작업을 평준화하지만 MVC와 같이 모델과 뷰 간의 연결을 허용하지 않습니다.

모델 뷰 발표자(MVP)

Model View Presenter는 사용자와 PC 간의 연결 지점을 설계하는 데 계속 사용됩니다. 서버가 자율 응답을 제공하고 모델이 제공하는 데이터를 변환하고 보기를 위해 압축하는 테스트에 사용됩니다.

모델 뷰 뷰모델(MVVM)

이러한 유형의 소프트웨어 아키텍처는 서로 연결된 모델과 뷰의 전체 구조를 연결 해제하여 데이터의 완전한 전송을 달성합니다. 이것은 좋은 시각적 모델을 개발하고 응용 프로그램에서 좋은 그래픽 개발을 제공합니다.

MVC의 장점은 무엇입니까?

이 도구는 우수한 품질의 응용 프로그램을 구성하는 데 사용되는 소프트웨어 작성 시스템이므로 오늘날 최고의 품질과 프로그래밍 용이성을 추구합니다.

웹과 컴퓨터가 탄생한 이후로 프로그래밍은 큰 붐을 이루었고 시스템 엔지니어는 전 세계에 혁명을 일으킨 훌륭한 응용 프로그램이나 소프트웨어를 설계하기 때문에 중요한 역할을 했습니다. 각 프로그램을 작성하려면 적절한 코드 시스템을 사용해야 합니다.

이전의 프로그래밍은 무겁고 복잡하여 시스템이나 응용 프로그램으로 새로운 것을 가져오는 데 오랜 시간이 걸릴 수 있지만 프로세스를 용이하게 하는 서비스나 프로그램이 조금씩 개발되었습니다. 코드를 분리하거나 하나로 묶는 프로그램에서.

Model View Controller는 코드가 수행해야 하는 각 작업을 레벨별로 구성하고 다른 작업을 방해하는 작업이 없기 때문에 시스템 엔지니어 또는 프로그래머에게 완벽한 솔루션이었습니다.

MVC에서 코드를 재사용할 수 있어 프로그래밍된 모든 요소에서 완전한 유창성을 얻을 수 있으므로 프로그래밍 프로세스가 훨씬 쉬워집니다.

MVC는 프로그래밍의 용이함을 제공할 뿐만 아니라 더 빠르게 수행하여 고품질 앱을 생성합니다.

이 글이 마음에 드셨다면 읽어보시길 권합니다 "자바의 클래스와 객체", Java에 대한 완전한 개념의 작업, 당신은 분명히 그것을 좋아할 것입니다.

MVC가 없는 HTML

처음에는 이 소프트웨어 아키텍처에 대한 모든 설명이 모호할 수 있지만 HTML, CSS 및 PHP 요소와 같은 것을 고려합니다.

각각은 페이지를 프로그래밍하거나 디자인하는 데 사용됩니다. 가장 흔한 것은 HTML인데, 처음에는 이렇게 잘 짜여진 구조가 없었고 프로그래밍 당시에는 어떤 기능도 분리하지 않았기 때문에 결과적으로 코드가 뒤섞이고 무언가를 변경하고 싶을 때, 모든 코드를 변경해야 했습니다.

HTML 문제는 프로그래밍 작업을 매우 지루하게 만들었지만 일부 코드 작성자는 프로그래밍할 때 책임을 분리할 무언가를 만드는 훌륭한 아이디어를 가지고 있었습니다. 그들은 CSS 언어를 만들었습니다. CSS 언어를 사용하면 각 코드의 작업을 할당하고 구분할 수 있으므로 전체 코드를 반복하거나 변경하는 지루한 작업을 제거할 수 있습니다.

스파게티 코드

HTML의 경우는 그에게만 일어나는 것이 아닙니다. 일반적으로 다른 페이지를 만들려면 다른 기능을 수행하는 코드를 결합하는 경향이 있습니다. 코드는 원하는 것을 표시하기 위해 결합되는 경향이 있고 유익한 것이지만 일부 코드에서 약간의 실수가 있으면 전체 프로세스가 반복되어야 합니다.

사용되는 언어가 결합되어 프로그래머는 아마도 관련이 없을 수도 있는 사항을 단계적으로 수정해야 합니다.

이러한 모든 유형의 오류 또는 상황은 언어의 간단한 분리로 해결되며 각 유형은 당면한 작업에 중점을 둡니다. 분리 오류가 있을 뿐만 아니라 이전에 얽혀 있던 코드를 재사용하려는 순간의 무모함도 있습니다.

동일한 코드가 다른 프로그램이나 작업에 사용될 예정이라면 MVC 덕분에 매우 느리게 수행되어야 했습니다. 코드가 재사용되고 한 순간에 이미 형성된 코드가 재사용되기 때문에 더 이상 필요하지 않습니다.

이것은 MVC 시스템이 작동하는 방식이며, 프로세스가 어떻게 발생하는지에 대한 간단한 표현입니다.

모델 보기 발표자 소개

기사의 시작 부분에서 작동 방식과 모델이 작동하는 이유에 대해 설명했지만 모델, 보기 및 컨트롤러의 각 부분에 대해서는 구체적으로 설명하지 않았습니다.

모델

첫 번째 수준이며 시스템 및 운영과 관련된 모든 데이터를 찾습니다. 즉, 시스템의 내용, 가능한 업데이트를 처리합니다.

시스템이 시각화를 위해 정보를 저장, 변환 및 변경하는 방법으로 구성된 «비즈니스 로직»도 있습니다.

이 모델을 통해 사용자는 끝없는 파일을 검색할 필요 없이 필요한 정보를 사용할 수 있으며 입력만 하면 «보기»를 통해 필요한 정보가 표시됩니다. 시스템이나 정보에서 무언가를 수정하려면 정보를 모델로 보내는 "컨트롤러"를 거쳐야 합니다.

일반적으로 정보는 다른 컨트롤러와 함께 작동하며 SQL(데이터를 완전히 제어하기 위한 시스템 언어)을 사용하는 대신 클래스와 개체로 구성된 데이터의 다른 부분에 직접 고정됩니다.

라 비스타

보기는 모델이 보낸 정보가 사용자를 위해 표시되는 가로대이며 광학 인터페이스에 내용을 표시합니다. 프로그램 코드가 반영되어 작업하고 사용자 인터페이스에 표시됩니다.

이 요소는 페이지, 서버 등을 구축하는 데 가장 적합한 코드이기 때문에 HTML 및 PHP 코드와 함께 작동합니다. 이 코드는 모델이 보낸 정보의 전체 변환인 출력으로 전송됩니다.

컨트롤러

컨트롤러는 모델을 통해 만들어진 사용자의 요청에 대한 답변을 제공하는 컨트롤러입니다. 요청은 모든 유형의 정보 편집, 생성 또는 검색에서 정보와 관련됩니다.

정보가 표시되는 방식, 즉 정보가 처리되고 "보기"에 반영되는 방식을 편집할 수 있는 도구이기도 하며, 이는 모델이 정보를 제공하는 방식의 변경이기도 합니다. 간단히 말해서 컨트롤러는 요청을 수락하고 다른 방식으로 반영하기 위해 뷰에 도달할 수 있는 모델과 뷰 사이의 다리입니다.

컨트롤러는 작성 중인 프로그램 또는 작성 중인 애플리케이션이 필요로 하는 것에 대한 답변을 제공하는 사람이며, 최종 목표는 모든 정보가 처음부터 끝까지 도착하는 것입니다.

MVC는 무엇입니까

구성 요소는 어떻게 상호 작용합니까?

각 구성 요소의 작업은 보시다시피 순서에 따라 생성되며 각 구성 요소가 다른 작업에 영향을 줍니다. 컨트롤러는 다른 컨트롤러와 결합하여 작업 흐름을 더 많이 만들고 프로그램이나 애플리케이션을 생성하도록 제공되지만 전체 프로세스가 수행되는 방식에 대한 더 나은 설명은 다음과 같습니다.

  1. 인터넷 사용자는 사용자 인터페이스에 들어가기 위해 다양한 옵션을 사용하기 시작합니다. 즉, 일부 보완을 통해 페이지나 서버에 들어갑니다.
  2. 컨트롤러는 요청을 수신하고 컨트롤러는 메시지를 보고 모델로 보냅니다. 모든 요청은 이벤트 핸들러(외부 코드 응답을 제공하는 Java 또는 HTML 코드)를 통해 트리거됩니다.
  3. 컨트롤러는 요청을 이행하고 정보를 사용하고 필요한 작업을 수정하는 모델로 들어갑니다. 일부 작업을 수행하기 위해 컨트롤러는 다른 캡슐화된 코드, 즉 명령 패턴을 사용해야 합니다.
  4.  경우에 따라 컨트롤러는 완전한 작업을 수행하기 위해 모델에서 더 많은 데이터를 사용하며 이를 브리지 역할을 하여 보기로 보내야 합니다.
  5. 컨트롤러는 인터넷 사용자가 제공한 모든 정보와 주문을 즉시 전송하며 원하는 것을 시각화해야 합니다.
  6. 보기는 좋은 시각화를 제공하기 위해 모델에서 가능한 한 많은 정보를 사용하고 그 안에 있는 모든 것을 반영합니다.
  7. 모델은 어떤 일이 일어나고 있는지에 대한 정보를 볼 수 없기 때문에 변경 사항에 대해 경고하는 소프트웨어 유형을 사용하고 이러한 방식으로 정보 또는 인터페이스에서 필요한 변경을 수행합니다.
  8. 인터페이스는 인터넷 사용자가 수행하는 작업의 수에서 각 상호 작용에 따라 프로세스를 반복합니다.

웹 애플리케이션에서 어떻게 사용됩니까?

MVC 소프트웨어가 만들어졌을 때 작업과 응답이 즉각적이기 때문에 데스크톱 도구로 구현되는 것으로 생각되었습니다. 기술의 발전으로 가상 애플리케이션에 소프트웨어를 적용할 수 있게 되었고 데스크톱 프로그램처럼 미리 결정되지 않고 응답할 수 있게 되었습니다.

MVC는 가상 언어에 맞게 조정되어 다양한 수준이 무엇보다도 HTML 또는 JavaScript와 같은 언어와 조화를 이룰 수 있도록 했습니다. 프레임워크는 MVC 아키텍처를 조정하여 웹을 위한 자체 아키텍처 중 하나를 형성하는 데 사용됩니다.

가상 응답을 위한 MVC 아키텍처는 "클라이언트 및 서버"의 아키텍처이며, 이 방식에서 클라이언트는 요청을 하고 서버는 요청에 대한 결과 또는 응답을 제공하는 수신기가 됩니다.

초기에는 이러한 유형의 아키텍처를 구현하기 위해 웹 개발이 완벽하지 않았기 때문에 "씬 클라이언트" 구조에 중점을 두었습니다. 씬 클라이언트는 응답이 중앙 서버에서 제공되고 따라서 조금 늦을 수 있기 때문에 기본 구조입니다. 응답 링크는 브리징이나 처리 없이 입력과 출력 사이에 직접 있습니다.

이 접근 방식은 매우 잘 작동했습니다. 인터넷 사용자가 링크를 입력하는 순간부터 모든 것이 주어집니다. 그 다음부터 링크를 시작하는 작업에서 컨트롤러를 통과하고 사용자가 반드시 표시해야 하는 이미지를 반영하도록 보기 명령을 제공합니다. 보기 . MVC의 세 가지 구성 요소는 가상 서버에 있으며, 가상 서버는 이에 대한 답변을 제공합니다.

MVC와 데이터베이스

기술 발전으로 인해 MVC의 더 나은 개발을 생성하는 서버 및 새로운 언어의 개발이 가능하여 사용자에게 덜 복잡하고 직접적으로 응답할 수 있습니다.

응용 프로그램이 제대로 개발되려면 MVC에 지원 역할을 하는 데이터베이스가 있어야 합니다. 데이터베이스는 애플리케이션의 모든 정보를 관리하는 관리 시스템으로, 모델을 지원하고 필요한 모든 것을 저장하거나 수정합니다.

보기와 컨트롤러는 데이터베이스에서 분리되어 있습니다. 레이어별로 분리되어 있어 그래픽 부분이 가장 좋은 방식으로 최적화되어 모든 정보와 각 보완물에 대한 완전한 시각적 접근 방식을 제공하기 때문입니다.

이 글이 마음에 드셨다면 읽어보시길 권합니다 "프로그래밍의 배열 유형", 프로그램 형성에 있어서의 중요성을 설명합니다. 저는 당신이 그것을 좋아할 것이라는 것을 압니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 담당 : Actualidad 블로그
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.