1.熟练掌握现代C++11,14,17标准,并运用在项目代码之中。
2.熟悉常用设计模式,根据业务需要封装功能模块,提高软件代码的可读性,扩展性。
3.了解跨平台开发的特点,对windows ,linux,嵌入式linux,macOS等不同操作系统开发跨平台程序。
4.基于QT框架,熟练运用和掌握桌面,触屏或移动开发软件。包括QWidget,Qml等GUI开发,并对页面性能和效果优化有一定心得,例如动画效果,3D场景,大数据量下图表显示等。
5.了解python,shell等脚本语言,可以开发些配合的自动化脚本。
6.了解3D图形学的知识,熟悉OpenGL接口。
1.医疗系统软件的开发
我负责上位机部分医疗软件的工作流的设计,包括对应UI和后端数据指令的交互等。主要基于QT平台,qml是主要UI语言,数据处理和内部逻辑由C++部分解决,极大地提高了软件效率。底层图像由OpenGL接口渲染,我也会负责一些OpenGL出图的代码优化工作。整体软件设计是模块相对独立,界面设计很友好。
2.后端开发
我负责后端开发,做些数据处理,主要是常规物联网和电力协议的解析转换,熟悉http,mqtt,rs232,IEC104等不同协议并转化协议消息给不同的需求方和云端存储接收利用。软件有跨平台要求,需要在windows,linux,嵌入式linux上同时运行。
这款是医疗软件,病人在输入病人页面进行输入信息和匹配信息。更具不同的需要也可以远程获取病人信息。然后确认完进入扫查页面开始医疗诊断。扫查页面有默认不同的协议进行检查,可以添加协议和进行UI的交互来控制底层硬件参数等从而显示实时的3D医学图像。
后端通过不同的协议获取和转化数据例如http,mqtt,rs485等基于串口,或者tcp获取底层plc或其他仪表的数据,利用Qt widget图形框架做实时数据可视化软件。客户可以定制图表风格,实时直观监控数据变化。所有数据处理和数据库存储都是幕后隐藏,显得更直观有效。