2023年5月3日

开发复杂软件的系统方法(二)之软件建模

摘要: 这几周与公司的软件开发专家(职称)讨论产品的软件新架构与方案,主要涉及两点 是否复用现有的核心机制 基于领域建模设计 关于第一点,双方达成一致。 关于第二点,领域可以理解为业务,业务专家(产品经理,需求工程师,临床工程师等)与研发人员一起,通过头脑风暴、事件风暴、会议、协作等方式,使得研发人员对产品 阅读全文

posted @ 2023-05-03 14:00 IT文艺男 阅读(222) 评论(0) 推荐(0) 编辑

软件开发、设计、架构的其他原则

摘要: LOD:迪米特法则(Law of Demeter) CRP:合成复用原则(Composite Reuse Principle) DRY:不要重复你自己原则 (Don’t Repeat Yourself Principle) KISS:KISS原则 (Keep It Simple and Stupid 阅读全文

posted @ 2023-05-03 12:58 IT文艺男 阅读(86) 评论(0) 推荐(0) 编辑

2023年4月28日

软件开发、设计、架构的五大原则

摘要: 唯一不变的就是变化本身。 我们经常讲的系统、子系统、模块、组件、类、函数就是从逻辑上将软件一步步分解为更细微的部分,即逻辑单元, 分而治之, 复杂问题拆解为若干简单问题, 逐个解决。 逻辑单元内部、外部的交互会产生依赖,从而产生了内聚、耦合概念。内聚主要描述逻辑单元内部,耦合主要描述逻辑单元之间的关 阅读全文

posted @ 2023-04-28 09:14 IT文艺男 阅读(351) 评论(0) 推荐(1) 编辑

2023年4月6日

C++/Qt网络通讯模块设计与实现(总结)

摘要: 至此,C++/Qt网络通讯模块设计与实现已分析完毕,代码已应用于实际产品中。 阅读全文

posted @ 2023-04-06 22:00 IT文艺男 阅读(447) 评论(2) 推荐(0) 编辑

2023年4月5日

C++/Qt网络通讯模块设计与实现(六)

摘要: 这节讲述网络通讯服务端的实现,其开发思想、原则与客户端的类似,即组合封装、线程运行时类,面向接口编程等等。源码面前,了无秘密,我直接以类代码给大家展示,包含SNetServer类、SNetServerRunning类、INetServerHandler等类。 阅读全文

posted @ 2023-04-05 12:40 IT文艺男 阅读(120) 评论(0) 推荐(0) 编辑

2023年3月26日

C++/Qt网络通讯模块设计与实现(五)

摘要: 在C++/Qt网络通讯模块设计与实现(四) 中具体分析了Qt的信号槽、线程相关的知识,即从 Qt::ConnectionType,示例源码,结果论证,归纳总结等四个方面进行了全方面讲解,深刻阐述了代码设计的原因。这节讲解接口的应用,从广度上让大家对面向接口编程(该编程思想很重要)进行掌握。 阅读全文

posted @ 2023-03-26 16:23 IT文艺男 阅读(124) 评论(0) 推荐(0) 编辑

2023年3月19日

C++/Qt网络通讯模块设计与实现(四)

摘要: 在C++/Qt网络通讯模块设计与实现(三)中提到了一个概念,即接受者所依附的线程;关注我微信公众号的技术朋友留言对该概念还是不解,这节就单独讲述这个概念的理论与实际应用,这种应用无处不在,因为与Qt的信号槽、线程相关,大家需掌握。接下来从 Qt::ConnectionType,示例源码,结果论证,归 阅读全文

posted @ 2023-03-19 17:41 IT文艺男 阅读(112) 评论(0) 推荐(0) 编辑

C++/Qt网络通讯模块设计与实现(三)

摘要: 上一节给大家从源码级别分析了SNetClient网络客户端的实现过程,详见​C++/Qt网络通讯模块设计与实现(二),并给大家留了一个疑问,即引入SNetClientRunning类是为了解决什么问题? 我们从SNetClient的设计出发,即要求在线程里进行数据包的收发,连接,断开处理等,这些处理 阅读全文

posted @ 2023-03-19 12:01 IT文艺男 阅读(145) 评论(0) 推荐(0) 编辑

2023年3月15日

C++/Qt网络通讯模块设计与实现(二)

摘要: 上一节给出了C++/Qt网络通讯模块的设计类图,以及各类的作用描述,详见C++Qt网络通讯模块设计与实现(一),这节讲述类的具体实现,源码之前,了无秘密,让大家彻底从原理上明白。 SNetClient 继承于QThread,为线程类;代表一个网络客户端。 成员方法 void BindHandler( 阅读全文

posted @ 2023-03-15 09:26 IT文艺男 阅读(73) 评论(0) 推荐(0) 编辑

C++/Qt网络通讯模块设计与实现(一)

摘要: 网络通讯模块负责网络数据包的发送、接收以及对外提供功能调用以及接口回调,其不进行产品业务的实现。 阅读全文

posted @ 2023-03-15 09:13 IT文艺男 阅读(117) 评论(0) 推荐(0) 编辑

导航