私は、http apiを通じてサーバーと通信するデスクトップアプリケーションを開発しています。通信プロトコルを設計目的で視覚化するにはどうすればよいですか?
私は、開発プロセスの最初にミスを犯し、今私は(何を、何返信する、などを送信する際に...)これらのアプリケーションで全体の通信コードを改造しなければならないことに気づきました。
は私が視覚的に(マインドマップのような)ソフトウェアの2つの部分間のすべての通信を計画することができます方法はありますか?私は、http apiを通じてサーバーと通信するデスクトップアプリケーションを開発しています。通信プロトコルを設計目的で視覚化するにはどうすればよいですか?
私は、開発プロセスの最初にミスを犯し、今私は(何を、何返信する、などを送信する際に...)これらのアプリケーションで全体の通信コードを改造しなければならないことに気づきました。
は私が視覚的に(マインドマップのような)ソフトウェアの2つの部分間のすべての通信を計画することができます方法はありますか?通信プロトコルをビジュアル化する便利な方法の1つは、UMLを使用することです。具体的には、これと同様のsequence diagrams:
This siteは、共通の通信プロトコルのかなりの数のシーケンス図を有します。
他には、多くの場合、便利、図はcommunication diagrams次のとおりです。
、このような図を作成するためのUML modeling toolsのさまざまながあります。
私はあなたのアプリケーションが行う必要があるが、私は、モバイルとデスクトップのためのいくつかのアプリケーションを設計した後、それらの問題といくつかの経験を持っているかを理解didntの。
一般的である牽引主な機能:
これらの機能を実装することができ、あなたのシステムのいずれかの側、他側はこれをサポートしている必要があります。 例えばローカルアプリからのプッシュ - >サーバーは、アプリが実行されているときにのみ動作します。フロント/バックグラウンドで、インターネット接続、CPU、ディスク、RAMなどのローカルリソースにアクセスできます。私たちはhttp呼び出しを生成し、いくつかのデータを渡すためにインターネット接続を取得する必要があります。あなたがアプリケーションをランチしたり、OSスケジューラに追加したりするためにこれを設計することができます。 OSスケジューラはMac OS、Linux、Windows上にあり、この機能にアクセスしてこれを使用して、アプリがランチされていなくても実行されるタスクを定義できます。あなたの地元のアプリが無いの3G網や無線LANを持つエリアに取り組んたとえばモバイルゲームのために、インターネットに接続せずに実行することができた場合に
。あなたはあなたのアプリがローカルにディスク/ラムにデータを保存するように設計することができます。インターネットに接続すればサーバーに送信することができます。
別の問題は、サーバーへの接続で、あなたには、いくつかのダウンタイムを持っているかもしれないと思うことです。あなたのローカルアプリは、サーバー上でデータが送受信され、必要なすべての処理が行われたことを常に確認する必要があります。ログ、データベースの保存など。
プル機能は、ランチやスケジュールタスクにローカルのアプリプルデータ、非常に簡単です。サーバーの周りの他の方法は、現時点で利用可能なライブストリームソケットコードを構築する方法を知っていない限り、ローカルからより厄介です。例えば、流星のフレームワークに適用します。しかし、一般的には、ほとんどの場合、これは必要ありません。
私はこれがあなたを助け、助けになるいくつかのアイデアを生み出すことを願っています。
@Malt:私のタイトルを明確にしてくれてありがとう。 – Sevron