저는 CS 대학원생이며 모질라 파이어 폭스 웹 브라우저 개발에 많은 시간을 할애하고 싶습니다. HTML 렌더러, 자바 스크립트 엔진 등을 기고하고 싶습니다.하지만 파서 또는 이와 유사한 것을 작성하는 데있어 튼튼한 경험이 없으며 어디서부터 시작해야할지 전혀 알지 못합니다.Mozilla Firefox 개발에 참여하는 방법은 무엇입니까?
물론 https://developer.mozilla.org/En/Developer_Guide/에 링크가 있지만 Firefox가 이미 매우 거대한 프로젝트이므로 어디에서 학습을 시작해야할지 모르겠습니다.
제 질문은 웹 브라우저 개발을 시작하기 위해 내가 배워야 할 핵심적인 것들과 제가 이것을 (모든 링크를) 배울 수있는 곳에서 무엇입니까? 파서/컴파일러를 작성하는 방법을 수정해야합니까? HTML 렌더러/자바 스크립트 엔진을 작성하는 법을 배우려면 어떻게해야합니까? 그들이 이미 매우 거대한 프로젝트라고 생각하면 가능한가? 언젠가 다시 V8 자바 스크립트 엔진 (http://code.google.com/p/v8/)의 소스 코드를 다운로드했지만 소스 코드가 매우 최적화 된 코드이므로 많은 부분을 이해할 수 없었습니다. 초보자에게 무슨 일이 벌어지는 지 이해하는 데 도움이되는 의견은별로 없었습니다.
업데이트 : 저는 C, C++, Java, PHP, C#, VB.Net, JavaScript로 작업하기가 매우 편하며 웹 브라우저가 웹 페이지를 구문 분석하고 DOM을 구성하고 유지하는 방법을 배우는 데 더 많은 관심이 있습니다. , CSS 적용 방법, HTML 리플 로우 엔진의 작동 방식, JavaScript 엔진과의 상호 작용 방식, 웹 서버와의 상호 작용 방식, 구성 요소를 화면에 표시하는 방법 등이 포함됩니다.
정말 당신이 모질라의 내부에서 작업 할, 그리고 어떤 언어를 당신이/알 작업하려는 작업에 따라 달라집니다. 그 정보로 업데이트하면 답변을 드릴 수 있습니다. – sdwilsh
나는 당신이 업데이트 된 것을 보았지만 배우고 싶은 것들의 범위는 정말로 크다. Mozilla의 적극적인 활동을하는 사람들이 거의 없어도 (존재한다면), 현재 모든 것들이 어떻게 작동하는지 알 수 있습니다. 처음에 해킹을 시작하려는 사용자가 있습니까? – sdwilsh
HTML 구성 요소의 기본 렌더링부터 시작하겠습니다. 렌더링 자체가 매우 큽니다. 내가 시작할 수있는 (렌더링하에) 제안 할 부분 집합이 있습니까? DOM을 처음으로 만들 수 있습니까? –