有这么一个软件大神, 他很少谈论操作系统、 络、高并发、海量用户……

有这么一个软件大神, 他很少谈论操作系统,数据库这些底层的东西,也很少谈什么高并发,海量用户, 他也没有开发过什么知名软件,但是却被奉为软件开发的教父。

这位大神就是Martin Fowler。

如果把软件开发分为3层的话,Martin Fowler其实生活在最上层。

重构的流行,也引发了另外一个市场: 向模式重构, 有一些书专门讲如何把“烂代码”重构为模式。

另外一个著名的案例就是《企业应用架构模式》, Martin Fowler把企业应用开发中的一些最佳实践分门别类地总结了出来:

比如讲领域逻辑模式的“事务脚本”,“表模块”,“领域模型”,“Service Layer” 等。

讲ORM的“单表继承”,“类表继承”,“活动记录”等。

虽然已经快20年了,你再去读这本书,还是会有很多收获,这就是基础知识,核心知识的魅力吧。

对于时下热门的“微服务”,虽然Martin Fowler并不是第一个谈及微服务的概念,但是他的文章对微服务总结得最好,传播最为广泛,尤其是其中的配图,非常精彩,强烈推荐: 

https://insights.thoughtworks.cn/microservices-martin-fowler/

经过这么一折腾,很多人就认为微服务这个概念就是Martin Fowler最先提出来的。 足以反映出他强悍的抽象能力。能够说出别人想说,但是难以表达的东西,成功地搔到了大家的痒处。

除此之外,Martin Fowler还有几本著名的书《分析模式》,《UML精粹》,《领域特定语言》,都是各自领域内的经典之作。

Martin Fowler做了很多年的ThoughtWorks首席科学家,ThoughtWorks是敏捷软件开发践行者和领头羊,记得他们最早是做定制的软件开发,就是给客户开发项目软件, 后来推出了一些自己的工具。 这个公司文化独特,也有很多牛人,在业界有不小的影响力,感兴趣的可以多了解下。

虽然Martin Fowler说自己仅仅是author, speaker,但是我相信如果没有大量项目实践的支撑,他不可能总结,抽象出这么多概念和方法。

我大胆猜想一下,Martin Fowler的工作方式就是全世界到处飞,发掘那些开发中的实践,然后总结出来,写博客,出书,  最终形成软件开发的宝贵财富。

很少听到Martin Fowler谈论操作系统,数据库,这些底层的东西,也很少听他谈什么高并发,海量用户。我们也很少使用他开发的软件,但是他的思想,他建立的‘词汇’却贯穿在我们日常开发中。

Martin Fowler给我们的启示就是:实现业务逻辑并不比底层的系统级开发低级,只要善于总结,善于思考,这一领域也大有可为。

最新热门文章

为什么学习编程要从Web开始/p>

我是一个线程

我是一个Java Class

CPU阿甘

面向对象圣经

TCP/IP之大明邮差

负载均衡的原理

一个故事讲完HTTPs

编程语言的巅峰

JavaScript:一个屌丝的逆袭

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年5月11日
下一篇 2019年5月11日

相关推荐