【自然框架】之“解耦”初探

简介:       解耦,在以前确实做不到,但是周四和“横刀天笑”聊了之后,发现解耦是可以实现的。其实很简单,只要弄出来一个“实体类”就可以搞定了。                如果是简单的情况,那么就让表单控件“全权负责”了,这时候是不需要些什么代码的,点点鼠标,打几个字就可以了。

 

      解耦,在以前确实做不到,但是周四和“横刀天笑”聊了之后,发现解耦是可以实现的。其实很简单,只要弄出来一个“实体类”就可以搞定了。

      

 

      如果是简单的情况,那么就让表单控件“全权负责”了,这时候是不需要些什么代码的,点点鼠标,打几个字就可以了。

      如果是有复杂的业务逻辑,那么就可以定义一个实体类,然后让表单控件给这个实体类的属性赋值,就是把用户输入的信息给实体类里对应的属性赋值(可以让表单控件通过反射自动实现,也可以单独写代码实现)。然后就可以调用逻辑层来处理业务逻辑了。只是这个实体类的属性只能是“简单类型”,实体类的属性类型不支持类、接口、委托等。

      处理玩业务逻辑之后有两种选择,第一个就是在把属性值在返还给“表单控件”,继续原来的步骤;另一个就是使用您习惯的ORM来实现持久化。

      这个只是“初探”,应该可以适用更多的情况,但是并不是说这样就可以“包治百病”了。

 

      期待大家的宝贵意见,谢谢!

 

 

      【自然框架】之 “表单控件”与“实体类”   一个具体的实现代码。

相关文章
|
存储 Cloud Native Linux
软件开发方法:复用与扩展
软件开发方法:复用与扩展
|
5月前
|
编译器 C语言 开发者
技术经验解读:什么是耦合和解耦
技术经验解读:什么是耦合和解耦
241 1
|
5月前
|
算法 Linux C++
C++框架设计中实现可扩展性的方法
在软件开发中,可扩展性至关重要,尤其对于C++这样的静态类型语言。本文探讨了在C++框架设计中实现可扩展性的方法:1) 模块化设计降低耦合;2) 使用继承和接口实现功能扩展;3) 通过插件机制动态添加功能;4) 利用模板和泛型提升代码复用;5) 遵循设计原则和最佳实践;6) 应用配置和策略模式以改变运行时行为;7) 使用工厂和抽象工厂模式创建可扩展的对象;8) 实现依赖注入增强灵活性。这些策略有助于构建适应变化、易于维护的C++框架。
419 2
|
3月前
|
C# 微服务 Windows
模块化革命:揭秘WPF与微服务架构的完美融合——从单一职责原则到事件聚合器模式,构建高度解耦与可扩展的应用程序
【8月更文挑战第31天】本文探讨了如何在Windows Presentation Foundation(WPF)应用中借鉴微服务架构思想,实现模块化设计。通过将WPF应用分解为独立的功能模块,并利用事件聚合器实现模块间解耦通信,可以有效提升开发效率和系统可维护性。文中还提供了具体示例代码,展示了如何使用事件聚合器进行模块间通信,以及如何利用依赖注入进一步提高模块解耦程度。此方法不仅有助于简化复杂度,还能使应用更加灵活易扩展。
99 0
|
6月前
|
设计模式 API 数据库
【C/C++ 设计思路】C++中解耦策略的艺术:有效管理复杂依赖关系
【C/C++ 设计思路】C++中解耦策略的艺术:有效管理复杂依赖关系
340 3
|
设计模式 网络协议 Java
《移动互联网技术》 第十章 系统与通信: 掌握Android系统的分层架构设计思想和基于组件的设计模式
《移动互联网技术》 第十章 系统与通信: 掌握Android系统的分层架构设计思想和基于组件的设计模式
113 0
|
消息中间件 存储 运维
难住了,微服务之间的几种调用方式哪种最佳?
难住了,微服务之间的几种调用方式哪种最佳?
|
缓存 运维 架构师
架构之道:分离业务逻辑和技术细节
架构之道:分离业务逻辑和技术细节
513 1
架构之道:分离业务逻辑和技术细节
|
容器
框架设计思维符合语义即可使用,而不用关心底层的实现
框架设计思维符合语义即可使用,而不用关心底层的实现
226 0
框架设计思维符合语义即可使用,而不用关心底层的实现
|
SQL
封装与职责分离的开发思维
封装与职责分离的开发思维
114 0