分享

C#架构设计思路

 汉无为 2023-07-10 发布于湖北
1. 23种设计模式分为创建型、结构型、行为型
创建型:关注对象的创建,对类的现实化进行了抽象,能够使软件模块做到与对象的创建和组织无关。
包括:单例模式、抽象工厂模式、建造者模式、简单工厂模式、原型模式
结构型:类和对象之间如何进行有效的组织,
包括:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式
行为型:关注对象和行为的关系分离,如何交互以及如何分配职责
包括:观察者模式、中介者模式、状态模式、解释器模式、策略模式、职责链模式、访问者模式、命令模式、迭代器模式、备忘录模式
中心思想
创建型 创建d
结构性 合
行为型 分
23种设计模式是选择性需求,根据选择模式设计项目结构及代码,让项目更加优雅、彰显大师水平。
2.数据服务创建思路
数据库有很多种上位机常用有SQLite、MySQL、SQLsever
UI:表现层(页面)。
BLL:主要数据SQL语句,区分数据库业务处理。
DAL:数据库访问以及连接具体数据库,可以选择使用框架不需要编写SQL语句,数据访问框架有ORM、EF、SqlSugar等框架,使用框架优点:不需要考虑怎么写SQL语句,SQL语句是根据方法自动生成需要的SQL语句,所以减少代码量的同时兼容多个数据库。
数据库:SQLite、MySQL、SQLsever等。
以上数据库在C#中SQL语句是一样的,使用时较少开发的代码量。
分层设计可以直接调用,后面再次使用或者用于其他项目基本不能直接用于其他项目上,使用设计模式思想去设计框架,这样做的好处就是到DAL数据访问层只需要更改数据库连接字符串配置即可。比如在BLL类库中增加BaseService类里面定义增删改查四个处理方法,数据类型为泛型,兼容各种返回数据类型。从业务类判断连接数据访问方法。可以兼容不同类型的数据库。
举例
1.UI调用BLL数据处理方法
2.BLL增删改查方法,BLL调用DAL

图片

2.BLL调用DAL数据访问方法

图片

3.DAL数据访问方法

图片

4.DAL到数据库,这增加其他数据库连接方法类

图片

3.设备通讯服务创建思路

图片

1. UI:表现层(页面)
2. BLL:通信协议数据类型解析。数据类型转换、通讯报文解析,调用
3. .DAL:通讯协议有ModbusTCP、ModbusRTU、S7.net、FinsTCP、三菱Melsec、OPC、MQTT等。拼接报文,发送接收通讯协议报文。
4. 设备:西门子PLC、欧姆龙PLC、三菱PLC、其他PLC、各种仪表仪器和其他设备。
设备通讯类似数据库访问结构,通讯协议也可以选择第三方通讯DLL
通讯类库:UI层变量读取调用Comm类主要BLL业务区分开具体通讯协议对象以及读写方法,解析协议报文,根据通讯协议调用具体通讯协议。
在C#中不用看接线方式,比如是串口还是网口,只需要考虑具体通讯协议,根据通讯协议选择串口还是网口。
1.UI层调用NetDeviceBase业务类,PLC变量类型对象:StoreArea,
2.读写数据服务方法:ReadWriteBase,读写接口:IReadWrite,
3.协议报文:Library,增加协议在Library文件里面增加。其他都是根据业务增加类。混合锁:SimpleHybirdLockh,锁是保障读写不出错,正在发送报文时是要锁住防止写入,读和写不能同时发。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多