最近在学设计模式,我对学习一向是秉持开放的态度,所以也和很多同事交流,告诉他们我在学设计模式,希望能从他们口中,得到一些经验
最终,我还是得到了许多经验,但是,我发现一个共性,就是同事对设计模式不太在乎,也没有深入研究,还引用了go语言创始人的一句话告诫我,"我们希望大家忘记java中那繁多的设计模式,go的组合足够解决大家的问题"(大致是这个意思,我也没去验证真伪)
我回去思考了下这个问题,我有两个结论:
一,对于大佬们在网络上对技术理论和实践的评判,我认为对于新生技术,可以参考,避免自己走入坑中。但是对于经典技术,我认为第一步不应该是去看大佬们的评判,而是自己先学会,掌握它,经典能成为经典,一定有你必须知道的理由
二,二十三种设计模式,是基本的招式,很多人不喜欢设计模式,是因为很多人生搬硬套,让代码有失灵魂
我觉得学习设计模式有三层境界,一层是完全不懂设计模式,二层是学会二十三种设计模式,三层是忘记了这三种设计模式,但又能合乎时宜的使用出来,用出各种各样的变式
我认为大家对设计模式的褒贬不一,是因为看事务的角度不同,设计模式之于写代码,就像金木水火土之于世界,木,可以烧火,也可以做家具,有人只用木头烧火,就认为木头只能烧火,然后有了空调,就觉得木头没用了,不再需要木头取暖了,木头是个垃圾,个人经验罢了
以上就是我的结论,以后不论打脸也好,不打脸也好,都是一种成长