1. MES现在是典型的三层架构,由于业务相对零散,没有用到高级设计模式
1.1 现在做程式的方法,很多都采取分离的分离原则,如:让卡控的产品,分离出基础维护界面,让user自己去维护信息,实现卡控需求。
1.2 既然高级设计模式适应不了,可以模仿,简单的三层结构,考虑可不可以,在三层架构里面,做更多的子分层,减少功能模块之间的耦合。也减少代码的维护难度。
2.产线有着一个整体的作业流程,但是需求变更換频繁,公司为了利益最大化,会频繁有小的需求逻辑变更,所以說MES系統需要頻繁更改
3.产线有着他的需求,基于现有的工作模式思考
3.1界面问题
这个网上有个自定义.NET窗体控件和WEB各种控件的网站,有视频介绍,很漂亮,不过他们是打着收费的旗号,用他们自定义的东西是收费的。界面是需求的辅助,但是对于user来说,直观的就是界面体验……
3.2减少代码
如:获取电脑信息,基本每个作业界面每个方法都会有。 如:一个界面5次,MES程式80個頁面,行數為: 5*80*8=3200行。一个界面可以封装方法,一个MES系统可以封装.DLL文件,然后利用点语法,只需要传递一个参数即可。其他类似的,代码逻辑单一,根据一个参数机械性重复的代码,都可以封装至一个.dll文件中。Using引用,使用点语法实现,减少大量重复代码。
拓展一下,每个界面都减少30%的代码
3.3实现过程
如:一个GridView展示的时候,会有分页,但是导出Excel的时候,会有取消分页,绑定,写入excel,设置分页,绑定,显示。每个地方也都会有类似的重复性代码。这个过程也可以使用.dll ,
新程式应减少这些具体常量,这样减少直接更改后台代码的次数。
数据库中的表就是逻辑,可以设立规则整合至表中。做简单的分离,如果再提升一层,那就是FUNCTION或者procesure。,数据库中的fuction就是复杂的功能实现方法。
拓展一下,MES有一个.dll代码库,IT自己封装的,能看到里面的源代码,做的移植性特别好,就像系统的一个接口。还有从网站上搜集的,适合MES的代码.dll代码库。
这些轻巧的.dll库则是快速的完成强大的功能。
3.4学习方式
零碎的知识靠百度。但是百度是一个综合性知识查阅平台。
C#涉及复杂一点的知识应该上专业网站。如:CSDN、51CTO、51ASP.NET源码,这些专业的.NET知识分享平台。
学习是个借鉴的过程,这些网站上边很多东西,可以直接拿过来用。
4.其他
SQL語句的优化和C#后台代码的规范性书写,也能优化系统
总体:IT程式稳定,业务分离,技术分离更加明确,代码更加容易维护,可读性强。