4

这是一个名为Simon Basic Edition的小型应用程序,它在 Apple Apps Store的 Games > Kids 中排名前 100

第一个版本非常基础,但我在 1.1 中做了很多改进。一周前提交给 iTunes Connect。

基于相同的来源,我编写了另一个西蒙卡片版,它也在等待 App Store 的批准。应该有另一个版本与一位优秀和著名的艺术家共同开发。

我正在寻找有关iPhone 应用程序的开源优缺点的指导,以及发布此代码(许可证、存储库)的更实际方面由于我也在编写其他应用程序,所以我想知道作为多个应用程序的策略是否有意义。

4

3 回答 3

4

我在 BSD 许可下开源了我的第一个 iPhone 应用程序,并且一点也不后悔这个决定。我写它是为了自学为 iPhone 开发的细节,并认为我会发布代码来帮助其他人做同样的事情。我什至写了几篇关于我在开发这个应用程序中学到的东西的文章。我还让这个应用程序免费和开源,因为它依赖于纳税人资助的科学资源,我觉得对与此类设施相关的任何东西收费是错误的。

您将从中看到的一个好处是您网站的流量。首先,拥有一个免费的应用程序将为您带来大量下载和大量好奇用户的访问。自 App Store 推出以来,我的应用程序已被下载超过 500,000 次。其次,有很多 iPhone 开发者渴望获得信息(而且这个数字每天都在增长)。源代码已被下载数万次,我关于开发应用程序的文章已被超过 60,000 名独立访问者阅读。

从长远来看,该网站流量以及从各个地方指向您网站的链接将通过提供曝光率和显着提高您的 Google 页面排名来帮助您。如果我没有建立起我对开源应用程序所做的那种认可,我收费的第二个应用程序就不会做得那么好。

但是,不要期望对您的开源应用程序有重大贡献。从我看到的数以万计的代码下载中,只有三个人贡献了任何东西。除了法语本地化之外,这些贡献只是小错误修正。

至于打开源代码的实际问题,我只是在我的网站上托管最新版本的代码压缩包并没有太大问题。没有人抱怨缺少它的存储库。许可证方面,我推荐 BSD 风格的许可证,因为 iPhone 上的 GPL 和 LGPL 许可证存在问题,而且我认为 GPL 和 LGPL 许可证会阻碍许多开源项目(正如 Daniel Jalkut在这里阐述的那样)。

于 2009-11-08T03:47:22.797 回答
2

为了开源而开源是纯粹的情感决定。在现实世界中,开源是一种策略,应谨慎使用,并充分考虑其对目标的影响。主要问题是“我将如何从开源代码中受益?”。

所以在编写这些应用程序时,你必须弄清楚你的目标是什么。您是想通过它们获利还是为了娱乐和学习而编写它们?

如果答案是有趣和学习,你可以开源它们,看看其他人会从你的想法中得到什么。从社区可以学到很多东西;在实际尝试建立该社区时,您将获得宝贵的经验。(“如果你构建它,他们就会来”在现代社会不是一个有效的原则,在软件行业也是如此。仅仅开源你的代码并不一定意味着任何人都会感兴趣;你必须积极地构建你的各种方式的社区)

如果您试图通过这些应用获利,那么只有在应用是一种商品可以为您的获利渠道带来流量(例如游戏内礼品购买、激励性广告、撰写电子书/博客文章/有关经验的文章)。如果应用程序是货币化渠道的主要引擎,那么开源它们就是直接邀请其他人蚕食你的利润。

于 2009-11-07T20:56:59.823 回答
0

如果你想开源它,并且你有时间,你可能想写一本关于使用 Mono 为 iPhone 编写可扩展框架的小型电子书,因为这可能会使社区受益,并且可能会给如果你的简历需要更多,你可以指出一些相当重要的东西。

如果您将其开源,您将编写与使用您自己的框架编写的应用程序竞争的应用程序,并且您希望查看许可证以了解人们如何修改您的代码。我认为任何过于限制性的东西都会有问题,但是,如果他们使用框架并添加到它,那么可能需要使未修改的库可用,但他们的修改可以保密。对于商业应用程序,这将是最好的,但是,您可能会减少提交错误修复的人。

您可能希望查看两层版本,因此对于少数人来说,他们可以拥有商业许可证,如果他们免费使用它,则限制更多。

我想问题是,您希望社区添加多少内容,以及您希望将多少内容用于商业目的,以及人们添加的内容。

但是,我认为这本电子书可能非常有用,尤其是如果您将其作为 wiki 进行,其他人可以继续添加它,因此它可能会更有益。

于 2009-11-07T20:32:30.183 回答