問題タブ [presentation-layer]
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.
data-access-layer - N層パラダイム - この概念は間違っていますか?
私はちょうど講義を見ました:
彼は、接続プーリングの問題が原因で 3 層パラダイムが始まったと言い続けています。
アーキテクチャ上の考慮事項のためではありません。
気が遠くなるような理論のようです。
誰かがこの主張を証明または反証できますか?
c# - プレゼンテーションから計算を削除する方法
テンプレートから電子メールを生成するシステムに取り組んでいます。企業から提供されたテンプレートには、次のようなコード行が含まれています。
この場合、PaymentAmount は整数の文字列表現として期待されます (たとえば、必要な出力 £5.54 は "554" として提供されます)。
さて、私は、プレゼンテーション レイヤーには計算を含めるべきではないと考えています。この場合、/100 の計算と解析があります。私はこれに対していくつかの代替案を提案しました。そこでは、テンプレートの前にコードで変換が実行され、次のような変更されたビューが提供されます。
このプロジェクトにはかなり有能なテクニカル アーキテクトが一組いますが、彼らに正当な理由を納得させるのに苦労しています。
後者のコード断片を前者の上に実装する際に機能するアーキテクトに提示する議論を手伝ってくれる人はいますか?または、このアプローチに同意しない場合は、その理由は?
networking - プレゼンテーションの書式設定に関連するビット順序は?
私はプレゼンテーションの書式設定に関連する宿題の問題に取り組んでおり、正しい方向に向けられることを望んでいました. 宿題の問題は次のとおりです。
アーキテクチャが異なれば、バイト順だけでなくビット順についても異なる規則があります。たとえば、バイトの最下位ビットがビット 0 かビット 7 かなどです。RFC 791 [Pos81]
は、(付録 B で) 標準ネットワーク ビット順を定義しています. ビット順がプレゼンテーションの書式設定に関係しないのはなぜですか?
ビットの順序がプレゼンテーションの書式設定にどのように関係しないかについて、私は混乱しています。プレゼンテーション フォーマッティングは、ネットワークを通過できるようにデータをエンコードし、受信側でデータをデコードして、データを使用できるようにします。しかし、データが正しく解釈されるためには、デコードプロセスが受信側コンピューターのアーキテクチャを考慮に入れる必要があることを私は知っています。これにはビットオーダーとバイトオーダーが含まれます。実際、それが正規の中間形式や受信者が正しく行うなどのこれらの変換戦略の目的です。データがネットワークを通過し、受信ホストによって解釈されることを可能にする形式にデータが変換されることを確認します。応用。
答えが何であるかについての私の考えは、プレゼンテーションのデコードはアプリケーション層で行われるということです。アプリケーションだけがデータのフォーマットを知っているからです。データの変換を処理します。
私が誤解していることはありますか?
助けてくれてありがとう。
design-patterns - 複数の異なるプレゼンテーション レイヤー間でビジネス ロジックが重複しないようにする方法
私は現在、デバイスとチャネル (ユーザーの種類と場所) に合わせて調整された複数の異なるフロントエンド プレゼンテーションを持つマルチチャネル コマース システムのアーキテクチャを設計しています。私が直面している課題は、フロントエンド プレゼンテーション層での重複を減らす方法でコア コマース プラットフォームを開発していることをどのように保証するかということです。
サポートが必要なさまざまなフロントエンド プレゼンテーション層のサンプルを次に示します。
- 消費者向けの従来のデスクトップベースの Web サイト
- 消費者向けにモバイルに最適化されたウェブサイト
- コンシューマー向けのネイティブ モバイル アプリケーション (iOS/Android)
- カスタマー サポート担当者向けのカスタマー サポート センター Web サイト
- 実店舗で買い物をする消費者向けのインストア キオスク ベースの Web サイト
- その他 (Angular、PHP、.NET などのさまざまなテクノロジを利用したマイクロサイトおよびその他)
今では、階層化されたアーキテクチャ (プレゼンテーション、ビジネス、データ層) に関するベスト プラクティスと、1 つのアプリ (MVC、バリデーター、インターセプターなど) 内のフロントエンドの課題に対処するための一般的な設計パターンを理解しています。ただし、これらの原則のいずれも、複数のフロントエンドのサポートに直面した場合に、プレゼンテーション固有のビジネス ロジックをカプセル化する方法と場所を説明していません。
ですから、私の質問は、各フロントエンド アプリケーションがフロントエンド ビジネス ロジックを複製しないようにするために、そのようなシステムを開発する際に従うべきいくつかの良い慣行と原則は何ですか?
私はこれまで、さまざまなアプローチを使用して、このような要件を持つ多くのアプリケーションを開発してきました...かなりうまく機能するものもあれば、それほどうまく機能しないものもありました。しかし、よくある問題の解決策を発明しているように感じ、活用すべきベスト プラクティスと原則がいくつかあるはずだと感じるたびに.
私が尋ねている特定の課題の簡単な例
すべてのフロントエンド アプリケーションは、新しい顧客アカウントを登録する機能をサポートする必要があります。登録フォームには、電子メール、パスワード、顧客の住所情報 (番地、都市、郵便番号など) などの情報が含まれます。フォームが送信されると、システムでアカウントが作成され、確認メールがユーザーに送信される前に、特定の簡単な検証と重要な検証が行われる必要があります。例えば:
- 電子メール アドレス パターンの検証規則
- メールアドレスがシステムに存在しないことを確認する
- パスワードの複雑さのルール
- 住所の検証 (サードパーティの住所検証/標準化システムによる)
ほとんどの場合、これらの検証ルールはすべてのフロントエンド システムに適用する必要がありますが、各フロントエンドの登録フローはわずかに異なり、フィールドのサブセットのみが含まれる場合があります。では、各フロントエンドが登録を適切に検証して処理するために必要なさまざまな手順を繰り返さないように、フロントエンドに API を提供するための良い方法は何ですか? たとえば、パスワードの複雑さのルールやアドレスの検証ルールなどを変更することにした場合、この新しい検証ロジックを使用してさまざまなフロントエンド アプリケーションをすべて変更する必要がないように、システムをどのように設計するのが最善でしょうか。
明確にするために、すべてのフロントエンドで共有されるコア ビジネス ロジック (つまり、アカウント作成サービス、住所検証サービス、アカウント ルックアップ サービスなど) をどこに配置するかについては心配していません。これらのパターンは、ブログ、本、およびフォーラムで一般的に議論されています。私の質問は、一般的にプレゼンテーション層に密接に結合されているビジネス ロジックに特に関連しています。いつも頭に浮かぶいくつかの質問。
- フォームの検証や Web サービスを介した処理など、すべてのフロントエンド操作をサポートするプレゼンテーション サービス レイヤーを提供する必要がありますか? または、「2 つのフロントエンドは同じではない」ため、各フロントエンドがプレゼンテーション ロジックを所有する必要がありますか?
- プレゼンテーション サービス レイヤーを作成する場合、各フロントエンドの微妙な違いに対処するサービスをどのように提供しますか? これらのフロントエンドごとに異なるサービス/エンドポイントを提供しますか?それとも、各フロントエンドがサービスを呼び出すときに渡す異なる「コンテキスト」を提供するだけですか?
- このプレゼンテーション サービス レイヤーは、エラー メッセージを制御し、コンテキストを認識した適切なメッセージを各フロントエンドに返しますか? それとも、エラー コードを返してフロントエンドに所有させるべきでしょうか?
- 等
uiwebview - UIWebviewをアニメーション化してiPhone画面をキャプチャする方法は?
画面のビデオをキャプチャするためのコードを作成しました.UIViewを使用して完全に機能します.しかし、UIWebviewを使用すると、キャプチャ画面のビデオがスタックして表示されます..理由はわかっています.理由は、Webビューの使用中です.
[[self.layer presentationLayer] renderInContext:mycontext];
動作していません..そして私のアプリがクラッシュしました
そのため、プレゼンテーション層が機能していない場合、ビデオは動かなくなります。そしてこの行を使用して
[self.layer renderInContext:mycontext];
スクリーン キャプチャは機能していますが、ビデオが停止したまま表示されます。
これは、ユーザーが携帯電話で任意の Web サイトを閲覧している間のコードです。
webviewをスクロールして動画をキャプチャしている最中に、キャプチャ画面より動画がスタックしたまま表示される..
解決策はありますか?
ios - アニメーション中に作成された最も古いオブジェクトの位置を取得するには?
私は毎秒、FrenchFrie と呼ばれるフレンチフライの UIImageView を作成します。また、アニメーションで画面に沿って動かします。
}
アニメーション中のフライの位置が必要です。私は次のコードでこれを行います:
NSLogging から、このコードで最新のフライの位置を取得できることはわかっていますが、最も古いフライの位置が必要です。最年長のフレンチ フライの位置を取得するにはどうすればよいですか? どんな助けでも本当に感謝します!
c# - getメソッドを使用してEF6のデータベースの値に基づいてテキストを返す方法
EF6 を使用してモデルを作成します。私のモデルは次のようになります。
私の列の 1 つはHasTaxで、この値は1と0ですが、mygridview ではこれらの値 (0,1) を変更する必要があります。つまり、値が「はい」と1
表示され、「いいえ」と表示されている場合は、モデルの方法を使用してこれらを実行したいですか?それは可能ですか?0
get
Get メソッドはデータベース内の値をチェックし、適切な値をgridview
プレゼンテーション層に返しますか?
よろしくお願いします