首页 > 其他分享 >测量项目总结

测量项目总结

时间:2023-06-10 11:25:49浏览次数:27  
标签:总结 类库 社区 项目 代码 测量 Modbus 使用 组件

和朋友合作开发一个测量机产品, 用于测量汽车零件形位公差, 客户的客户是电动汽车第一品牌, 我负责上位机开发, 历时2个月, 完成上百次的commit.
时间虽紧, 但代码质量上没有妥协, 软件层次划分合理, 后续考虑做成系列产品.

开发利器

感恩这个时代, 现在的软件开发开发体验真好, 可以将主要精力都用于产品研发.
. 各类AI大语言模型, 问题检索效率比搜索引擎高太多了.
. 微软的C#和Visual studio 2022 社区版, C# 语言和社区版
. MySQL 8社区版, 之前我一直觉得MySQL功能较弱, 所以个人项目一般采用MS SQL Server 社区版或 PG, 这两个在工控行业都不太合适, SQL Server社区版数据量有上限限制; PG功能倒没限制, 但安装和运维对于工控行业来讲难度太高. 这次尝试MySQL8, 数据分析已经足够强大, 加上运维超级简单, 非常适合工控行业.
. Modbus 协议和Mobus slave 软件, 和PLC通讯首选Modbus协议, 代码可移植性性好, 而且有可靠的调试软件.
. gitee 提供的私有代码仓库
. git extensions 软件, 用的最顺手的git客户端.
. nuget 仓库, 类库安装太方便了.
. ConfuserEx 混淆工具, 测试了很多款开源混淆工具, 这是唯一一个使用方便同时功能又强大的, 混淆后的程序没有发现有异常情况.
. DnSpy 工具, 之前主要使用 ILSpy 工具, 发现 DnSpy 阅读代码的体验比ILSpy好太多, 可惜不更新了.

使用类库

上个项目中部分使用了.Net core + WinForm, 感觉到.Net core 对于 WinForm支持还不够成熟. 所以这次还是使用了最稳妥的技术: .NetFramework 4.8 + WinForm.
. Dapper 框架, 使用越来越顺手了
. ObjectListView 组件, UI 中大量使用 ObjectListView 组件, 开发效率非常高.
. NLog 组件, 我需要在UI上显示一些关键的日志信息, NLog 支持 RichTextBox 输出, 完美地解决了这个需求点,
. Newtonsoft.Json 组件, 配方文件使用 json 格式, 使用 Newtonsoft 一行代码即可映射到class
. NString 类, 除了提供一些String 扩展类, 最赞的是提供一个模板引擎, 我用它作为量测公式的预处理器, 完成变量赋值工作.
. NCal 类, 非常强大, 我使用它完成公式表达式的求解.
. NModbus 类, 支持Modbus TCP和 Mobus RTU
. NullGaurd 类库, 幕后英雄, 预防了很多空引用低级错误.

标签:总结,类库,社区,项目,代码,测量,Modbus,使用,组件
From: https://www.cnblogs.com/harrychinese/p/17470943.html

相关文章

  • JS中循环遍历数组的几种常用方式总结
    第一种:for循环,也是最常见的最简单的一种,也是使用频率最高的一种,虽然性能不弱,但仍有优化空间constarr=[11,22,33,44,55,66,77,88];for(leti=0;i<arr.length;i++){console.log(arr[i]);}第二种:优化版for循环constarr=[11,22,33,44,5......
  • Springboot项目展示层级结构后端工具类
    publicclassMenuHelper{/***使用递归方法建菜单*@paramsysMenuList*@return*/publicstaticList<SysMenu>buildTree(List<SysMenu>sysMenuList){//存放最终数据List<SysMenu>trees=newArrayList<......
  • 业余开源项目训练出最准确新冠预测机器学习模型
    什么样的机器学习项目会被美国疾控中心CDC、纽约时报、经济学人杂志等多家机构和媒体所引用提及,还被Facebook的ChiefAIExecutor称为最准确的新冠死亡预测模型?这就是今天要给大家分享的covid-projection——一个来自一名普通美国华裔数据科学家的的业余开源机器学习项目。covid......
  • 今日总结
    什么是正则表达式正则表达式是可以匹配文本片段的模式。最简单的正则表达式就是普通字符串,可以匹配其自身。换包话说,正则表达式’python’ 可以匹配字符串’python’ 。你可以用这种匹配行为搜索文本中的模式,并且用计算后有值并发特定模式,或都将文本进行分段。 ** 通配符......
  • 项目管理的3种组织结构盘点:职能型、项目型、矩阵型
    没有组织架构的企业将是一盘散沙,组织架构不合理会严重阻碍企业的正常运作,甚至导致企业经营的彻底失败。相反,适宜、高效的组织架构能够最大限度的释放企业的能量,使组织更好发挥协同效应,达到“1+1>2”的合理运营状态。今天我们就来了解一下组织架构都有哪几种形式,其优缺点是什么。......
  • 信道容量与香农定理、信源编码、信道编码总结
    1信道容量定义1.1信道容量:信道中平均每个符号所能传递的最大互信息量$I(X;Y)$$C=\mathop{max}\limits_{p(x)}{I(X;Y)}$单位:bit/符号1.2单位时间t内信道容量:$C_t=\frac{C}{t}$单位:bit/s1.3最佳输入概率$p(x)$分布时,传输的信息能达到信道容量1.4信道容量反映信道特性,表示信......
  • 第八周总结
    获取当前时间,用到date函数,但是时间的格式需要提前统一,否则在进行时间运算时会报错。publicList<book>select2(intid){Stringsql="select*fromjieyuewhereidr='"+id+"'";Connectionconnection=DBUtil_reader.getConnection();PreparedStatementst=nul......
  • 第五周总结
    对servlet的用途以及关联页面和dao层有了更清楚的认识,servlet层对于大项目的提高效率有很显著的效果privatevoidselect(HttpServletRequestreq,HttpServletResponseresp)throwsIOException,Exception{req.setCharacterEncoding("utf-8");List<studentid>list=newAr......
  • 每周总结第九周
    本周进行了团队作业的二阶段任务:任务很多,要完成对于一阶段的后端的功能实现:展示sevlet代码添加packagecom.itheima.web.servlet;importcom.alibaba.fastjson.JSON;importcom.itheima.pojo.Brand;importcom.itheima.service.BrandService;importcom.itheima.service......
  • 第六周总结
    今天写了第二个自测题,其中遇到了错误拦截的问题,对结构流程还是不够熟练publicbooleanInsert(studentstu){booleanf=false;Connectionconnection=DBUtil.getConnection();PreparedStatementpreparedStatement=null;try{Stringsql="insertintostudent(id,name,......