0

仕事では、主に .NET Compact Framework 3.5 を使用して、スマート デバイスで実行されるアプリケーションを開発しています。当社のデバイスは電話やハンドヘルドではありません。さまざまな機能を備えた測定器です。私たちのアプリケーションはかなり高度です - N レイヤー アーキテクチャ、自作の GUI フレームワーク、依存性注入さえも使用しています (他のものは十分に軽量ではないため、独自に構築しました)。

では、コンパクト フレームワークで行った最も高度なことは何ですか?

現在不足しているものは何ですか (たとえば、コンパクト フレームワークには Reflection.Emit がないため、モッキング フレームワークなど)?

アプリケーションをどのように開発していますか? 毎回アプリケーションをデバイスにデプロイしていますか? 私たちの場合、ソリューションは 30 個のプロジェクトで構成されているため、これは非常に遅く、PC 上で実行される Win32 バージョンがあります。

4

6 に答える 6

3

データ サーバーとして機能するプラント フロア監視システムと、PLC からデータを収集し、動的な Web ベースのレポートをすべて CF で作成する Web サーバーを作成しました。ピアツーピアの通知およびファイル共有システムを作成しました。私たちは、車両追跡および発送システムを実行しました。私たちは、トラクターからの大量のデータを監視し、それを位置情報や前年のデータ、その他多数のデータと結び付けるスマート農業アプリケーションを作成しました。したがって、CF を使用して非常に複雑なものをいくつか書いたと言えるでしょう。

「欠けている」部分がたくさんありますが、ほとんどは回避できます。回避できない最も明らかな欠落部分は、EE Hosting の欠如です。モック用のリフレクション ピースがあればいいのですが、それがなくても生きていけます。ホスティングの欠如は、いくつかのことを単純に不可能にします.

展開に関しては、構成がすべてです。スマート デバイス フレームワーク自体は、すべての単体テスト要素と組み合わせると、45 プロジェクトのようなものになります。デプロイは、変更を再コンパイルしてデプロイするだけなので悪くありません。また、テスト アプリケーションの構成を調整して、すべてのプロジェクトをデプロイするのではなく、主要なプロジェクトのみをデプロイすることがよくあります。これにより、すべての参照が自動デプロイされます (おそらく取得している二重デプロイを排除します)。また、すべてのプロジェクトを 1 つの共通ディレクトリに出力し、"Copy Local" を false に設定すると、かなり改善されます。

于 2008-11-03T15:59:05.840 に答える
1

.net cfアプリケーションで行う最も便利なことの1つは、完全なフレームワークに再ターゲットできることを確認するために一生懸命働くことです。これは、デスクトップ上でアプリケーション全体を実際に実行する2番目のデスクトッププロジェクトまたは単体テストがあることを意味します。ピンボークまたはデバイスのみのAPIを介してデバイス固有の機能を使用している場合は、やるべきことが少しありますが、通常、次の理由でその努力は報われます。

  • エミュレーターまたはデバイスが起動するのを待たずに、アプリケーションをすばやく実行/デバッグできます
  • デバイス固有の機能をモックしてテストできるようにコードを設計する必要があります
  • 多くの場合、アプリケーションのデスクトップバージョンとデバイスバージョンを使用する方法の一部です。

言うまでもなく、最終的にはデバイス上でテストを実行する必要がありますが、開発中およびコード/デバッグサイクルが速い場合は、エミュレーターを待たないでください。Daniel Mothが、これと同じ効果を達成するためにデスクトップコンピューターであるデバイス展開ターゲットを実際に作成する方法について何かを投稿したことを覚えています。多分誰か他の人がリンクを見つけることができますか?

于 2009-06-04T14:20:35.540 に答える
1

事前にロードされた在庫と顧客リストからのルート販売のために、産業用 PDA 用の Win CE アプリを作成しました。GPS 座標を取得し、スキャナーを使用してデータを収集し、GPRS/EDGE を介してデバイスで行われた売上のデータを送信します。アプリは領収書も印刷します (protable printer ober BT にリンクされています)。

于 2012-05-04T18:45:08.217 に答える
0

WebServiceとのインターフェースにより、自分で作成したブログの統計を監視するアプリを作成しました。

于 2008-11-02T05:53:43.880 に答える
0

私は多言語辞書を開発しました。Windows、PDA、および UNIX と MAC の MONO で 1 つのコード ベースを使用します。

大規模な複数のデータベースを使用するため、基本的にアプリケーションは複雑です。データ アクセスのパフォーマンスを微調整することができ、大きなテーブルのルックアップはほぼ瞬時に実行されます。

小型デバイスはそれほど強力ではありませんが、その動作を考慮して設計すれば、優れたパフォーマンスを得ることができます。

于 2008-12-03T04:57:58.343 に答える
0

MVC を使用し、データベースとして db4o を使用して、n 層アプリを使用して (天気の) 任意の大きさの測定値を収集するアプリを作成しました...かなり印象的です

于 2009-06-03T14:49:16.900 に答える