序章:
私の会社には、従来の ASP に基づく Web アプリケーションがあります。ウェブアプリが成長するにつれて、システムを維持するのが難しくなっています。コードの複雑さと多くの ASP ページの必要性により、システムの保守が新しい機能の開発よりも重要になっていると感じています。システムを最新化する方法についていくつかの考えがあります。最新の Web アプリケーションがどのように機能するかについて、コミュニティからフィードバックをいただければ幸いです。
質問:
私の現在の理解では、最新の Web アプリケーションのアーキテクチャには 2 つの主要な部分があるということです。フロントエンド (ブラウザー/ユーザー向け) とバックエンド (サーバー/データベース) があります。現在の ASP アーキテクチャでは、データベースからのバックエンドとデータの要求は、クライアント側のコードと一緒にマッシュされます。2 つのコンポーネントを分離する必要があり、JSON はその解決策だと思います。
以下の図は、私が思い描くアーキテクチャを示しています。
私の考えは、フロントエンドの開発者とバックエンドの開発者が何らかの「API」に同意して作業することです。たとえば、現在の顧客のリストを送信する必要があるというビジネス要件があるとします。
フロントエンド開発者: 顧客のリストをユーザーに表示する必要があります。
バックエンド開発者: データベースから顧客のリストを取得し、これをフロントエンド開発者に送信する必要があります。
JSON は次のようになります。
[
{
"fname": "John",
"lname": "Doe",
"price": "5"
},
{
"fname": "Jane",
"lname": "Deer",
"price": "5"
}
]
この作業をどのように思い描くか
フロントエンド コード:
前提条件: シングル ページ アプリ、すべてのリクエストが 1 つのサーバー ページに送信される、JQuery を使用した Javascript、Knockout.js
//AJAX request for data using jQuery and GET request
$.getJSON('/index', //The page where I request data from
{"request":"customers"} //JSON to let server know what I want
, function(data) { //Function to execute
//Get the data in the pre-defined format
//Add to MVVM (knockout.js)
someKnockoutMappingFunction();
});
バックエンド コード:
前提条件: Java
String request = req.getParameter("request");
if (request == null) {
//Error case
}
//The AJAX request came in requesting customers
else if(request == "customers")
{
//Get the data from the database and format it
someDatabaseToJSONFunction();
//Send that data back to the client
someSendJSONBackFunction();
}
要約
それで、私は正しい軌道に乗っていますか?誰かがこの種のモデルを実装していて、私が飛び込む前に役立つ提案をすることができますか? ASP から迅速に移行する方法について何か提案はありますか?
前もって感謝します!