当前位置:  开发笔记 > 编程语言 > 正文

FireFox如何运作?源代码走过?

如何解决《FireFox如何运作?源代码走过?》经验,为你挑选了3个好方法。

我想了解FireFox如何在幕后工作.我想了解源代码和不同的组件,但代码库相当大,我不知道从哪里开始.

我想知道是否存在某种类型的步行,但任何人都可以从firefox团队或社区外部编写.

我看了一下:https://developer.mozilla.org/En 但我没有看到任何尖叫"从这里开始".我只是试图通过[自我]教育原因来审查他们的代码库.



1> Jesse Buchan..:

多伦多的塞内卡学院(Seneca College)有一个针对这一目标的计划 - 初学者到Mozilla开发.

看看其中的一些链接:

真实世界的Mozilla

2008年秋季每周时间表

一些实验室,如果你想直接潜入:

实验室:学习协作开发(2008年秋季)

实验室:构建开源项目(2008年秋季)

实验室:真实世界Mozilla - 源代码阅读

实验室:使用补丁

实验室:深入了解Mozilla - 调试Mozilla

实验室:Thunderbird Bug Fix

实验:修改浏览器

实验:使用扩展程序修改Firefox

实验室:真实世界Mozilla - 第一个XPCOM组件

实验室:真实世界Mozilla - 为第一个XPCOM组件添加chrome

如果您需要任何帮助,请在irc.mozilla.org上使用IRC:#seneca.不要担心,如果你不是(塞内卡)学生,世界上很多人(来自塞内卡的人,来自Mozilla的人和其他人)都在这个渠道,目的是教育开发人员一般的开源和特别是Mozilla项目.

祝好运!



2> Jason S..:

这是一个自上而下的答案(其他大多数是自下而上):

Firefox是一个XUL应用程序(另见:XUL); XUL是XML的一种变体,用于描述由渲染器解释的GUI,与在浏览器中呈现HTML的方式非常相似,但XUL包括浏览器的菜单,按钮,状态栏,键盘快捷键等.它非常整洁; 我已经能够在XUL中比其他框架更快地组装一些简单的GUI应用程序(并且它与平台无关!).

如果您查看Firefox应用程序目录(无论您在系统上安装它的哪个位置),您都会看到带有一堆.jar文件的"chrome"目录.这些只是具有特定结构(包括清单)的.zip文件,您可以自己查看它们.

很多Firefox浏览器实际上都是XUL + Javascript.它确实利用了许多用C++编写的低级库,并且可以通过XPCOM访问Javascript,但是如果你想了解(和修改)更高级别的行为,那么XUL + Javascript部分可能就是起点.

编辑:ps这里是XUL的一些教程/参考:1 2以及O'Reilly的书

编辑:XUL文档与HTML文档非常相似(只有更多!)与用户+事件的交互方式.有一个用于动态修改 XUL 的文档模型,并且有一些事件模型具有事件侦听器.两者都像HTML + DOM +它的事件模型,但有更丰富的内置对象/接口/事件/等.事件处理程序是特定类型的接口,可以通过Javascript对象实现(在XUL中声明onclick="blah()",或通过Javascript调用动态添加addEventListener()- 两者与Firefox中的HTML事件完全相同)或C++或其他可以使用适当的接口实现XPCOM对象的语言.



3> Yuliy..:

一种开始的方法是查看Firefox中最近修复的一些错误(参见Bugzilla)并查看它们是如何修复的.

那就是说.Firefox代码库非常庞大,很可能没有人理解所有内容,所以最好先从一小部分开始(比如收藏夹),然后尝试找一下它的代码并查看它是如何实现的作品.同样,已解决的错误及其影响的文件将是识别一些相关代码的好方法.

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有