面向对象设计阶段理解

最初看面向对象方面的知识是因为看到很多不好的代码,包括我自己的,然后看《重构》,《HeadFirst面向对象开发》,《设计模式》,看了部分《敏捷开发:原则,实践,模式》,然后是《设计原本》,《建筑的永恒之道》,coolshell上的关于面向对象设计的批判。

 

重构——在函数级别提高了我的认识

 

然后想看看流行的设计模式,据说掌握了这个就能设计出好程序,很牛逼。然后找了些资源,

发现这些讲的是各种设计模式,是什么,在什么情况下用。但看不懂,因为完全找不出应用场景,也不知道为什么要用。浆糊中

后来我想应该先看基础,于是看到head first系列的面向对象设计,感觉思想是对的。

第一步找出需求,不单是客户提出的,还有隐含的。

第二步设计出基本的实现

第三步用各种设计原则和设计模式来做。

只是在分析阶段的例子,比如创建什么对象让我有点不太好理解,就是找名词,确定类,再建立联系。有点反直觉。不太适应,然后放下了。

 

后来找到了敏捷那本书,很早就买了,但之前看不懂,再看一下,发现设计模式的背后是设计原则,如DRY,IOC等

 

再看到coolshell上的面向对象的反讽例子,感觉到设计原则和设计模式,就是为了让程序更易读,更易修改。如果没有变化或复杂性,就不必要引入复杂性的东西。设计模式本身是有些复杂度的,如果能准确预知未来的变化或当前已经存在复杂性,那就用设计模式分离变化。如果当前情况很简单,就不用那么复杂了。平衡之道。

 

设计原本和建筑的永恒之道还不太懂

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值