1
12
如果这是一个预先存在的,你需要阅读他们的开发文档(如果有的话),学习如何使用他们的版本控制系统,并拥有必要的工具来构建代码和运行它。 如果你拥有所有这些,以及代码/语言的知识,那么你只需要热情和一些空闲时间:) |
2
4
我不会将它们定义为您正在寻找的意义上的裸需求。如果你是一个程序员,你已经有了(希望!)自我学习和解决问题的特点,可能会让你成为一名程序员。 你永远不会真正了解“一切”,而且很可能在任何地方都会学到新东西。见鬼,我现在的工作从来没有听过“模型视图控制器”这个词,但很快就学会了这个概念。 你的例子,工具链和binutils,不是复杂的概念,一篇简单的wiki文章就足够了。 |
3
2
我建议下载所有源代码,并确保您可以自己构建它作为第一步。 在尝试进行任何更改之前,请尝试确保您熟悉总体设计和文档,以确保在第一次更改时不会无意中破坏任何内容! 所使用的术语可能取决于所使用的技术,例如,用C++编写的、在Linux上运行的开源项目,将很可能与在Windows上运行的C./.NET应用程序构建有很大的不同。 |
4
2
这取决于你能投入多少。如果您只想为一个特性做出贡献,只需获取构建项目的工具、更改文件的编辑器以及足够的文档读取来为您的特性找到注入点。如果你能找到人帮你开始工作,那就相当容易了。 如果您要致力于这个项目,我建议您学习构建工具、项目历史和目标。另外,当前作者如何解决这些问题,他们对项目的看法也会有所帮助。 |
5
1
我想说,无论你在做什么项目,都必须能够理解所有的架构、工具和技术。 但是,您随后尝试将此问题设置为应用于任何开放源代码项目的通用问题。你自己回答的,不是吗?
|
6
1
我认为这完全取决于项目。大多数设置良好的软件项目将指定:
你在做什么?你确定他们没有提供这些信息吗? |
7
1
这取决于你在这个项目上的“工作”资格。 这里的大多数答案都表明您正在编码(并且您的问题暗示了这一方向),但是您可以做一些事情来为项目做出贡献——比如测试和文档——这可以在不知道程序是如何编写的情况下完成。 现在,对于它的编码方面——如果它是一个较小的项目,我将尝试找出其他贡献者的动机和项目的宏伟计划/目标是什么。就像任何一个团队一样,进入并试图把事情的方向与其他团队计划的方向完全不同,即使你有好的意图,也可能导致各种各样的问题。 (然后还有其他人说的技术建议……源代码管理、构建系统、项目架构、使用的工具包等) |
8
0
如你所说,这取决于项目。 你必须知道如何使用这种语言,你必须熟悉他们使用的源代码控制系统(通常是颠覆性的)。您必须能够构建(通常是Ant,通常是Maven)。 |