問題タブ [architectural-patterns]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
101 参照

php - 使用しているアーキテクチャ パターンは?

PHP経由でフレームワークを使用せずにWebアプリケーションを開発しました。私のアプリケーションには、主にフロントエンドとバックエンドの 2 種類のファイルがあります。最初のタイプには、HTML、PHP、CSS、JavaScript (jQuery)、およびバックエンド (PHP のみ) を含めることができます。pg_db_connectionデータベースに接続する 1 つのクラスとsession、ユーザーの Web セッション (php の関数session_start()) を作成し、「ユーザー名」、usersデータベース テーブル内のユーザー ID などの変数を保持する 1 つのクラスがあります。

pg_db_connectionクラスには、 から取得したデータベース リソースであるプロパティが$linkありますpg_connect()。このクラスには、 、 、 、 、 などのquery($query, $b_result = false, &$affected_rows = null)関数insert($table, $values, $columns = null, &$affected_rows = null)begin()ありcommit()ますrollback()。すべてのフロントエンド ファイルの先頭で、型のオブジェクトを作成sessionして実行します。

セッション クラス ストアuser_id, usernameなどを$_SESSION. Web ユーザーがアクセス権限を持つファイルはデータベースに保存されるため、データベースへの接続が必要です。このフロントエンド ファイルに動的データをロードする場合は、jQuerypostまたはload関数を使用して、1 つのバックエンド ファイルを呼び出します。ほとんどの場合、このバックエンド ファイルには が含まれpg_db_connection、必要に応じていくつかのデータベース クエリを実行します - データに対してさらに作業を行い (HTML タグでラップするか、何らかの方法で配列をフォーマットしてjson_encodeから)、HTML または JSON をフロントエンドに取得します。ファイル。次に、jquery の load または post コールバック メソッドで、この HTML が必要な場所に書き込まれるか、JSON が何らかの方法で HTML に変換され、HTML のどこかに再び書き込まれます。

既知のアーキテクチャ パターンを使用するかどうか疑問に思っています。または、説明されているアプローチに最も近いアーキテクチャ パターンはどれですか?

0 投票する
0 に答える
117 参照

javascript - VueJS での計算されたプロパティの監視の実装

VueJS のドキュメントでは、次の動作について言及されています。

ここでは、計算されたプロパティ reversedMessage を宣言しています。提供された関数は、プロパティのゲッター関数として使用されます

vm.reversedMessage:

コンソールを開いて、例の vm を自分で試すことができます。vm.reversedMessage の値は、常に vm.message の値に依存します。

通常のプロパティと同様に、テンプレート内の計算されたプロパティにデータ バインドできます。Vue は、vm.reversedMessage が vm.message に依存していることを認識しているため、vm.message が変更されると、vm.reversedMessage に依存するすべてのバインディングを更新します。そして最良の部分は、この依存関係を宣言的に作成したことです。計算されたゲッター関数には副作用がないため、テストと推論が容易になります。

最後の段落の 2 番目の文から、VueJS ライブラリが「メッセージ」変数の値を監視し、「メッセージ」が変更されるたびに「reversedMessage」を再計算することを理解しています。

JSでこれをどのように達成できるか、概念的に説明してもらえますか? 従われている特定のソフトウェア設計パターンはありますか? 関数が依存する変数を JS ランタイムがどのように理解するのか知りたいです。計算されたプロパティが複数の変数を使用している場合はどうなりますか?

他のシステム/ライブラリ/フレームワークにプログラムされたそのような動作の例はありますか??

0 投票する
2 に答える
398 参照

javascript - React JS - このプログラムはどのように機能しますか?

Codeacademy で React.JS コースを受講しました。React.JS パート II からのこの問題。プログラミングのパターンを学んでいますが、このパターンがどのように機能するのか理解できません

コード:

そして第二部:

で名前を変更する<option>と、プログラムは自動的に値を変更し、新しい説明を出力します。しかし、この関数がどのように機能するか理解できません:

誰かが順を追って説明してもらえますか?

0 投票する
2 に答える
254 参照

ios - iOS で同じプロジェクトに複数のアーキテクチャ パターンを使用しても問題ありませんか

私たちはMVCアーキテクチャ パターンとして使用しており、プロジェクトの一部にMVPor ,パターンを使用したいと考えています。VIPER同じプロジェクトに複数のアーキテクチャ パターンがあっても大丈夫ですか。これは良い習慣ですか?

0 投票する
2 に答える
2075 参照

java - Android クリーン アーキテクチャのログイン フロー

Firebase Documentation に従って、ユーザーがログインしているかどうかを確認できるように、Clean Architecture を使用して単純な Firebase Authentication Android アプリケーションを実装しようとしていました。

したがって、この条件をどこに置くべきか、同じソースオブジェクトの助けを借りて独立して呼び出されるユースケースまたはプレゼンターにあるべきかについて混乱しています

何かのようなもの

このような条件は、ビジネス ロジックと見なされますか? またはフローロジック?