Elm-architecture

提供:Dev Guides
移動先:案内検索

ニレ-建築

この章では、Elmプラットフォームでアプリケーションを作成する標準的な方法について説明します。 Elmは、Model-View-Controllerパターンに類似したアーキテクチャパターンを使用します。

以下は、Elm Architectureの4つの主要部分です。

  • モデル
  • View
  • メッセージ
  • 更新

アーキテクチャ

Elmアーキテクチャの仕組み

*model* にはアプリケーションの状態が含まれます。 たとえば、アプリケーションが顧客のリストを表示する場合、状態には各顧客データが含まれます。 状態を表示可能な方法で表示するには、 *view*/htmlを生成する必要があります。 ユーザーがボタンを押すか、フォームにデータを入力してビューと対話すると、ビューは *messages* と呼ばれる信号を生成します。 メッセージは *update* メソッドに渡されます。このメソッドはメッセージを評価し、適切なアクションを実行します。 したがって、更新メソッドは新しいモデルを生成します。

新しいモデルは新しいビューを生成します。 このビューは、ユーザーからのメッセージへの新しい相互作用につながり、更新機能に進みます。 さらに、関数は新しいモデルを作成します。 したがって、上記の図に示すように、サイクルが繰り返されます。

モデル

モデルはアプリケーションの状態を扱います。 モデルを定義するための構文は以下のとおりです-

-- Model syntax

type alias Model = {
   property1:datatype,
   proptery2:datatype
...
}

モデルを作成するには、最初に必要なすべてのプロパティを持つテンプレートを作成する必要があります。 各プロパティは、アプリケーションの状態を指定します。

View

ビューは、アプリケーションの状態を視覚的に表現したものです。 ビューは、データを取得し、そこからWebページを生成する方法を知っています。 ユーザーがビューと対話するとき、ユーザーはメッセージを生成して状態を操作できます。 ビューを定義するための構文は以下のとおりです-

--View Syntax
view model =some_implementation

メッセージ

メッセージは、アプリケーションの状態を変更するためのユーザーからのリクエストです。 メッセージはパラメーターとして更新関数に渡されます。

--Message Syntax
type Message = Message1 |Message2 ...

構文は、タイプMessageを示しています。 elmアプリケーションは、渡されたメッセージに基づいて状態を編集します。 これらの決定は、更新メソッドで行われます。

更新

更新機能は、パラメーターとして渡されるメッセージを解釈し、モデルを更新します。

--Update Syntax
update Message_type model =
   some_implementation

更新関数は、パラメーターとして Message とModelを取ります。