github小众神项目,给人学的23个设计模式(不知道就亏大了)

23个设计模式,是不是技术人必学的?

GOF的设计模式确实经典,可太抽象,太难啃,难道就没有给人学的设计模式吗?分享一个小众的github宝藏项目,名称就叫“给人学的设计模式”。

项目名称:design-patterns-for-humans

项目地址

https://github.com/kamranahmedse/design-patterns-for-humans

34c26851da7c5e35523826db777584c2.png

标星只有44.4K,在github算是小众的吧?

design-patterns-for-humans是一个怎样的项目?

2ec405635e35248b707275acef6cf227.png

这是一个个人项目,作者用极其通俗易懂(Ultra-simplified)的语言,极其简洁的方式(simplest way),以及直观的代码,解释经典的23种设计模式。

简洁到什么程度?

每一个设计模式,分为四个部分,5分钟搞定。

(1)现实中的例子(Real world example);

(2)通俗讲解(In plain words);

(3)Wiki介绍(Wikipedia says);

(4)示例代码(Programmatic example);

c5c31155132f200373fdd385660d44fe.png

23个经典设计模式,2个小时全部看完,对设计模式的理解,又加深了!

以单例模式(Singleton)为例:

84aec54ae5c4eded483473c1dedae609.png

2分钟的时间,你已经把例子+白话+Wiki看完了。

画外音:优缺点说明,直接深度阅读(理解)。

dc45e6607804adfd5eb54673b8b162fa.png

2分钟的时间,你又把核心实现方法,以及使用方法看完了。

画外音:私有构造函数,禁止克隆,禁止继承,静态成员,静态函数。

当然,为了方便大家理解,有些设计模式有图形对比说明:

87f99150987e773fb7c862f0ef8f463d.png

比如,使用or不使用桥接(Bridge)模式对比。

设计模式,是技术人最基本的基本功,每个人都应该掌握。但同时,作者也给出友情提示:

93adee9b4453c0d7f6747e2a3493b555.png

(1)设计模式,不能解决所有问题;

(2)不要为了使用而使用;

(3)设计模式只是工具,业务问题的解法,得自己找对工具;

(4)用错了工具,只会让代码变得更糟。

好了,不多说了,有了“给人学的设计模式”,妈妈再也不担心我搞不懂设计模式了。有个朋友说,这个项目不用收藏,2个小时,就看完啦

有人说,不用设计模式,照样写代码,你怎么看?

帮忙分享给有需要的朋友,谢转。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值