EasyJForum 为什么不开源?
EasyJForum 的开发者认为:成熟的(非实验性的)软件产品可以免费,但不应该开源(开源与自由软件不同),因为:
1、用户需要的只是使用,并不真正需要源代码。笔者做软件开发多年,也使用了很多自由软件进行开发,但很少会去研究某一软件的源代码,因为要想读懂任一软件的源代码都不是一件轻松的事情,而时间是宝贵的 - 使用成熟的软件产品的目的,不正是为了节省时间吗?想对软件做一点改动或者增加一点功能?——把这件事情交给开发者来做总是最节省时间和金钱的。
EasyJForum 的开发者并不打算从这个论坛软件中获取多少利益,但通过为高端用户提供定制服务,同时为自己所付出的时间获取基本的价值认可,并持续不断地改进和完善产品,这是合理的。EasyJForum 将会是一个生命力长久的软件产品。
2、开源会带来很多问题,比如版本混乱,安全性问题等等。任何一个软件要想作到绝对安全是不可能的,而开源的软件更容易遭到利用和攻击,这是显然的。此外,由开源导致的版本混乱也不利于软件的发展,如果你未经仔细考虑就自己修改了某个开源软件的一些地方,以后在升级的时候就会遭遇困难。
3、持续发展的问题。很多开源软件发展到一定阶段就停滞了,然后就消失了,这里面有经济的因素,也有竞争、版本混乱和人的因素。如果缺乏持久的动力,开源软件的持续发展当然是有问题的。
很多人之所以喜欢开源软件其实只是一种心理感觉,认为有了源代码,以后即使出了问题也不担心,这种想法也不无道理。因此,EasyJForum 在发布之初就采取了半开放的方式:我们的 java 程序并没有经过严格的加密,也就是说,你可以使用通用的反编译工具对 ejforum.jar 包进行反编译,从而获得全部的源代码,虽然难读一点,但如果你要排错或做一点小的改动是不难的。
当然,如果使用中发现问题,最好还是向我们报告,我们会及时修正bug并不断完善,这样也有利于你以后升级并获得最新的功能和改进。
总之,EasyJForum 的发展离不开大家的反馈和帮助,谢谢大家!