你说得真的很有道理,我一开始也是用记事本,最后练成了火眼金睛,这真不是盖的,不过比如用editplus习惯后,我就不太习惯用别的了,因为有颜色区别后,鉴别js/php/htm 代码很容易,节省了很多时间,你让我再习惯别的编辑器颜色,或者不用颜色了,我真的觉得很累
关于模式我觉得还是挺好的
所谓的无需在重复相同的工作,这是谁说的,直接拖出去打,呵呵
无论模式还是不模式,最重要的复用,在于思想,而不是代码,我靠,真恶心阿,搞得好像叫兽一样
如果你做网站很熟练了,首先你不看需求,可能就会勾勒一个蓝图,是不是要新闻发布阿,留言板?论坛/用户管理/小电影……
无论这样想是不是面对对象还是面对过程,你不得不承认,你复用了建设一个网站的第一个思想
你可以想,如果你重来没做过,真的无从下嘴
接着,关于新闻发布,如果你做过,你可能直接想到数据库设计,这个是不是要个计数点击阿,加个字段阿,或者,你想到,恩,一个新闻模型,那么里面应该是……无论想到哪一种,其实都没有关系,而关键在于,你不得不承认,你又复用了第二个网站建设的思想,关于新闻发布的设计
如果这样一层层,抽丝拨茧,肯定最终会涉及到代码这一层
如果这样回过头来看,代码复用真的很重要吗,显然,如果你具备了设计思想,代码就对你不重要了,用什么不能写呢,用什么不是写呢,而怎么写,我只要知道了,不就行了吗,就好像老有人说,关键在于算法,算法不也就是一种设计思想吗
23种设计思想我觉得还是挺好的,虽然不是对某一类项目的设计思想
简单的说,他的精华在于组合,真的假的……
多用组合,少用继承,那你说我干吗用类,我不能用函数吗,这个真是一言难尽,用类可以有一种抽象的思想,我日俄,或者说以点带面吧,因为面太广了,涉及的东西太多,人的思维没法接受,如果用一个点,一个变量,一个类名,代替一个物体/一件事,人还可以接受。如果一个项目中有500个函数,你看一眼就能评断之间的关系和要达到的目的吗,除非你是超人,如果你用类,我可以一眼就说出来,因为500个函数在50类中,这50个类又抽象成 5个基类,比如:新闻模型/留言模型/论坛模型/小电影模型……这样,对于设计思想总结来说不是很方便吗
23种设计思想,除了组合,
比如:单件模式和原型模式,就很容易记得,因为它利用了语言本身的规定,就好像你学会骑自行车就永远不会忘记……
观察者模式很特别,是mvc的基础,也是数据推送的基础,你想做个推数据的聊天室或者邮箱,该模式就有一定帮组,当然你不能说我看了下这个,我就可以推数据了,这还涉及到架构什么平台上的诸如此类
模版模式和策略模式,就好像虚类继承和接口组合,实际上用这2个去解释继承和组合,真的很经典,当然这是我说的,如果你看后觉得不对,就当我没说……
代理模式/装饰模式/适配器/合成模式/门面模式/桥梁模式,可以一起看,说到底都是委托,就好像一个函数里面,自己不干事,调用(委托)另外一个函数干事,如果把函数改成类就是这些东西。从类来看,讲到底就是怎么样组合几个类拉
还有一些,象工厂模式,估计你都用了n次了,工厂方法/静态工厂,不是继承就是组合,反正就是自己不干事,让别人干,靠……
享元模式真不是盖的,它将毁坏正常的逻辑,只是为了少生成一些对象,没办法,唉,有得就有失
迭代模式php5自带了,也就变成了语言规定了
其他的也都八九不离十,不离哪个十,对象的组合
搞了半天是这样啊,那到底有什么用啊
其实你说得很对,这些也不是发明创造,只不过是先哲们总结的对象组合方式,实际上如果你自己搞,一段时间之后你自己也能总结,不过这个因人而异,象爱因斯坦的相对论,一般人一辈子都总结不出来
既然你把医学当成职业,总要看看人体把……学学人体的病理和生理
如果是美术,总要看看人体把……学学人体素描的画法……
既然搞程序,总要看看人体把……这个,不太好吧,提前学学23种模式,这不是快一点吗,这都是知识阿,知识现在又不值钱……