私は最近、パスファインディングアルゴリズムシミュレーションアプリケーションをPythonで書き始めました。
ユーザー入力を受け取り、ランダムに2Dグラフを生成し、GUIを介してシミュレーションを表示します。
さて、私が見つけたのは、Pythonやスタンドアロンアプリケーションは、この種のアプリケーションの共有にはあまり適切ではないということです。これは、人々に自分のコンピューターなどで実行させる必要があるためです。それらをウェブサイトに。
明らかに、表示と制御要素はクライアント側で書く必要があります。
しかし、実際の経路探索アルゴリズムは、クライアント側またはサーバー側のいずれかで作成できます。
これで、サーバー側のバックエンドが必要ない(つまりデータベースがない)場合、Webアプリケーション全体をクライアント側のHTML/JavaScriptで実行することが可能になります。
問題は、これを行う正当な理由notがあるかどうかです。
クライアントとサーバー間のやり取りを処理する必要がないため、クライアント側でのみそれを実行すると、複雑さが大幅に軽減されます。サーバーの唯一の目的は、最初にJavascriptをクライアントに提供することです。
一方、私はすべてをJavaScriptで記述する必要があります...
また、再利用可能なモデルモジュールを使用するという考えは、私にとって魅力的です。例えば。後でスタンドアロンアプリケーションが必要な場合は、View/Controlモジュールを記述するだけで済みます。
ここで一般的に受け入れられている慣習は何でしょうか。
アプリクライアント側のみを行うことの利点を概説しました。考えられる短所は次のとおりです。それらのいずれかまたはすべてが当てはまる場合は、サーバーベースのソリューションへの移行を検討してください。
つまり、クライアント側のJavascriptはアルゴリズムコンピューティングにとって完全に実行可能なプラットフォームであり、ブラウザーとスタンドアロンアプリ(Awesomiumなどのブラウザーエンジンを使用)の両方に簡単に展開できますが、注意が必要です。情報に基づいた選択を行うには、それらを調べてください。