Google PlayストアでUnionpediaアプリを復元するために作業中です
出ていきます入ってきます
🌟ナビゲーションを改善するためにデザインを簡素化しました!
Instagram Facebook X LinkedIn
あなたのロゴとドメインを持つ独自のユニオンペディア、月額9.99 USDから
私のユニオンペディアを作成する

Model View Controller

索引 Model View Controller

Model-View-Controller (MVC、モデル・ビュー・コントローラ) はUIを持つソフトウェアに適用されるソフトウェアアーキテクチャの一種である。 MVCはソフトウェアを処理/Model・表示/View・入力伝達/Controllerの3要素に分割し、ソフトウェア内部データをユーザーが直接参照・編集する情報から分離する。プレゼンテーション(View・Controller)とドメイン(Model)を分離しまたユーザー入力(Controller)と表示(View)も分離することでソフトウェアの保守性・開発生産性を向上させる。

目次

  1. 28 関係: 多層アーキテクチャマウス (コンピュータ)ユーザインタフェーストリグヴェ・リーンスカウクパロアルト研究所ビジネスロジックデザインパターン (ソフトウェア)イベント (プログラミング)イベント駆動型プログラミングウェブアプリケーションキーボード (コンピュータ)グラフィカルユーザインタフェースソフトウェアソフトウェアアーキテクチャ入力機器Command パターン自動プログラミングFacade パターンFactory Method パターンGoogle Web ToolkitHyperText Markup LanguageJFaceModel View ViewModelObserver パターンSelfSmalltalkSpring FrameworkSqueak

多層アーキテクチャ

多層アーキテクチャ(たそうアーキテクチャ、multitier architecture)とは、ソフトウェアアーキテクチャパターンである。 アプリケーションを複数の"層"に分け、それらを独立したモジュールとして開発・保守する。各層はインタフェースを定義しモジュール化されたソフトウェアであり、テクノロジーの進歩や要求の変化に合わせて各層を個別に置換できる。 各層をそれぞれ異なるプラットフォーム上で動かし、層ごとにプラットフォームの変更が可能である。 例えばクライアントのオペレーティングシステムをMicrosoft WindowsからUNIXに変更しても、他の層(ビジネス層、データベース層など)は変更しない。

見る Model View Controllerと多層アーキテクチャ

マウス (コンピュータ)

2ボタン型・ボール式マウス マウスボール マウス(mouse)とは、コンピュータの操作全般に用いられる入力機器の一つであり、画面上に表示された物の場所を指し示して選択するための装置(ポインティングデバイス)の一種である。キーボードとともに広く使われる。

見る Model View Controllerとマウス (コンピュータ)

ユーザインタフェース

ユーザインタフェース(User Interface、 UI)または使用者インタフェースは、機械、特にコンピュータとその機械の利用者(通常は人間)の間での情報をやりとりするためのインタフェースである。これには長音符の有無などによる表記ゆれが見られるが、本記事では「ユーザインタフェース」で統一する。ユーザインタフェースは以下の手段を提供する。

見る Model View Controllerとユーザインタフェース

トリグヴェ・リーンスカウク

2010年のトリグヴェ・リーンスカウク トリグヴェ・リーンスカウク(Trygve Mikkjel Heyerdahl Reenskaug、1930年6月21日 - 2024年6月14日)は、 ノルウェーのコンピューター科学者、オスロ大学の名誉教授である。 1979年にゼロックスパロアルトリサーチセンター (PARC)の客員研究員として、 グラフィカルユーザーインターフェイス (GUI)ソフトウェア設計のためのモデル - ビュー - コントローラー (MVC)パターンを定式化した。 彼の最初の主要なソフトウェアプロジェクトである "Autokon" は、1963年に最初に使用された成功したCAD / CAMプログラムを生み出し、世界中の造船所で30年以上使われた。

見る Model View Controllerとトリグヴェ・リーンスカウク

パロアルト研究所

正面玄関 パロアルト研究所(パロアルトけんきゅうじょ、、PARC)は、アメリカ合衆国のカリフォルニア州パロアルトにある研究開発企業である。

見る Model View Controllerとパロアルト研究所

ビジネスロジック

ビジネスロジック(business logic)は、データベース上のデータに対する処理手順といったようなものを指す、ソフトウェア工学的な用語である。「アルゴリズム」という語が説明に使われていることがあるが、アルゴリズムは数学的・論理的に明確な概念であり間違った説明の仕方である。基本的には、エンタープライズ系(業務支援系)ソフトウェアを開発する企業が内部的に、もしくは顧客への販売促進のために用いる用語である。この用語は、主にプログラムが3層構造となるWebアプリケーション開発で使われる。ビジネスロジックは3層の中の中間層(アプリケーションサーバ)に相当する。いずれにしても、ビジネスロジックという用語は明確な定義がなく、人によって意味が異なる可能性がある。

見る Model View Controllerとビジネスロジック

デザインパターン (ソフトウェア)

ソフトウェア開発におけるデザインパターンまたは設計パターン(design pattern)とは、過去のソフトウェア設計者が発見し編み出した設計ノウハウを蓄積し、名前をつけ、再利用しやすいように特定の規約に従ってカタログ化したものである。パターン(pattern)とは、型紙(かたがみ)やひな形を意味する。 本稿でのデザインは狭義の設計という意味であり、CSSやHTMLなどで使われる意匠デザインの定形を示す「デザインパターン」とは異なる。

見る Model View Controllerとデザインパターン (ソフトウェア)

イベント (プログラミング)

プログラミングにおけるイベント は、プログラム内で発生した動作・出来事、またそれらを表現する信号である。メッセージあるいはアクション(動作)とも呼ばれる。 イベントの例としてWEBブラウザにおける「クリック」動作、ネットワークリクエストにおける「fetch完了」出来事が挙げられる。動作・出来事そのものではなく、それらをプログラム上で表現し詳細情報を保持しているオブジェクト(イベントオブジェクト)を単純にイベントと呼ぶことが多い。

見る Model View Controllerとイベント (プログラミング)

イベント駆動型プログラミング

イベント駆動プログラミング(イベントくどうプログラミング、event-driven programming)とは、ユーザー側の操作による受動的なイベントの発生によって、コンピュータ側の能動的なプロセスの実行とプログラムフローの選択が決定されるというプログラミングパラダイムである。イベントドリブンとも邦訳される。グラフィカルユーザーインターフェース(GUI)ソフトウェアでよく用いられており、ユーザー入力に対するレスポンス出力の実装に適している。デバイスドライバプログラムでも多用されている。Webアプリケーションでも並行計算を実現するための非同期処理で活用されている。 ここで言うイベントとは、マウスクリックやキーボード押下によるユーザー操作、センサーやシグナル受信によるハードウェア入力、走行スレッドや発生トランザクションからのメッセージ受信を指している。プロセスの実行とは、スレッドの開始や手続き/関数の呼出しを指している。

見る Model View Controllerとイベント駆動型プログラミング

ウェブアプリケーション

ウェブアプリケーション(Web application)は、ウェブ(World Wide Web)技術を基盤とした'''アプリケーション'''ソフトウェアである。

見る Model View Controllerとウェブアプリケーション

キーボード (コンピュータ)

キーボード(keyboard)は、英語でキー()と呼ばれる小さなボタンが規則正しく並び、これを指で押し下げて操作する入力装置のこと。日本語では(稀に)鍵盤(けんばん)とも。

見る Model View Controllerとキーボード (コンピュータ)

グラフィカルユーザインタフェース

GUIを提供するソフトウェアの1つ、GNOME グラフィカルユーザインタフェース(graphical user interface、略称:GUI(ジーユーアイ、グイ、グーイ))は、コンピュータグラフィックスとポインティングデバイスなどを用いる、グラフィカル(ビジュアル)であることを特徴とするユーザインタフェース。キャラクタユーザインタフェース (CUI) やテキストユーザインタフェース (TUI) と対比して語られることが多い。

見る Model View Controllerとグラフィカルユーザインタフェース

ソフトウェア

ソフトウェア(software)は、コンピューター分野でハードウェア(物理的な機械)と対比される用語で、何らかの処理を行うコンピュータ・プログラムや、さらには関連する文書などを指す。

見る Model View Controllerとソフトウェア

ソフトウェアアーキテクチャ

ソフトウェアアーキテクチャ(Software Architecture)は、ソフトウェアコンポーネント、それらの外部特性、またそれらの相互関係から構成される。また、この用語はシステムのソフトウェアアーキテクチャの文書化を意味することもある。ソフトウェアアーキテクチャの文書は開発依頼主とのコミュニケーションを容易にするもので、概要レベルの設計に関する早期の決定を促し、プロジェクト間でのコンポーネントとパターンの設計を再利用することを可能にする。

見る Model View Controllerとソフトウェアアーキテクチャ

入力機器

入力機器(にゅうりょくきき、input device)とは、コンピュータや情報機器にデータや情報や指示などを与えるためにつかわれる機器(装置)であるIT用語辞典 e-words「入力装置」。 入力装置、入力デバイス、インプットデバイスとも。

見る Model View Controllerと入力機器

Command パターン

Command パターン(command pattern)は、オブジェクト指向プログラミングにおいて命令あるいは動作をオブジェクトで表現するデザインパターンの一種である。 リクエストのために必要な手続きとデータをCommandオブジェクトとしてカプセル化した上で取り回し、必要に応じて実行(execute)するパターンである。オブジェクトであることを生かして命令のキューイングやロギング、アンドゥ(undo)等が可能になり、実際に処理を実行するサブルーチンを、オブジェクトに属するメソッドexecute()として分離することによって、手続きと実行を疎結合にできる。

見る Model View ControllerとCommand パターン

自動プログラミング

自動プログラミング(じどうプログラミング、Automatic programming)は、人間のプログラマがコードを書くのではなく、何らかの機構によってプログラムを生成するプログラミングの一種である。時代はすでに変わっており、人工知能の専門家は、現時点で自動プログラミングを使えないプログラマーは、使えるプログラマーに取って代わられる可能性が高いと警告している。

見る Model View Controllerと自動プログラミング

Facade パターン

Facade パターンあるいは Façade パターン(ファサード・パターン)とは、GoF(Gang of Four; 4人のギャングたち)によって定義された、コンピュータソフトウェアのデザインパターンの1つである。Facade(ファサード)とは「建物の正面」を意味する。異なるサブシステムを単純な操作だけを持ったFacadeクラスで結び、サブシステム間の独立性を高める事を目的とする。

見る Model View ControllerとFacade パターン

Factory Method パターン

Factory Method パターン(ファクトリメソッド・パターン)エリック・ガンマ、ラルフ・ジョンソン、リチャード・ヘルム、ジョン・ブリシディース(著)、グラディ・ブーチ(まえがき)、本位田真一、吉田和樹(監訳)、『オブジェクト指向における再利用のためのデザインパターン』、ソフトバンクパブリッシング、1995。ISBN 978-4-7973-1112-9.とは、GoF (Gang of Four; 四人組)によって定義されたデザインパターンの1つである。 Factory Method パターンは、他のクラスのコンストラクタをサブクラスで上書き可能な自分のメソッドに置き換えることで、 アプリケーションに特化したオブジェクトの生成をサブクラスに追い出し、クラスの再利用性を高めることを目的とする。

見る Model View ControllerとFactory Method パターン

Google Web Toolkit

Google Web Toolkit (GWT) は、Javaを使ってウェブ用Ajaxアプリケーションを開発できるオープンソースのJavaソフトウェア開発フレームワークである。Apache License 2.0でライセンスされている。 GWTは再利用可能で効率的なAjaxソリューションであることを強調しており、すなわち非同期RPC、履歴管理、ブックマーク、ブラウザ間の移植性の良さなどを特徴とする。

見る Model View ControllerとGoogle Web Toolkit

HyperText Markup Language

HTMLHTMLという名前は従来はHyperText Markup Languageの略称だったが、2023年4月現在最新の規格であるWHATWGのHTML Living Standardには「HyperText Markup Language」という名前の記載はなく、単にそのままHTMLと呼ばれている。またはHyperText Markup Language(ハイパーテキスト マークアップ ランゲージ)廃止された従来の規格(HTML5.2まで)で使われていた呼称。現在でもISO/IEC 15445:2000で使用されている。は、ハイパーテキストを記述するためのマークアップ言語の1つで、プログラミング言語ではない。主にWorld Wide Web(WWW)において、ウェブページを表現するために用いられる。

見る Model View ControllerとHyperText Markup Language

JFace

JFace は、Eclipseプロジェクトによる「退屈な作業となるUI機能の実装を支援するクラスを提供するUIツールキット」である。下位のウィジェットの上層に位置し、一般的なUIプログラミングタスクを制御するクラスを提供する。Standard Widget Toolkit に Model View Controller の視点を持ち込んだものと言える。

見る Model View ControllerとJFace

Model View ViewModel

Model-View-ViewModel (MVVM、モデル・ビュー・ビューモデル) はUIを持つソフトウェアに適用されるソフトウェアアーキテクチャの一種である。 MVVMはソフトウェアをModel・View・ViewModelの3要素に分割する。プレゼンテーションとドメインを分離し(V-VM / M)また宣言的Viewを分離し状態とマッピングを別にもつ(V / VM)ことでソフトウェアの保守性・開発生産性を向上させる。 Model-View-ViewModelパターンはModel-View-Controller (MVC) パターンの派生であり、特にPresentation Model パターンを直接の祖先に持つ。元来マイクロソフトのユーザインタフェースサブシステムであるWindows Presentation Foundation (WPF) やSilverlightの世界で生まれた考え方ではあるが、はAndroidやウェブブラウザ上でのJavaScriptの世界でもMVVMの利用は広がっている。

見る Model View ControllerとModel View ViewModel

Observer パターン

パターン(オブザーバー・パターン)とは、プログラム内のオブジェクトに関するイベント(事象)を他のオブジェクトへ通知する処理で使われるデザインパターンの一種。 通知するオブジェクト側が、通知されるオブジェクト側に観測・観察()される形になることから、こう呼ばれる。 出版-購読型モデルとも呼ばれる。暗黙的呼び出しの原則と関係が深い。 分散イベント処理システムの実装にも使われる。言語によっては、このパターンで扱われる問題は言語が持つイベント処理構文で処理される。

見る Model View ControllerとObserver パターン

Self

Self は、「プロトタイプ」の概念に基づいたオブジェクト指向プログラミング言語である。1980年代から1990年代にかけて言語設計の実験的システムとして使われていたが、2018年、Self の開発は続けられており、Self言語自身で書かれた Selfバーチャルマシンを構築する Klein プロジェクトが進められ、2006年7月にバージョン 4.3 がリリースされた。

見る Model View ControllerとSelf

Smalltalk

Smalltalk(スモールトーク)は、Simula のオブジェクト(およびクラス)、LISPの徹底した動的性、LOGO のタートル操作や描画機能に、アラン・ケイの「メッセージング」というアイデアを組み合わせて作られたクラスベースで手続き型の純粋オブジェクト指向プログラミング言語、および、それによって記述構築された統合化プログラミング環境の呼称。 Smalltalk で一語であり、「Small Talk」「SmallTalk」などは誤りである。 大規模な開発実績としてはCargill Lynx Projectがあり、国産製品の開発実績としてはMCFrameがある。

見る Model View ControllerとSmalltalk

Spring Framework

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークである。単に Spring とも呼ばれる。が自著 (Wrox Press、2002年10月)と共にリリースしたのが最初である。.NET Framework 向けの移植版もある。2006年、Spring Framework 1.2.6 は Jolt productivity award を受賞した。 Spring Framework は特定のプログラミングモデルを強制するものではないが、Javaコミュニティでは Enterprise JavaBeans (EJB) モデルの代替・置換・追加として広く認知されつつある。設計上、このフレームワークはJava開発者の自由度を高くしているが、ドキュメントが豊富であり、よくある状況に使える使いやすいソリューションを提供する。

見る Model View ControllerとSpring Framework

Squeak

Squeak(スクイーク)はSmalltalk環境のひとつで、ゼロックスが1980年当時の主要コンピュータメーカー(IBM、DEC、ヒューレット・パッカード、Apple Computer、Tektronix)にライセンス供与したSmalltalk-80の販売直前バージョン (v1) をベースに、Appleが自社のLisaおよびMacintosh用に開発したApple Smalltalkから派生したものである。なお、同環境に組み込まれた(Squeak Smalltalkで記述・構築されている)タイルスクリプティング言語・開発環境のSqueak Etoysも略して「Squeak」と呼称され混同されることが多いが、両者(Squeak SmalltalkとSqueak Etoys)はプログラミング言語およびその処理系としてはまったくの別物である。

見る Model View ControllerとSqueak

Model-View-Controller 別名。