日期:2014-05-16 浏览次数:20335 次
1.extjs作为一个js类库,采用gpl协议显然是不太合理的。因为只要你的代码继承了一个类,就算你修改了源代码,你的继承类的代码就必须公开:
The following are examples of modifications: Modify Ext JavaScript, Java or CSS source file Extend Ext class or override any Ext functions or methods Modifying an Ext API 来自 extjs open source faq
继承对于OOP来说,是很重要的。看看jquery,支持MIT协议,多么友好。
2.开源社区将不会积极贡献代码、bug、翻译文档等等给extjs,因为你努力贡献给他,他却拿去卖钱了,因为他可以给别人商业授权。--而你,到头来还得向他买许可。因此主要的开发人员是extjs公司自己。你用它的代码,就得按它的规矩来,这没什么好说的。他们觉得这是更好的生存之道,但是对extjs产品来说,得不到开源社区的支持,将来的发展很有挑战。
3.对于国内大部分开发人员来说,我觉得不是很重要。给别人定制开发一套系统,你就把代码给他看吧,注释全部去掉,开发文档也不给他,一般没什么的。
4.假如你的公司开发了一款商业软件,很牛,建议前后台封装好,比如extjs只是用来画界面的,这部分代码,跟后台交互全部用rest的方式,将它开源出去,免费。后台代码再单独销售。这样就没问题了。
5.假如你开发了一款产品,如operamasks之类的,本来主要功能就是做界面的,你可以开源出来,做技术支持挣钱;或者付给extjs授权费,然后向你的客户收钱。--这样的产品基本上不会存在,extjs基本上不需要这样的封装。
6.开发供公司内部使用的系统,不受gpl限制,可以随便使用。就好像你只是学习extjs,开发软件自己用,没有人会限制你。
?