MVCとは何ですか? このソフトウェアアーキテクチャを知ろう!

について学ぶ MVCとは何ですか? そして、この新しいタイプのソフトウェアがコードの世界とその最も重要な特性に革命をもたらしたので、これはすべて、以下で説明することのおかげです。

what-is-mvc-2

MVCまたはModelView Controller、コードを作成する新しい方法

MVCとは何ですか?

MVCはModelView Controllerの略で、その目標はソフトウェア設計の基礎として機能することです。 ソフトウェアアーキテクチャは、これらの要素の構築を容易にするガイドであり、それがどうあるべきかについてのモデルを提供します。

MVCは、他のソフトウェアアーキテクチャとは異なり、特定のタスクを処理するために各コードを切り離します。このように、コードは単一のジョブで開発され、中断することなく実行されます。

使いやすくするには、ユーザーインターフェイスを使用します。これらは理解しやすく、コンピューターをインターネットユーザーに直接接続するためです。 同様に、MVCコードはさまざまなプログラムまたはスキーマに使用できます。

これまでのようにそれほど複雑なことなくソフトウェアを作成しようとしているため、その使用時間は長く、実用的であり、その相互作用は単純です。 システムは、使用されている場合でも異なるコードを使用し、それぞれがXNUMXつのタスクまたは概念でのみ機能するようにコードを分離します。

上で説明したように、それはアーキテクチャですが、なぜですか? まあ、建設計画のように、それはXNUMXつの異なる作業計画を確立します。 モデル、ビュー、コントローラー。

コードの概念から分離するというこのアイデアは古く、優れたフレームワークが出現したために勢いを増しています。 フレームワークは問題を解決しようとするソフトウェアの一種であり、その構築は問題自体に基づいています。

MVCとは何ですか?:モデル、ビュー、コントローラーの歴史

モデル、ビュー、コントローラーのアイデアは、Webページが作成される前のものであると言われています。 これは、GUIまたはグラフィカルビデオインターフェイスから生まれたアイデアでした。 GUIは、システムで利用可能なデータを視覚的なコンテンツで表すソフトウェアを使用するユーザーインターフェイスと連携するツールです。

コンセプトをさまざまな機能に分割したソフトウェアを使用することは、先駆的なイノベーションの70つでした。 それは80年代にコンセプトとして始まり、80年代後半にSmalltalk-XNUMXのバージョンが実装されました。

Smalltalk-80は、MCVとは異なり、その概念と機能を分離しないアクティブなプログラミング言語です。 MCVの結合は、そのベースをテストする作業ライブラリに与えられます。

最後に、80年代後半に、MVCは独自のコンセプトとしてリリースされ、Smalltalk-XNUMXから分離されました。 当初、MCVは非常に基本的なプログラムであり、入力モードのみに基づいたコード分離機能をまだ実装していませんでした。

数か月の開発でこれは変化し、出力モデルであるビューを実装し、それを入力モデルと組み合わせました。 何年にもわたって、このタイプのモデルは現在のアプリケーションにはもはや十分ではなかったため、MVCは今日知られている概念に進化しましたが、今日のようになるまでさまざまなバージョンを経てきました。

階層モデルビューコントローラー(HMVC)

これは最初のバリエーションの2000つであり、XNUMX年の初めに発生しました。MVCとは異なり、HMCVは最初にモデルを構成し、最後にビューを構成します。これは少し長いプロセスです。 このバージョンでは、ビューがデータを直接確認またはアクセスすることはできません。

モデルビューアダプタ(MVA)

これはMVCに近いバージョンであり、各タスクまたはコードをレベルごとに分離するための同様のアーキテクチャを備えています。 前任者とは異なり、MVAは各タスクを平準化しますが、MVCのようにモデルとビューの間の接続を許可しません。

モデルビュープレゼンター(MVP)

モデルビュープレゼンターは、ユーザーとPC間の接続ポイントの設計に引き続き使用されます。 これは、サーバーが自律応答を提供し、モデルが提供するデータを変換してビュー用に圧縮するテストに使用されます。

モデルビュービューモデル(MVVM)

このタイプのソフトウェアアーキテクチャは、相互に接続されているモデルとビューの構造全体のリンクを解除し、データの完全な転送を実現します。 これにより、優れたビジュアルモデルが開発され、アプリケーションで優れたグラフィックス開発が提供されます。

MVCは何が良いですか?

このツールは、優れた品質のアプリケーションを形成するために使用されるソフトウェア作成システムであるため、今日、最高の品質とプログラミングの容易さが求められています。

Webとコンピューターの作成以来、プログラミングは大きなブームを巻き起こし、システムエンジニアは、全世界に革命をもたらした優れたアプリケーションやソフトウェアを設計するため、重要な役割を果たしました。 各プログラムの作成には、適切なコードシステムを使用する必要があります。

以前のプログラミングは重くて複雑で、システムやアプリケーションとして新しいものをもたらすには長い時間がかかる可能性がありましたが、プロセスを容易にするために少しずつサービスやプログラムが開発されました。 コードを分離したり、XNUMXつずつまとめることができたプログラムから。

Model View Controllerは、コードが実行する必要のある各操作をレベルごとに編成し、タスクが他の操作を中断しないため、システムエンジニアやプログラマーにとって完璧なソリューションでした。

MVCでコードを再利用できるため、プログラミングプロセスがはるかに簡単になり、プログラミングされた要素を完全に流暢に話せるようになります。

MVCはプログラミングを容易にするだけでなく、プログラミングをより迅速に実行できるようにし、高品質のアプリを実現します。

この記事が気に入ったら、ぜひお読みください。 「Javaのクラスとオブジェクト」、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. インターフェイスは、インターネットユーザーが実行するアクションの数で行う各対話に応じて、プロセスを繰り返します。

Webアプリケーションでどのように使用されますか?

MVCソフトウェアが作成されたとき、その操作と応答が即座に行われるため、デスクトップツールに実装されていると考えられていました。 技術の進歩により、ソフトウェアを仮想アプリケーションに適合させることが可能になり、デスクトッププログラムのように事前に決定されることなく応答することができました。

MVCは仮想言語に適合し、さまざまなレベルがHTMLやJavaScriptなどの言語と調和する可能性があることを実現しました。 フレームワークは、MVCアーキテクチャを調整できるようにするために使用され、Web用に独自のフレームワークを形成します。

仮想応答のMVCアーキテクチャは、「クライアントとサーバー」のアーキテクチャです。このスキームでは、クライアントが要求を行い、サーバーが受信者になり、要求に対して結果または応答を提供します。

当初、このタイプのアーキテクチャを実装するために、Web開発はそれほど完全ではなかったため、「シンクライアント」構造に焦点が当てられました。 シンクライアントは主要な構造です。これは、応答が中央サーバーで提供されるため、少し遅れる可能性があるためです。 応答リンクは、ブリッジングや処理なしで、入力と出力の間に直接あります。

このアプローチは非常にうまく機能しました。インターネットユーザーがリンクに入った瞬間からすべてが与えられ、それ以降、リンクを起動し、コントローラーを通過して、ユーザーが必要とする画像を反映するように表示するように命令します。ビュー。 MVCのXNUMXつのコンポーネントは仮想サーバーにあり、仮想サーバーが答えを出します。

MVCとデータベース

技術の進歩により、MVCのより良い開発を生み出すサーバーと新しい言語の開発が可能になり、応答がより簡単になり、ユーザーにとってより直接的になりました。

アプリケーションを適切に開発するには、MVCにサポートとして機能するデータベースが必要です。 データベースは、アプリケーションのすべての情報の管理システムであり、モデルのサポートであり、必要なものすべてを格納または変更します。

ビューとコントローラーはデータベースから分離されています。レイヤーごとに分離されているため、グラフィックパーツを最適な方法で最適化して、すべての情報と各補足に完全な視覚的アプローチを提供できます。

この記事が気に入ったら、ぜひお読みください。 「プログラミングにおける取り決めの種類」、プログラムの形成におけるその完全な重要性を説明します、私はあなたがそれを好きになることを知っています。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:Actualidadブログ
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。