0

我有一个开源项目,它使用了几个免费的库,其中 FAR 最大的是 Zend Framework。我应该:
1. 使用 Zend 框架发布我的应用程序
2. 仅发布我的应用程序并编写一个简短的教程,介绍如何安装 ZF 以使用我的应用程序
3. 我是否应该同时提供两个选项(这是更多的工作,并且是一个开源不要把面包带到我的桌子上......所以我确实需要一些时间来完成我的日常工作)。

4

4 回答 4

2

取决于“项目”是什么。

如果是应用程序,请捆绑它。

如果是图书馆,不要。

EDIT: To elaborate a bit more:

When making an application, you usually don't want to burden (or rely on) the user with installing and upgrading to the correct library versions. Additionally, if users use different versions of libraries, it'll make it more difficult to solve bugs for your software (e.g. "MyApp 1.0.6 doesn't work with SomeLib 2.3.5 if it was installed via PEAR"). You probably want your environment to be as constant as possible; even different PHP versions are often annoying.

When making a library, otoh, you don't want to cause more side effects than absolutely necessary and want to give all the power to it's user (which in this case is a developer). If your library needs SomeLib 2.3.5, but the app that uses your library needs SomeLib 2.3.7, then your bundling it could cause problems.

Basic point: Users of libraries will test after including them, users of apps won't after installing them.

于 2009-04-06T22:10:06.063 回答
1

让潜在用户去做。

包括一个指向 ZF 的链接就足够了。对用户可能遇到的下载问题负责是完全没有意义的,此外您还要为在其他地方可用的东西支付带宽。与 ZF 保持同步也是一件令人头疼的事情,并且必须每隔几周左右检查一次版本。

根据您的描述,您的应用程序很可能严重依赖 Zend Framework,因此,我建议您向您的用户说明您的软件需要 Zend Framework V XXX 以及其他任何内容,可以从http://下载无论在哪里

为什么要让自己头疼?

于 2009-04-06T20:00:29.823 回答
1

我认为你应该捆绑它,因为你可能让其他人为带宽付费,codeplex 和 sourceforge 很好:) 这也让用户的生活更轻松。您也可以只删除不需要的模块,这会使文件更小。

或者,在我们的应用程序第一次运行时,它会检查所有文件是否存在并从 Zends 站点下载 zend 框架。在第一次运行时,您可以从http://framework.zend.com/releases/ZendFramework-1.7.8/ZendFramework-1.7.8-minimal.zip下载它并使用 PHP 函数将其解压缩并放置在适当的位置文件夹。这将是一个需要一点时间的替代方案,但会大大减少文件大小

于 2009-04-06T20:09:23.263 回答
0

Why not do both?

Then users that don't know what ZF is or don't have it can download the full package.

于 2009-04-07T09:19:29.260 回答