编程思想之理解面向对象
编程思想的最佳实践过程就是贯穿面向对象实施的全部过程,该过程包括面向对象分析OOA、面向对象设计OOD、面向对象编程OOP。实施该过程也就是巧妙地综合运用“符号语言”进行实践的过程。没有完美的问题解决方案,只有最适合的问题解决办法,这是在实践过程中需要整体贯穿的基本思想和策略。代码实现只是最后打通任督六脉一个环节。面向对象的一些基本特点就是:封装、继承、多态、“抽象”。
面向对象分析OOA
面向对象分析就是通过和客户的交谈,沟通。从与用户沟通的记录中找出需要的Class,去除多余的、重复的(重构),删除具有不确定的概念(如系统稳定性)。一个基本的分析方法就是:将用户的语音或沟通描述文字化,最后整理成一份通顺、完整的文档。从文档中找出“名词”作为Class(即封装),“动词”作为“名词”的方法或函数,多个相同的动词要重载;找出关于名词描述的特点的词语作为Class的属性。同时为所有的对象划定一个区域(即边界),不确定的或者未知的对象规划到边界以外。
例如:用户可以下订单购买商品。
分析:
描述缺陷:“用户”指的谁?管理员?买家?卖家?
修改后:买家用户可以下订单购买商品。
抽取类:
买家用户类
动作:下订单
订单类
商品类
面向对象设计OOD
OOD就是讲OOA的分析结果采用接近于代码的符号描述语言画、或设计出来如UML类图工具。基于以上的分析我们可以发现,系统中存在多个角色(管理员,买家,卖家),同样都是用户但所使用的功能是不用的,这一点可以用类继承的方式实现(未考虑权限功能,只仅描述继承特性)。类如下设计:
public class User
public class Admin : User
public class Businesses : User
public class Buyers : User
method:Buy()
public class Orders
public class Commodity
面向对象编程OOP
此实施过程就是编码人员实现代码细节的过程,实施过程中尽量多使用重构等。
public class Buyers : User
method:Buy(){
//实现用户购物的代码逻辑
}
结语
以上内容是我的关于面向对象编程方面的一些easy总结,文中若有概念理解错误或者不对的地方,请您批评指正。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?