• 编程思想之理解面向对象


    编程思想的最佳实践过程就是贯穿面向对象实施的全部过程,该过程包括面向对象分析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总结,文中若有概念理解错误或者不对的地方,请您批评指正。

  • 相关阅读:
    bstToDoublyList
    Springboot系列1_什么是Springboot
    servlet总结
    JavaFx开发桌面软件
    在Emacs中使用plantuml画UML图
    IIS7.0上传文件限制的解决方法
    开源免费的天气预报接口API以及全国所有地区代码(国家气象局提供)
    如何得到天气情况?在那个接口获取?
    Windows Update 时出现8024402C的错误
    OC中copy的使用
  • 原文地址:https://www.cnblogs.com/smartbooks/p/2857613.html
Copyright © 2020-2023  润新知