开源项目越来越多的进入我们的视线,然而,关于开源项目的质量问题却无人问津。前一阵子,我和一位同时讨论关于开源项目质量安全的问题。他支持使用开源项目的原因很简单,开源项目的参与者都是“高手”。在他心目中何所谓高手,我无从可知,但是这种观点的支持者却大有人在。在google上以“开源项目”和“质量保障”为关键字搜索,所得倒地链接满是溢美之辞,而真正有目的的提出疑问的却鲜有其人。赞美和疑问如此不成比例,我觉得这是开源项目给我们敲响的质量警钟。
赞美之声大概集中于以下几个方面:1 参与者都是依自己的兴趣选择项目。2 测试工作由广大志愿者分担。3 参与者的技术水平较高。更有甚者只是随众呼喊,从未想过开源项目的质量问题。我对以上几点提出质疑。1 兴趣可以保证参与者的工作态度和工作效率,然而工作时间和所投入的精力无法保障。很难想象劳累了一天的程序员仍然有足够的时间和精力投入到开源项目中来。2 志愿者的测试工作是自发的,始终处于无计划状态。项目的主要功能可能得到反复测试,而一些基础的或辅助性的功能(子模块)没有得到充分的测试而留下隐患。由于测试者的理解不同也有可能提供有误的测试结果。3 开源项目的参与者的技术水平没有我们想象的那么高,并且个人技术也无法保障软件质量。
由此,我个人认为:在引用开源项目成果时需慎而又慎。