我是一名vc ++开发人员(但与Qt一样),他希望通过贡献和阅读代码来学习开源项目.我使用windows作为主要开发平台.哪个项目适合我开始?
是铬一个好的选择吗?
hannson.. 36
铬是一个不错的选择吗?
我相信是的,是的!
源代码是IMO编写得非常好,它是一个非常活跃的项目,需要做很多工作,并且在很多方面也很有趣.显然,浏览器本身只是特定库的组合,因此Chromium为您提供了一个很好的入口,可以更好地了解它们,并希望显而易见.但最重要的是,它拥有一个庞大的社区,由一家大公司赞助,并在其核心团队中拥有许多才华横溢的软件工程师.
想学习如何集成 V8 javascript引擎?
想通过Skia了解屏幕上的渲染/绘图?
想学习如何集成Webkit?
想要了解有关HTTP协议/网络堆栈的更多信息?
想学习如何沙盒应用程序?
想了解多进程架构和IPC?
有很多事情要做,所以你甚至可以在学习你不知道的东西的同时贡献你所知道的东西.
我想补充一下; 要加入的开源项目的选择应基于:
你的专业水平
你想学什么
代码质量
项目成熟度
代码复杂性(不要与可读性混淆)
我只是在这里为自己说话,但我喜欢从过于复杂的项目(文件系统,RDBM等)中学到更多东西,我发现这些项目由于压倒性的复杂性而不那么有价值.尽量不要一次学习所有东西,采取较小的步骤,完成你的开始,而不是采取更大的步骤,放弃.
只是我的2c - YMMV
如果你想尝试Chromium,这里有设计文件的链接:
浏览源代码非常详细地解释了如何构建项目树结构.
该工程设计文件解释架构,引擎盖和未来的工作在大多数
在用户体验设计文档到触摸用户都提供洞察,这是行为和外观.
Tech Talk视频非常有助于理解一些关键的工程问题和决策,即使您不打算加入铬项目.
上面的链接都来自Chromium开发人员文档,其中可以找到更多详细信息.
无论如何,祝你找到符合你需求的项目!
铬是一个不错的选择吗?
我相信是的,是的!
源代码是IMO编写得非常好,它是一个非常活跃的项目,需要做很多工作,并且在很多方面也很有趣.显然,浏览器本身只是特定库的组合,因此Chromium为您提供了一个很好的入口,可以更好地了解它们,并希望显而易见.但最重要的是,它拥有一个庞大的社区,由一家大公司赞助,并在其核心团队中拥有许多才华横溢的软件工程师.
想学习如何集成 V8 javascript引擎?
想通过Skia了解屏幕上的渲染/绘图?
想学习如何集成Webkit?
想要了解有关HTTP协议/网络堆栈的更多信息?
想学习如何沙盒应用程序?
想了解多进程架构和IPC?
有很多事情要做,所以你甚至可以在学习你不知道的东西的同时贡献你所知道的东西.
我想补充一下; 要加入的开源项目的选择应基于:
你的专业水平
你想学什么
代码质量
项目成熟度
代码复杂性(不要与可读性混淆)
我只是在这里为自己说话,但我喜欢从过于复杂的项目(文件系统,RDBM等)中学到更多东西,我发现这些项目由于压倒性的复杂性而不那么有价值.尽量不要一次学习所有东西,采取较小的步骤,完成你的开始,而不是采取更大的步骤,放弃.
只是我的2c - YMMV
如果你想尝试Chromium,这里有设计文件的链接:
浏览源代码非常详细地解释了如何构建项目树结构.
该工程设计文件解释架构,引擎盖和未来的工作在大多数
在用户体验设计文档到触摸用户都提供洞察,这是行为和外观.
Tech Talk视频非常有助于理解一些关键的工程问题和决策,即使您不打算加入铬项目.
上面的链接都来自Chromium开发人员文档,其中可以找到更多详细信息.
无论如何,祝你找到符合你需求的项目!
参与Qt Creator项目.
KDE在C++/Qt中有很多代码.这是一个开源社区的一个很好的例子......他们的SVN存储库很快将有7位数的提交号码(http://websvn.kde.org/).
谷歌有很多开源的C++项目.具体来说,perftools(替换malloc,堆/ CPU分析器)需要相当多的Windows和x64专业知识.
http://code.google.com/hosting/projects.html