开源技术选型手册
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

经过近半年的努力,也经历了很多先前所没有预料到的困难,《开源技术选型手册》这本书终于告一段落。虽然仍然有诸多的缺憾,但我们把它们称之为“遗憾之美”,就像软件开发中的建模一样,我们相信目前这个版本是可用的,而将来如果有机会会加以完善。

版式定义

针对本书面向中高端技术人员选型手册的定位,我们将本书的版式进行了严格统一,在每一个篇章开始部分你会先看到一个关于该领域技术的综述,从中可以了解到该领域的过去、现在和未来;然后在对该领域单项技术的探讨中,你会看到该技术的活跃度,了解到它在社区中是否很受欢迎,文档是否齐全等;通过简介和上手指南,你可以简单了解到该技术是什么,主要解决什么问题,使用是否方便等;参考资料一般包括网络和图书两部分,你可以了解到目前社区对该技术的支持;最后的社区观点是使用者对该技术的评价,有的评论来自于社区大牛,有的来自一线开发人员,它们可以作为你技术选型的有力参考。

开源共享

从2007年开始Java就开始了自己的开源之路,而且在2008年的JavaOne大会前夕,Sun公司表示他们正在为Java的彻底开源做最后努力;在不久前,Sun还成功完成了对MySQL数据库的收购,而且也表示会继续将MySQL开源;在Java开源技术领域里,IBM也绝对是一个不能被忽略的角色,在很多开源软件(如Eclipse等)里都可以看到它的痕迹,微软现在允许并支持其他语言基于CLR平台进行开发,尤其是多用于Web开发的动态语言,如Ruby和Python等,另外微软非官方的开源社区也非常活跃,许多知名的Java社区开源软件都有对应的.NET产品,如NHibernate、NUnit等。当然不能排除上述这些都是大公司的商业策略,但我更倾向于将它们看成是开源社区多年斗争而取得的胜利。

在这些开源软件的开发者中,也不乏中国技术人员的名字,但也应该清醒地认识到我们的很多参与还是在外围打转。在2008年1月份,Linux内核的创始人Linus Torvalds在接受媒体采访时表示,“虽然亚洲国家有大量的互联网应用,并拥有许多教育和培训机构,但他们并没有为Linux内核和其他开源项目做出太多贡献。”近期社区有人说技术人现在也开始玩“政治”了,由于某种原因PHP官方网站上的中文文档全部被删除,一时激起民愤无数,但据内部人士透露,真实的原因是这些文档常年没有更新,已经无法跟上PHP新版本的需要,官方才决定删除……往事总是能让人警醒,希望在将来我们的开发人员不仅能积极参与技术文档的翻译,还能够参与到核心的技术研发中去。路漫漫其修远兮,激励我们艰难地去求索!

开放合作

曾几何时,在制造业我们习惯了看到别人好的东西,迅速拿过来模仿,然后大规模地复制,将老师“扼杀于摇篮”;曾几何时,在软件业我们习惯了合理地利用开源协议,心安理得地进行二次开发,然后紧紧地将“劳动成果”捂住并申请专利,将开源在自己这儿止步。这种情况应该不是从鲁迅先生当年提出“拿来主义”开始的,我在想如果鲁迅先生生活在今天,而且恰好是一个软件开发人员的话,他对开源会仅仅是“拿来主义”和“捂住主义”吗?他会不会举起开源的大旗,号召大家都来使用开源软件,但更要积极地参与开源软件的核心研发,输出自己的智慧呢?

合作才是永远利己的绝佳策略。在开源软件领域,我们长久以来奉行的是“拿来主义”,我想等我们意识到“输出主义”更能够创造价值,更有利于自己和整个社区的发展时,那就是国内开源技术领域希望的春天!

致谢

这本书之所以能够顺利完成,和每一位参与撰写的专家的辛苦劳动密不可分,这里向他们表示深深的感谢,感谢他们开源共享和开放合作的精神;感谢InfoQ中文站的编辑李剑、郭晓刚、胡健、高昂和张凯峰等,他们不仅参与了相关内容章节的撰写,而且在本书遇到困难时给予我很大的精神鼓励;感谢本书责任编辑Lisa(杨绣国)的耐心与勇气,没有她在我身后坚持不懈的催促,就没有这本书的及时面市;感谢好友孟岩和方舟在内容和版式上必要的指导;感谢周筠老师在后勤上的有力保障;感谢张海峰在文案、市场方面的有效协调;感谢那些我到现在还不知道名字的审校人员。没有大家的努力,就没有本书的出版!

再次感谢我的父母和兄弟姐妹,虽然远在家乡,但他们永远是我的精神港湾和前进动力!最后特别感谢我的老婆吴志民同学,在本书紧要的制作过程中,有多少个夜晚我无法给她安静的睡眠,她也很好地忍受了我的那么多无名之火,并在我偷懒的时候不嫌啰嗦地提醒我早日完稿。

霍泰稳

2008年5月于广西阳朔