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を取ります。