zoukankan      html  css  js  c++  java
  • Design Patterns Explained 学习笔记(The ObjectOriented Paradigm)

    第一部分主要介绍面向对象软件开发,分为面向对象的开发方法(Paradigm这个词通常翻译为范例,总感觉怪别扭的)和UML统一建模语言.
    作者说1980s年代的面向对象是这样的:从需求描述中寻找名词并把他们弄成对象,在这种模式(Paradigm)下封装被定义成数据隐藏,对象被定义成具有数据的东西,方法被用做访问数据,这是有局限的,因为注意力放在了如何实现对象上.看来俺的对象管在俺出生的岁月里,哈哈.

    为什么需要面向对象?
    因为需求在变化,面向对象是为了更好地应对变化.
    作为开发者,他们对需求是这样认识的:
    1.需求是不完整的
    2.需求通常是错的
    3.需求(和用户)是容易误解的
    4.需求不能解释全部

    在面向对象之前,人们通常用功能分解(Functional Decomposition)的办法来解决问题.
    给定一个任务,从数据库里获取一些形状的描述,并显示它们.通常你会这样来解决这个问题:
    1.找到形状列表在数据库中的位置.
    2.打开列表
    3.将这个列表按照一定的规则排序
    4.在显示器上显示每个形状.
    其中第4个任务还可以细化为
    4a.鉴别形状的类型
    4b.得到形状的位置
    4c.调用合适的函数根据形状的位置显示
    这种思考方式很容易想到,因为小的问题别整个问题合在一起好解决得多.我们一直很自然地用这种方式解决问题,甚至于很少思考是否还有其他解决方式.
    这种方式最大的问题是无法应对变化,当我要增加一个要显示的形状或者改变显示的方式的时候,因为把所有的逻辑和实现都放在一个大的功能或者模块里,最终任何改动都要改动这个功能或者模块.

    内容太多了,明天再写吧.
  • 相关阅读:
    Java IO总结
    Tomcat处理一个HTTP请求的过程
    Tomcat的web项目部署方式
    Tomcat性能调优
    jquery基础知识汇总
    Javascript中的正则表达式
    HTTP首部
    HTTPS
    Javascript中关于cookie的那些事儿
    HTTP请求方法详解
  • 原文地址:https://www.cnblogs.com/Farseer1215/p/263450.html
Copyright © 2011-2022 走看看