这本书呢我其实之前我有看到过。当时就有点不大喜欢他的这种对话的风格,但是现在因为找不到更好的书么有看过好几本都觉得不咋样,就没办法只有回头来看,对他这种风格,也只有再忍一忍。结果真正看下来了,发现我最初并不喜欢的风格之下,其实有非常好的叙事,特别是生活化的那种场景描述,对于抽象的物件,理解它的关键,正是具象化。所以正是我需要的。

比如说代理模式,其实代理这个概念,我们倒是经常见得到,比如说http的代理,算是蛮常见的概念吧。可是我体到代码中代理到底是什么样的一种形式呢,我觉得呃,如果只是拿鸡呀,鸭呀,苹果动物啊,这个概念去讲了就会觉得有点儿生涩无趣吧。这个作者在讲代理的时候他其实是吗,NBA的姚明来说案例 当教练在布置给各个球员布置任务的时候,恩他会直接说谁谁谁去进攻谁谁谁去防守啊,所有的恩,在这个时候呢,听到这些话的时候呢这些。这些球员所有的一次英语的这些球员啊,只要听到要自己明白就可以了,而对于姚明呢,他刚刚去NBA的时候,他并不会英语啊,这时候就会给他找一个翻译这个翻译会把教练的要讲的,所有的这些进攻防守所有的这些战术部署要翻译给姚明那这里边儿这个翻译就是一个代理。我觉得这个是非常生活化的是我见到的最生活化的

再比如讲策略模式的时候,我也觉得他觉得案例非常棒,用价格策略来讲策略的,价格策略在生活中并不鲜见,我们需要我们可能会去打折,可能会去返点,甚至可能会去返券什么之类的。所以这些东西呢,他都会把它抽象策略。你们现在看到这张图就是一个抽象的策略也就是我们经常在在设计模式上看到的那张那张策略的图

现在看到那张了,就是在商场里面打折促销,然后总是用种种策略的时候的一张图

完了吗,会有一个上下文的一个类似于发起一个调用类似类似一个总的一个入口,随即呢,是一个基础类,加上三个策略类。在基础类里边儿定义了对外的比较公共的一个接口,在这里传入一个数字,也就是默认的的多少钱,然后返回呢,是一个经过策略处理之后得到的一个新的一个一个一个钱数。第一个那图就是最抽象的最通用的一个策略图。接下来的日子具体的场景下,在商场打折里边的一个一个设计类图,这样呢,我们就可以两相对比,就更容易理解的抽象的类图在特定的场景下的应用。

然后,我比较欣赏的是,基本上讲每一个模式的话,他都会在最后做一个总结就是具有非常具体的场景的。平时呢也有比较抽象的呃。这叫抽象的设计模式图 并且呢,她会跟他较容易误解的,其他的n相似的设计模式去做对比,而且是用的是比较生活化的语言

相见恨晚。https://book.douban.com/subject/2334288/

我还有一个体会上跟大家分享一下。

有相当一段时间,我发现我天天写代码,然后每天写代码写文字什么的,然后就会发现,好像我越来越不会说话了,也觉得我的词汇越来越贫乏了。另外一个呢,我会觉得好像我太容易说一些废话,特别是跟计算机语言相比因为这个原因呢,就是觉得不如计算机语言的简洁的,所以呢,自己就会跟自己说,不要说那么多屁话

后来我好像看到有几个同行也在这样说他们也讲也有也有类似的体会就是在当写程序写多了之后就会发现自己的口语逐渐的在退化好像就是前天吧,我在一个读书群内看到某位同事也提到了他说他现在觉得自己词汇越来越贫乏。我不知道你们是不是也有类似的感受?

我把这本书看的差不多的时候,我突然间觉得好像我找到了答案那就是我们在学电脑计算机语言的时候是用的是英语,而我,那么我们的文化是汉语,当我们写的英文写的越来越多的时候,却跟我们的汉语环境逐渐的隔离。我们看的是几乎所有的计算机语言类的书,后边的文化也都是英文的。我们接触的作者比较牛逼的也都是讲英文的,我们使用的软件比较牛逼的也都是讲英文的。当我看到了。用中文的,中国的,身边的环境讲出来的场景去讲时,我终于发现。很可能因因为这一类的资料太少,以至于我们的。键盘上输入英文和我们日常的汉语的环境的割裂,导致我们口语的退化

解决的方法,也许就是有更多的中文话的汉语的中国的场景去介绍这些专业的词汇概。当然还有另外一种可能也是更难的。把自己的文化也改成英文的全面滴掌握英语口语全面滴使用英文成为自己的工作环境和更多的老外做同事。