我正在阅读一些开源项目的代码。我看到在其中一个地方代码写得不好而且可以稍微改一点以增加可读性/设计/其他任何改进代码的东西,并且更容易使用这段代码。
是否有报告此类更改的常用方法?我知道你可以成为贡献者,制作补丁,提出建议。但如果你不想把太多的时间花在这个项目上,你只需要下载,阅读,考虑改变,写下来,作为建议发布在某个地方。
实际上我更愿意发布所有人都可以看到的建议,这就像学习社区一样,但只是变得灵活。
答案 0 :(得分:3)
您可以将带有评论的片段发布到项目论坛,错误跟踪器或邮件列表。每个项目以不同的方式管理通信和报告。示例:我听说Mozilla开发人员倾向于忽略对Bugzilla的评论,所以这可能不是评论Firefox更改的好地方。
如果你想在它上面写一篇很长的文章,你可能最好不要写博客,然后链接到那篇文章。我会小心你的语气。出于好的理由,事情可能就是这样。尝试了解他们在项目中的位置和日程安排。也许会问为什么会这样,并明确说明问题可能是什么以及谁可能受到影响。
为变更制作补丁被认为是一种很好的做法,并鼓励人们接受您的意见。如果您没有积极地为项目创建补丁,那么通常不会像这样快速地修改补丁,但它可能会为您提供更多影响力。我个人认为这是件好事。它在提交方面将小麦与谷壳分开,人们需要坚持不懈。
答案 1 :(得分:0)
除非您为修复某个特定项目所做的努力能够实现某种极少的重新审视,否则只能在那里做出贡献。需要一些时间来调整您的更改,查看您的补丁,验证,集成等。如果您花费的时间太少,您的补丁更有可能质量低,解决已经讨论过的问题或仅仅是一个误解概念。
因此,大多数免费工作的开发人员冒着宝贵的时间冒险尝试查看补丁,最终完全重写补丁并浪费时间投入更重要的问题。但如果你花更多的时间工作,那么他们的风险会降低。如何确定你工作多少?那么,联系开发人员所需的努力将是你总工作量的一小部分,因此你会发现在报告问题时克服某种官僚主义并不成问题。
最快的方法是:
太复杂了?哈!要为OpenJDK项目做出贡献,您必须签署协议并将其发送给Sun(通过常规邮件或传真)。好吧,那是“复杂”的含义!并在bugzilla中注册,激活您的帐户并打开补丁问题,不复杂。
答案 2 :(得分:0)
首先,在荷兰,有一种说法是这样的:
“没有人要求的建议很少受到赞赏”
如果您想提供帮助,请确保您提供帮助。
不要仅仅通过指出其他人的错误来试图看起来聪明,而不是进一步帮助。这不会对项目有利,它会使开发人员失去动力,而且会让你看起来很糟糕。 此外,软件的作者很可能更了解威胁项目的问题而不是你。
好示例:
“我看到你在代码中使用了技巧x和y。我对z有很好的经验。你有没有考虑过使用它?”
好示例:
“嘿,我每天都非常高兴地使用这个软件。我注意到加载文件有点慢。我检查了代码,我建议在迭代之间缓存x和y的结果。不幸的是我不喜欢我有时间制作一个补丁,所以我在你的bugtracker中报告了我的建议问题。“
错误示例:
“伙计,我只是在查看你的代码。伙计,这真是一团糟。任何菜鸟都知道你应该使用有用的变量名称。难怪软件都不稳定。”
简而言之,请确保您的反馈是积极的。