0

ウィジェット/GUI からいくつかのパラメーターを読み取り、データベースの値と入力に基づいていくつかのものを計算し、最後にいくつかの ascii ファイルを ftp 経由でリモート サーバーに送信するプログラムをセットアップする必要があります。

一般に、タスクを実行するには Python プログラムをお勧めします。Qt ウィジェットを gui として記述 (対話的にビューを変更し、テーブルに数値を入力し、チェック ボックスを設定し、さまざまなレイヤーを切り替えます。Python でこれほど複雑なことをしたことはありませんが、IDL でイベント処理などの経験がある程度あります)、データ クラスを設定します。これには、指定された規則で ascii ファイルを作成する機能と、ftp 経由でリモート サーバーにファイルを送信する機能の両方があります。

しかし、私の会社は多数の Windows ユーザーで構成されているため、それぞれが個人のデスクトップに座って、個々のマシンに Python と必要なすべてのライブラリをインストールするのは大変なことです。

さらに、将来のバージョンでは、プログラムはスマートになり、24 時間年中無休で最適化を行うことになっています。したがって、サーバーに配置することは理にかなっています。個人的にはどちらかというと Linux を使っているので、サーバーはすでに Ubuntu サーバーを使用してセットアップされています。

アイデアは、サーバー上でアプリケーションを実行することです。しかし、ユーザーはどのようにしてプログラムにアクセスして制御できるのでしょうか?
誰もが共通のコントロール パネルのようなものにアクセスする最も簡単な方法は、ブラウザーだと思います。一度に 1 人だけが同じユニットに信号を送信していることを確認する必要がありますが、これはデータベースのフラグを介して実行できるはずです。QtWebKit の次にググった後、django がそのようなタスクの最初の選択肢のようです。しかし...

Web アプリケーションの下で本格的な Python プログラムを実行できますか? django はそうするための適切なツールですか?

前述のように、(中間の) 将来 (~1 年) には、計算コストの高いタスクを実装する必要があるかもしれません。通常のpython内でCをそのまま利用することも可能ですか?

私が持っている別の質問は、開発についてです。生産性を高めるには、小さなステップで前進する必要があります。最初に通常の Python クラスを作成し、後で Web アプリケーションにインポートできますか? (同じ質問がウィジェット/QT にも当てはまりますか?)

最後に:もっと良い方法はありますか?基準や参考文献はありますか?

4

1 に答える 1

0

ただし、Django は Web サイトに適した候補です。

  • Web サイトから重い機能を実行することはお勧めできません。別のプロセスで発生する必要があります。

  • すべての関数は非同期である必要があります。IE 何かが完了するのを待つべきではありません。

個人的には、メッセージ キューを使用して別のプロセスを作成することをお勧めします。ウェブサイトはそのプロセスにステータスのみを要求し、常に結果をユーザーにすぐに表示します。

  • ブラウザが常に最新の結果を取得できるように、ajax を使用できます。

ZeroMQ または Celery は、機能の実装に役立ちます。

C で機能を簡単に実装できます。ただし、その機能を Python の拡張モジュールとして記述するのではなく、SWIG ラッパーを使用して純粋な c として記述することをお勧めします。そうすれば、機能は移植可能になり、Python Web サイトに依存しなくなります。

于 2013-09-28T20:27:45.257 に答える