产品: 打印机
1. 打印机本身的嵌入式软件
2. 手机APP
3. PC客户端
4. WEB网页端
5. 云中心
有些还会把iPad等平板类的终端也设计进去。所以,要开发一款通用性强的,好的产品在软件设计上也是需要花很大的工夫的。光是功能的维护,就会涉及到这么多的软件,需要一一考虑是否一起变更。
产品本身的设计开发,需要的是一嵌入式软件开发能力的人才。一般采用的是C语言编程。Linux或者iTron等OS。
手机APP的开发,一般会使用应用软件开发的人员,iOS或者Android。
PC客户端就是需要Windows应用软件的设计人员。
其中WEB网页端是集成在产品本身的ROM里面,通过http协议访问产品内部数据,进行页面显示。
云中心也是实时在线的管理线上的所有产品的能力,可以不受物理位置的影响。
产品:监控相机
再来看看监控相机的产品,以及使用的软件工具,其实也是一样的。
网页端作为GUI参数设置,PC端可以对相机进行实时预览和回放,手机APP也是同样可以操作控制相机,还有On-line的设备管理。
产品:DVR/NVR
产品本身有GUI设计,网页端设计。PC端可以对相机进行实时预览和回放,手机APP也是同样可以操作控制相机,还有On-line的设备管
目前接触过的产品都基本有这么些终端软件需要并行开发。
当然有些产品只是作为系统的部分部件,那么可能是不需要GUI界面的,也就参与底层交互和控制就可以了。
比如汽车内的零部件变速箱,车体等,也不需要多语言开发,只需要参与整车控制策略就可以了。相对这样的产品来说,只需专注于业务知识和控制策略,不必再GUI,多终端,多语言上耗费太多了精力。