User Tools

Site Tools


techs:programming:oob

Table of Contents

OOB学习反思

博后开始时接触OOB,从JAVA入门的,现在仍在学习,但是已经可以开始反思了。开始反思的原因很简单,因为在读代码和写代码的过程中发现,OOB并不是万能的,有时候对于我的需求其实很低效,计算效率也有问题。

由于不是专科出身,很多东西是在使用中自己摸索出来的,需要补一些理论基础知识,来进一步提高自己的认知。不一定要成为专业的程序员,但是不妨碍增加一些逻辑认识。

优点

这部分略过吧,讨论OOB的优点很容易。通常讨论任何事物的优点都相对容易些。

缺点

稍微讲两句关于OOD的闲话吧。。关于怎么学,扯淡,以及怎么用

说点哲学的,软件的复杂是内秉的:因为人类的需求是基于人类的高阶逻辑的,而计算机至今能满足的是一阶逻辑演算,所以软件界在强AI出现之前不能解决软件的统一解决方案是非常正常的。
其实作者这一句话就道尽了所有问题,OOB最隐晦的问题就是让新手(比如我)觉得它是一切问题的解决办法。

最后再推荐一本书,叫做《Refactoring: Improving the Design of Existing Code》,这本书并不是用来面试的,而是讲如何提高代码质量,避免写出烂代码。作为一名合格的程序员,不可不察。
学OOD,就两本书,一本是大名鼎鼎的Design Patterns: Elements of Reusable Object-Oriented Software,因为作者有四个所以又称GOF/四人帮
另外一本是Head First Design Patterns,相对来说浅显易懂
比较重要的常用的pattern只有:Factory, Singleton, Adapter, Composite, Observer(Listener), Template Method, Proxy, Visitor, Iterator. 如果是临阵抱佛脚的可以多多关注这几个pattern。State,Bridge和Strategy也可以大体看看。

techs/programming/oob.txt · Last modified: 2021/03/31 06:34 by foreverph