【开源访谈】ThinkPHP 作者刘晨访谈实录

虫虫 发布于 2012/07/25 11:48
阅读 20K+
收藏 21

关于开源访谈

开源访谈是开源中国推出的一系列针对国内优秀开源软件作者的访谈,以文字的方式记录并传播。我们希望开源访谈能全面的展现国内开源软件、开源软件作者的现状,着实推动国内开源软件的应用与发展。

【作者简介】

刘晨

刘晨,国内知名ThinkPHP开源框架创始人和领导者,现任上海顶想信息科技有限公司CEO。12年开发和团队管理经验,从事过教育、网站、政府、地产相关领域的系统和项目开发、管理和实施。主要研究领域包括Web应用架构和开发,用户体验设计及网站运营。致力于国内的开源事业,追求大道至简的开发和设计理念。

【软件简介】

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,众多的典型案例确保可以稳定用于商业以及门户级的开发。

【访谈实录】

1.    你能否先介绍一下你自己,包括技术背景、工作经历、学习经历
我叫刘晨,99年毕业于桂林电子工业学院,毕业后在深圳工作了8年,先后从事过教育、网站、政府、地产相关领域的系统和项目开发、管理和实施。主要技术领域涉及Java、Flash、FMS、PHP、Flex,并且对FMS和PHP技术方面有较为深入的研究。2004年创建了自己的博客『世纪流年BLOG』,写下了FMS的阅读笔记系列,为国内提供了最早的中文FMS文档和学习资料。2006年创办了开源PHP框架ThinkPHP,并成为一名自由职业者,专注把以往的项目积累沉淀下来,致力于国内PHP的发展工作。一直以来,也为网友提供学习心得和技术资料,并希望为国内的开源事业做出自己的一份贡献。07年下半年来上海发展,一年以后成立了上海顶想信息科技有限公司。开始正式运营ThinkPHP官方的社区和团队,以及相关的商业服务支撑。作为ThinkPHP的创始人和领导者,近几年来主要专注于PHP框架的技术架构和平台研究。

2.    当初为什么要创办ThinkPHP这个框架呢?
这个说起来也是无心插柳柳成荫了 05年的时候因为工作关系我在深圳市委做项目用的是J2EE 那个时候大概20多人的团队做了一年,项目完成后,我觉得很多功能用PHP来实现应该会更简单,所以诞生了ThinkPHP框架的第一版,因为那个时候有自己的个人博客,所以主要在博客的用户群里面交流分享。后来完善ThinkPHP框架的初衷,一半是兴趣一半是用于自己的一些项目需要。不断的完善改进后用户群开始增大。ThinkPHP发布至今简单和快速开发的原则一直没有变化。

3.    为什么叫ThinkPHP这个名字呢?
其实开始发布的时候不叫ThinkPHP,06年初发布的时候原名FCS,2007年正式更名为ThinkPHP,是因为我越来越觉得开发其实更关键的还是编程思想,也就是多“Think”,而我们的技术平台是php语言,所以自然就命名为ThinkPHP了,这个名称在谷歌的项目中也没有冲突,就一直用到现在。

4.    跟《Think In Java》有关系吗?有一本Java的经典教程叫做《Think In Java》。
对的,可能也有点关系吧,而且ThinkPHP开始的时候也从Struts借鉴了很多思想。因此我认为ThinkPHP其实和java是有一点渊源的,呵呵。

5.    那你认为相对别的 PHP 框架来讲,ThinkPHP有什么优势和特点?比如CodeIgniter,CakePHP等等。
首先,我认为ThinkPHP(TP)提供了一个MVC的完整解决方案,包括ORM和模板引擎等,这部分一般的框架不会花费大力气自己开发,大多数是采用第三方的。并且,TP在借鉴国外优秀思想的同时,也增加了很多的原创功能,力求打造PHP开发的最佳实践框架。时至今日,ThinkPHP无论在性能、功能和扩展方面都有很大的优势。我们一直努力给开发人员打造更好的开发用户体验。

6.    有跟其他框架做过性能上的对比吗?
有的,我们的客户也把我们的框架和主流的php框架进行过对比测试,但是这些数据涉及到不同的环境和数据,直接说性能数据意义不大,但是对比的结果ThinkPHP大多还是非常满意的,对比的框架包括zend,yii,ci等等。早年,ThinkPHP框架一直致力于框架的性能优化,在提升到一定程度后,我们更加专注于用户的开发体验,比如用最少的代码完成相同的功能,提供更方便的实现、更多的扩展功能等等。

7.    ThinkPHP目前怎么推广?有没有做付费的推广?
ThinkPHP主要还是靠官网运营和社区口碑推广为主,我们没有进行更多的商业推广。除了做过一些活动之外,我们没有做过任何的付费商业推广。一个好的产品自身就应该是一个无声的推广,其他的则是机会了。如果有机会,我们更加倾向于合作推广的模式。

8.    ThinkPHP这个产品在实际项目中的应用情况如何?除了你们以外,有没有其他知名或者大型站点用这个框架?
经过6年多的积累,我们还是沉淀了不少的实际项目和客户的。从早年的56群组和联想问吧,到之后的中青旅开心遨游、宝矿力水特、星巴克、美特斯邦威的邦购商城、TCL的在线商城、新浪微坛,澳星的移民和留学门户等等,各地的门户和社区也大量使用了ThinkPHP进行开发,其实据我们了解,包括华为腾讯在内的企业内部都有使用ThinkPHP开发过。另外,ThinkPHP的SAE引擎在SAE平台的框架下载一直保持领先。公司的项目主要集中在功能性为主的web应用,尤其是在门户、社区和电商领域的案例比较多。

9.    刚才你例举的那些项目是你们公司做的还是其他人用你们的框架做的?
有些是公司开发的,有些是第三方采用ThinkPHP开发的,因为ThinkPHP采用的是Apache2开源协议,而且是免费使用的。

10.   目前你们公司参与开发/维护ThinkPHP的人员有多少?
是这样的,ThinkPHP的开发模式还是社区化参与贡献的方式,公司员工不会直接参与框架开发,原因很简单,框架这块暂时还没有任何的直接盈利,而且还要付出更多的技术支持。框架的核心这块,我还是一直在参与,社区团队的其他成员以贡献和扩展开发为主。公司的人员会在文档工作方面和新版发布的时候阶段性的介入一些。顶想公司更多的是作为ThinkPHP的后盾和发展支持。

11.    你是否还在做一线的开发工作?
基本上,我目前不参与项目开发工作,框架的核心开发和公司的平台架构工作我会参与。更多的还是把握ThinkPHP和公司的发展方向和战略。

12.    我看ThinkPHP Google Code 上面 member 只有两个人,社区参与是怎么参与呢?
Google code的贡献者其实有很多但是有一部分人是阶段性的参与,目前活跃的提交用户应该有5人左右。ThinkPHP社区团队我们有专门的群进行交流和探讨。但社区的工作不是强制性的,以自觉为主。尤其是文档工作,目前还是我主要参与。我觉得大家都是因为认同ThinkPHP才走到一起交流和分享、贡献的。我们没有把更多的精力放到推广宣传上,也是想踏踏实实的把东西做好。技术人员还是比较实在的,我们觉得不需要过度的包装。

13.    不是你们公司的贡献者有没有其他公司支持?还是纯兴趣爱好?
目前社区团队成员都是个人名义加入的,没有公司的直接支持。即便是有公司的员工,也是业余时间参与贡献的。事实上大部分的核心代码工作,也是我在业余时间完成的。对我来说也是一种爱好,公司则是一种责任。

14.    那你们公司目前是提供基于ThinkPHP的项目开发服务是吗?
对的,我们帮助一些有需要的客户提供定制开发服务,也在沉淀自己的一些产品。

15.    其他公司用ThinkPHP是否有给你们付费过?包括咨询服务等等。
没有,ThinkPHP的开源协议是对商业友好的,也无需付费。虽然有计划推出商业支持和授权服务,但还没明确,而且也不会和现有协议冲突。完善的服务体系应该是将来会走的一个方向。

16.    ThinkPHP下面的发展,你们是怎么打算的?也包括你们公司的发展方向吧。
我们今年的用户增长还是比较显著的 3.0版本发布至今 3个月已经超过10w的下载量,我想ThinkPHP的发展方向也就是确保ThinkPHP的不断完善下,提供一些额外的增值服务体系或者产品,包括培训,授权,技术支持。不过从长期发展的角度来说我们还是更希望提供一个更方便的开发平台产品,介于框架和应用的中间平台。

17.    SaaS? 现在云计算很流行,你们也许可以朝这个方向考虑一下。
SaaS的概念其实现在不太流行了,呵呵对的云是流行的趋势了。我们觉得在框架到应用的中间还有很多的空间可以挖掘。

18.    期待你们的产品。下面来谈谈开源的话题。能否简单讲讲你对开源的理解以及国内开源现状的评价?
我理解的开源还是应该按照不同的开源协议来的,而不是简单的代码开源,国内开源我觉得多数用户还是缺乏必要的理解,经常会把开源和免费划等号,而且索取远多于贡献,因此在这样的生态下,国内的开源需要坚持、再坚持,否则肯定熬不过残酷的现实,哈哈~ 国内的开源社区和用户的参与贡献的力度远远不能和国外比较所以导致开源作者非常惨淡。要么就是找到好的商业模式(可能会导致开源的变味),要么就得不断坚持直到更多的用户认可。所以我没有把开源框架和公司运作绑定的太紧密,公司的意义是让用户觉得我们的框架背后有公司在支撑,不是一个个人框架。实际上,国内做的好的开源都是个人(可能也是因为很少公司愿意去做开源产品吧),但是用户又不太愿意相信个人开源产品。

19.    国内的公司似乎没有什么动力去做开源,而国外的很多大公司愿意让全职员工去做开源的产品。
首先是前面我提到的开源的生态,其次我觉得是企业的短视行为,太重近期利益。开源的东西是给前人种树,后人乘凉的。

20.    你有没有什么意见或者建议给 PHP 初学者?
建议PHP初学者还是要学好扎实的基础知识,学好编程思想,对将来的发展有很大帮助。

21.    能否给开源中国提一些意见和建议?
我觉得开源中国目前在我看来已经做的很好了,提供了国内开源爱好者了解和学习开源产品的途径和交流的社区,而且氛围也很不错,以后就是怎么在开源作者、开发人员和企业(或者组织)之间搭建好一个桥梁和平台,通过开源互助共赢了。

加载中
1
我不叫大脸猫
我不叫大脸猫
C++之父曾经说过世界上只有两种语言,一种是整天被人骂的,一种是没人用的,php框架也只有两种,一种是整天被人喷的,一种是自娱自乐的
0
justintung
justintung
低效率开发框架
小蜜锋
小蜜锋
感觉开发效率挺高的!
幻影浪子
幻影浪子
亲,你开源个高效率的呗
Crazy罗小杰
Crazy罗小杰
能详细点吗?亲,你是枪手吗?
mahone
mahone
何处此言?详细说下。。。不过本人没用过thinkphp。。。
0
w
whtoo
可以试下 yaf 在PHP手册 的其他扩展中 应该可以查到
0
Evila
Evila

引用来自“justintung”的答案

低效率开发框架
请问如何见得是低效率??
夜神的黎曼几何
夜神的黎曼几何
开发效率不低,运行效率还行
0
小白小霸王
小白小霸王
这个像infoq,不过没有视频,没有pdf,没有mp3
0
walden
walden
这帖