ホームページ  >  記事  >  バックエンド開発  >  JavaScript - マスターにお願いします: フロントエンドとバックエンドを最も効果的に連携させる方法

JavaScript - マスターにお願いします: フロントエンドとバックエンドを最も効果的に連携させる方法

WBOY
WBOYオリジナル
2016-08-04 09:20:45931ブラウズ

データを含む動的な php および jsp ページを生成します。フロントエンドとバックエンドのパッケージ化と公開は完全に独立しています。
これの利点は、データがフロントエンドによって完全に制御されることです。
あらゆる問題をフロントエンドによって個別に解決し、個別にパッケージ化してリリースできます。

フロントエンドとバックエンドのパッケージ化とリリースは完全に独立しています。このゲームの意味と理解

返信内容:

データを含む動的な php および jsp ページを生成します。フロントエンドとバックエンドのパッケージ化と公開は完全に独立しています。
これの利点は、データがフロントエンドによって完全に制御されることです。
あらゆる問題をフロントエンドによって個別に解決し、個別にパッケージ化してリリースできます。

フロントエンドとバックエンドのパッケージ化とリリースは完全に独立しています。このゲームの意味と理解

フロントエンドとバックエンドが分離され、フロントエンドがエンジニアリングされ、フロントエンドとバックエンド間のすべてのやり取りが API を介して行われます。これは SEO にとって良くないと思われるかもしれませんが、今では実際、nodejs では、ページのレンダリングをフロントエンドに任せることができます。これは、エンド側でシステムの可用性、パフォーマンス、その他の問題を考慮する必要があり、この部分に焦点を当てるべきではありません。フロントエンド

このブログは、livoras によるフロントエンドとバックエンドの個別の Web 開発のアイデアを開発するのに役立ちます

まず、通信プロトコルと通信パラメータを決定する必要があります。
フロントエンドの独立したジョブは、モックなどのツールを使用してバックグラウンドデータ送信をシミュレートできます。
バックエンド設計ではデータモデルを使用してビジネスを完了し、インターフェースを生成します。
個人的には、PHPのテンプレートエンジンなどのビュー業務をプロジェクトから分離して、独立したフロントエンド版を作るのと似ているのでは?

フロントエンドとバックエンドは API を通じて対話します。 Web フロントエンドを使用するか、iOS および Android クライアントを使用するかは関係ありません。

バックエンドは、複数のフロントエンド ページまたは異なるフロントエンドのニーズを満たすために同じ API を使用するように努める必要があります。これが最善です。フロントエンドは、バックエンドによってどのようなデータが返されるのか、また設計図に従ってそのデータがどのようにレンダリングされるべきかを知る必要があります。

少し前に、フロントエンドで ionic と Cordova を使用し、バックエンドで CoreThink を使用して非ネイティブ APP を開発する手順に関する記事を書きました http://www.oschina.net/question/2598464_2151690?fromerr=mCRfZH2m見てください

簡単に言うと、データインターフェイス (ajax リクエストなど) を介してフロントエンドとバックエンドを分離します。

否定的なケース

私は昨年、半完成状態の Web プロジェクトを引き継ぎました。それはバックエンドの PHP 言語で開発されました。コードを見ないとわかりません。コードを見たとき、私は気を失いました。コードは基本的に次のとおりです:

リーリー

php ファイル全体には html のフレーバーが含まれています。詳細には触れませんが、ご理解いただけると幸いです。 cssファイル以外は吐きました。 OCDの心を深く傷つけました。言語は今でもこのように使用できます。改めて、自分が選んだ道は間違っていたと感じました。コードの世界はもっと組織化できると思っていましたが、どうやら間違っていたようです。
よく考えてみると、このように開発するとフロントエンドとバックエンドを一人でカバーすることができ、かなりの重労働になることがわかりました。ただし、このハイブリッド開発モデルには、低コストで高効率であるという利点もあります。欠点が多く、拡張やその後のメンテナンスに問題がある。

陽性例

昨年、私もWebプロジェクトを引き継ぎました。主な要件: バックグラウンド データベース テーブルにコンテンツを表示する 端的に言えば、MySQL の Web コントロールを模倣することです。しかし、それは簡単です。ただし、要件があります: モデリング、つまり、バックグラウンドで少数のパラメーターを変更することで、フロントエンドに表示されるテーブルの数、さらにはテーブルの列名を制御できます。言い換えれば、フロントエンドのテーブルに関するすべての情報はバックエンドによって提供されます。フロントエンドは、バックエンド データに基づいてインターフェイスの表示調整を行うだけで済みます。

デザインアイデア:

1. テーブルのスタイルとテーブル上のマウスの動的操作はフロントエンドモジュールの一部として使用されます。
2. テーブル名情報とテーブルのリスト情報は、ajax リクエストによって JSON に返されます。
3. データの取得は、json の取得にも適用されます。次に、ローカル テーブルにデータを追加します。
4. データに対するローカルの追加、削除、変更はすべて、ajax を通じてサーバーにアップロードされます。

唯一の導入ポイントは、ajax インターフェースです。開発中、バックエンドの速度が遅いため、一部のインターフェイスは偽のデータをフロントエンドに直接渡しました。 echo

フロントエンドとバックエンドの分離の利点

データ インターフェイス モデルの開発を通じて、フロントエンドとバックエンドが完全に分離され、このプロジェクトはモデルベースの設計であるため、コードの再利用性が非常に高くなります。

さらに、問題が発生した場合、データインターフェース内のデータを検出することで、それがフロントエンドの問題なのかバックエンドの問題なのかを簡単に知ることができます。メンテナンスが非常に簡単で、詳細な二次開発も実行できます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。