Cocoa 潮人 Mattt Thompson

又到周末啦,心情轻松了好多,今天我们来看看牛人 Mattt Thopson

在 iOS 开发中,你很可能使用过一个叫做 AFNetworking 的网络库,Mattt 就是这个著名开源软件的作者。

Mattt 是一个多产的开源作者,除了 AFNetworking 之外,Mattt 还创作了 TTTAttributedLabel, FormatterKit, GroundControl, SkyLab 等许多非常好用的开源项目.

Mattt 的成就不仅于此,他还是著名技术博客 NSHipster 的作者。看这个名字就知道这是一个关于 Objective-C和 Cocoa 的技术博客。NS 是在 Mac OS 和 iOS 开发框架 Cocoa 中大量使用的前缀,这个前缀来源于乔布斯在 1985 年创建的 Next 公司。Next 公司制作的计算机操作系统叫做 NextStep, 该系统提供了 Objective-C 的编程接口,后来,Next 被 Apple 收购,乔布斯回到苹果,在 NextStep 的基础上研发出了 Mac 操作系统,Objective-C 成了 Mac 编程的官方语言,NS 前缀的命名方式也流传下来。Mattt 为其博客取名 NSHipster,Mac 和 iOS 开发者自然心领神会。

NSHipster 和众多的 OC/Cocoa 技术博客有很大不同,NSHipster 并不提供如何实现 xxx 功能这种快餐式的技术方案,而是更深入的探讨某个技术背后的原理和设计思想。读 Mattt 的文章,相见恨晚,其独具慧眼让你拨开纷扰,知其然,知其所以然。

在 iOS 开发的世界,有三个地方的文档必须要看:

  • 苹果的官方文档: 官方的 Guides 和 Reference 是必读的,Guides 给你最权威的解释,告诉你最正确的 API 用法和其设计思路;Reference 给你最详尽准确的参考,是你自信的来源。然而,官方文档出于其官方的角色,难免机械和枯燥,也不会过多的解释设计原因。

  • http://www.raywenderlich.com: 著名的 iOS 开发教程博客,由 Ray Wenderlich 创建,大家亲切地叫他 大Ray。目前已经聚集了数十位作者参与教程创作,也有大量中文译者。这个网站主要用实例来讲解某种功能的实现方式,是最快速最实用的参考资料,非常适合新手学习。它以手把手的方式,教你一步一步实现某个功能,只要跟着做,瞬间就可以实现目标。由于它的目标是实用、可操作,因此对理论的讲解就略少一些,属于授人以鱼类型的教程。

  • 最后就是 Mattt 的 NSHipster 了,Mattt 似乎将 iOS 编程技术提升到了“道”的高度,在这里,你会跳出某个具体功能的实现技术,来思考更多的设计之道,甚至跳出 OC 和 Cocoa 的范围,来思考软件开发的一些通用问题。NSHipster 是个人最推荐的读物。NSHipster 如此出名,以至于已经有了中文翻译版本:http://nshipster.cn/

Mattt 2009 年毕业于 Carnegie Mellon University,众所周知,这里拥有世界上顶级的计算机专业,或许你认为这是 Mattt 得以成为大牛的原因。然而,看起来 Mattt 是在这里读了 4 年的哲学专业和 2 年的语言学专业。或许,这才是为什么他可以将文章写得如此有哲学感的原因!

Mattt 跳槽似乎也不少,至今已经工作过五个公司,最关键的就是云创业公司 Heroku,我在 云计算的几个概念 IaaS,PaaS 和 SaaS——都是 XaaS 中曾列出过它。目前,Mattt 似乎已经离开 Heroku,来到了 App 开发公司 Panic .

这里有一个 Mattt 去年关于移动互联网的演讲《Mobile is Not Different》 值得一看。 Mattt 还有很多不错的演讲,可以自行搜之。

参考资料

  1. http://nshipster.com/
  2. http://www.objectivesee.com/mattt.thompson.html
  3. https://plus.google.com/+MatttThompson/about
  4. https://github.com/mattt
  5. http://www.touchwonders.com/my-takeaways-from-a-day-with-mattt-thompson/

2 thoughts on “Cocoa 潮人 Mattt Thompson”

Leave a Reply

Your email address will not be published. Required fields are marked *