问题描述
您好,我是计算机科学专业的学生,目前在大学,对开发开源软件特别是 ubuntu 非常感兴趣。是否有一站式 go-to 地方可以阅读有关开发 ubuntu 的信息。
例如,我浏览了 Python 的官方教程和文档,我很高兴。我可以编写有用的应用程序。\nUbuntu 或 unity 是否有任何等效项?我尝试下载 alpha 2,但每 5 分钟就会崩溃一次。 IRC 中告诉我,这是由于 Xorg 堆栈发生了一些变化。
现在我什至不能看新的Unity,更不用说帮助开发它了。
任何帮助或指导表示赞赏。
最佳思路
为 Ubuntu 开发
感谢您的关注。只是一些澄清。没有什么比 Ubuntu 软件更好的了(我知道你不是故意的)。所有 Ubuntu 特定的更改也可以在其他发行版中使用。他们的包装工必须把它包装起来。
阿尔法2崩溃
Natty 仍在开发中,Xorg 转换仍在进行中。我建议您开始开发稳定版本。使用 Maverick (10.10)
进行开发工作。这样,您将花费更多的时间来开发应用程序,而不是遇到 alpha bug。
如果您想为 Natty
或 Unity
做出贡献,那么您肯定需要运行 Natty Alphas。
统一开发
如果您想为 Unity 进行开发,那么您需要获取 Natty 并查看源代码。
\\n
bzr branch lp:unity
\\n
checkout 分支中有一个文件,用于解释它的依赖项是什么以及如何构建它。
如果你想让你的代码进入unity maintree,你需要签署Canonical Contributer Agreement
,你不需要每次提交代码时都签署它。一旦够了
Unity Bitesize 错误
参与的最佳方式是修复 Unity 中的小错误。 Jorge Castro 定期发布 Bitesize 摇滚明星名单。这是一个 list of bitesize bugs ,如果您需要额外的帮助,您可能需要在开始之前与 Jorge Castro
(IRC 频道 #omg!ubuntu! 等上的 jcastro – 他也在 Ask Ubuntu chat 中闲逛)交谈。
这是一个 documentation for Getting Involved in Unity Development
Ubuntu 上的开发
正如 Burli 指出的,Quickly
是一个很棒的开发工具。它负责处理很多事情。在 Ubuntu 上使用它非常简单,因为它与 Launchpad、PPA 等 ubuntu 开发平台集成
QUickly 处理样板代码并为您提供模板。就像一个用于包装的。如per LWN article
Released template is ubuntu-project, which automates working
with Ubuntu-compatible code (using Bazaar for version control,
Debian packaging, and Launchpad.net Personal Package Archives (PPA)
for releases).
您还可以在 Ryan Paul 的 this Ars Technica article 上阅读相关内容
选择的语言
据我所知,Python 是最著名的开发选择。我可能是错的,因为许多人也喜欢在 Gtk/C 或 Boost/C++ 上进行开发。
还有其他语言,例如 Vala,您可以使用它来拥有本机应用程序,但拥有更高级的语言。
如果您了解 C#
,则可以使用它来使用 Gtk# for UI 创建应用程序。
次佳思路
这有点相关,我犹豫是否要发布它。
对于学生来说,进入开源开发(并查看您编写的代码出现在 Ubuntu 中)的最简单方法之一是参与 Google Summer of Code 。向现有软件添加新功能是您在学校无法获得的体验,但它将改变您看待编程的方式。学生参与者会被分配一位来自开源项目的导师,他将帮助他们入门并帮助他们解决困难的部分。
另外,你还能得到报酬,而且在你的简历上看起来也很不错。这是很棒的经历。我强烈建议您检查一下。