0

在工作中,我主要使用 .NET Compact Framework 3.5 来开发在智能设备上运行的应用程序。我们的设备不是电话或手持设备——它们是测量仪器,您可以获得一整套功能。我们的应用程序非常先进——我们甚至使用了 N 层架构、自制的 GUI 框架甚至依赖注入(我们构建了自己的,因为其他的还不够轻量级)。

那么,您使用紧凑框架所做的最先进的事情是什么?

当前缺少什么(例如模拟框架,因为紧凑框架上没有 Reflection.Emit)?

你是如何开发你的应用程序的?您是否每次都将应用程序部署到设备上。在我们的例子中,这非常慢,因为解决方案包含 30 个项目,所以我们有一个在 PC 上运行的 Win32 版本。

4

6 回答 6

3

我们已经完成了一个工厂车间监控系统,它充当数据服务器和网络服务器,从 PLC 收集数据并在 CF 中创建基于网络的动态报告。我们创建了一个点对点通知和文件共享系统。我们已经完成了车辆跟踪和调度系统。我们已经完成了智能农业应用程序,这些应用程序监控来自拖拉机的大量数据,并将其与位置和前一年数据以及其他一些数据相结合。所以我想你可以说使用 CF 写了几个高度复杂的东西。

有很多“缺失”的部分,但大多数都可以解决。最明显的无法解决的缺失部分是缺少 EE 托管。用于嘲笑的反射片会很好,但我们可以没有它 - 它只会让测试更像是一只熊。缺乏托管使一些事情变得不可能。

至于部署,一切都与配置有关。智能设备框架本身,加上所有单元测试的东西,大约有 45 个项目。部署还不错,因为它只是重新编译和部署更改,而且我经常调整测试应用程序的配置,不部署所有项目,而只部署主要项目。那应该自动部署所有引用(消除您可能得到的双重部署)。此外,将所有项目输出到一个公共目录并将“复制本地”设置为 false 也可以改善很多事情。

于 2008-11-03T15:59:05.840 回答
1

我已经为工业 PDA 完成了 Win CE 应用程序,用于从预加载的库存和客户列表中进行路线销售。它获取 GPS 坐标,使用扫描仪收集数据,通过 GPRS/EDGE 传输设备中销售的数据。该应用程序还打印收据(链接到便携式打印机 ober BT)。

于 2012-05-04T18:45:08.217 回答
1

我们对 .net cf 应用程序所做的最有用的事情之一是努力确保它们可以重新定位到完整的框架。这意味着您有第二个桌面项目或单元测试,它实际上在桌面上运行您的整个应用程序。如果您通过 pinvokes 或仅设备 API 使用特定于设备的功能,则需要做一些工作,但这些努力通常会得到回报,因为:

  • 您可以快速运行/调试您的应用程序,而无需等待模拟器或设备启动
  • 您被迫以可以模拟和测试设备特定功能的方式构建代码
  • 在许多情况下,您是拥有应用程序的桌面版本和设备版本的一部分

可能不言而喻,最终,测试需要专门在设备上完成,但在开发和快速的代码/调试周期中,不用在模拟器上等待真的很好。我记得 Daniel Moth 发布了一些关于如何实际创建设备部署目标的文章,该目标是您的台式计算机以实现相同的效果。也许其他人可以找到链接?

于 2009-06-04T14:20:35.540 回答
0

I wrote an app that monitors the statistics on my self-made blog by interfacing with a WebService.

于 2008-11-02T05:53:43.880 回答
0

我开发了一个多语言词典。在 Windows、PDA 上使用一个代码库,在 unix 和 MAC 上通过 MONO。

基本上,应用程序很复杂,因为我们使用多个大型数据库。我们能够调整数据访问性能,并且对大型表的查找几乎是即时的。

小型设备不是很强大,但如果您针对它们的工作方式进行设计,您可以从中获得良好的性能。

于 2008-12-03T04:57:58.343 回答
0

我制作了一个应用程序来收集任何量级的测量值(用于天气),使用 n 层应用程序,使用 MVC 并使用 db4o 作为数据库......非常令人印象深刻

于 2009-06-03T14:49:16.900 回答