fireforx 추가 구성 요소 개발 자 가이드(2)-개발 확장 과정 에서 사용 하 는 기술

깊이 논술 하기 전에 Firefox 확장 을 위 한 기술 을 빠르게 소개 합 니 다.Firefox 개발 을 위해 알 아야 할 지식 도 있 습 니 다.
Firefox 확장 에 사용 되 는 기술 개발
Firefox 와 그 확장 은 현재 네트워크 개발 을 바탕 으로 광범 위 하 게 사용 되 는 기술 입 니 다.그 구 조 는 웹 페이지 에 사용 되 는 동적 HTML 과 windows 에서 사용 되 는 HTML 응용 프로그램 과 비슷 하 다.동적 HTML 을 개발 한 경험 이 있다 면 Firefox 확장 기술 을 배 우 는 것 이 상대 적 으로 쉽다 는 것 을 알 게 될 것 이다.
각종 기술 이 맡 은 역할
Firefox 는 전체적으로 네 가지 기술 을 사 용 했 는데 그것 이 바로 XUL,CSS,javascript,그리고 XPCOM 이다.확장 도 이 네 가지 기술 로 구성 되 어 있다.그림 1:fireforx 의 각종 기술 의 역할 은 이러한 기술 을 제외 하고 확장 개발 은 보안 체제 의 제한 을 극복 하고 코드 를 fireforx 의 UI 에 어떻게 삽입 하 는 지 배 워 야 한다.이 문제 들 은 제5 장 에서 토론 한다.
필수 지식 최소 지식 필요
간결 하 게 보면 널리 알려 진 기술 에 대한 해석 을 생략 하고 Firefox 개발 에 필요 한 새로운 기술 을 소개 하 는 데 중점 을 두 겠 습 니 다.동적 HTML 개발 경험 이 있다 고 가정 해 봐.그리고 다음 기술 들 은이러한 기술 에 대한 더 많은 정 보 를 얻 으 려 면 다른 자원 을 참고 하 십시오.•XML coding•CSS coding•Basic JavaScript syntax
XML:텍스트 기반 구조 화 언어
확장 가능 한 태그 언어(XML)는 다양한 데 이 터 를 표현 하 는 메타 언어 입 니 다.W3C 는 1998 년 이 조직 을 네트워크 관련 기술 설정 기준 으로 제시 했다.XML 은 많은 유용 한 특성 이 있 습 니 다.통용 되 고 확장 가능 하 며 편리 하고 효과 적 입 니 다.XML 기반 태그 언어,예 를 들 어 XHTML 은 HTML 기반 XML 에서 정 의 된 것 입 니 다.SVG 는 벡터 그림 을 표시 하 는 데 사 용 됩 니 다.MathML 은 수학 공식 을 나타 내 는 데 쓰 인 다.Firefox 에 사용 되 는 XUL 도 XML 기반 입 니 다.목록 1:XML 문법
<elementname someattribute="somevalue">
content
</elementname>

목록 1 에서 보 듯 이 XML 은 요 소 를 사용 하고 요 소 는 시작 탭 과 끝 탭,내용 으로 구성 되 어 있 습 니 다.주:내용 이 없 는 요 소 는 간단 한 형식 으로'element name/'라 고 표시 할 수 있 습 니 다.하나의 요 소 는 그 내용 에 다른 요소 와 텍스트 를 포함 하고 모든 정 보 는 하나의 트 리 구 조 를 구성 할 수 있 습 니 다.모든 트 리 에서 요 소 는 하위 요소(요소 에 포 함 된 요소)와 부모 요소(이 요 소 를 포함 하 는 요소)가 있 을 수 있 습 니 다.속성 도 시작 탭 에 추가 할 수 있 습 니 다.각 속성 은 하나의 값 에 대응 합 니 다.XML 의 확장 가능 한 설명 과 같이 XML 기반 언어(예 를 들 어 XHTML 과 SVG)의 요 소 는 다른 요소 에 삽입 하여 확장 언어 로 사용 할 수 있 습 니 다.모든 요 소 는'namespace URI'식별 자 를 가 질 수 있 고 모든 언어의 식별 자 는 유일한 것 입 니 다.예 를 들 어 XHTML 과 SVG 가 같은 이름 을 원 하 는 요소 가 있어 도 구분 할 수 있다.XHTML 이름 공간 URI 는"http://www.w3.org/1999/xhtml"SVG 의 것 은:"http://www.w3.org/1999/xhtml"
CSS:XML 문서 의 표 시 를 바 꾸 는 스타일 언어
XML 과 비슷 하 게 레이 어드 스타일 시트(CSS)는 W3C 가 제정 한 기술 규범 이다.이것 은 스타일 설명 언어 로 XML 과 HTML 에 표 시 된 데 이 터 를 정의 합 니 다.목록 1 에서 보 듯 이 아주 간단 한 문법 이 있 습 니 다.HTML 과 XML 이 표시 하 는 데이터 의 구조 와 CSS 가 설명 하 는 디 스 플레이 스타일 을 분리 함으로써 구조 와 스타일 표 시 를 HTML 에 포함 시 키 는 것 보다 데 이 터 를 더 잘 재 활용 할 수 있 습 니 다.세 가지 CSS 규범(1 급 에서 3 급)이 있 는데 그 기능 특성 이 점점 강해 진다.Gecko 렌 더 링 엔진 처 리 는 기본적으로 2 급 CSS 와 3 급 CSS 입 니 다.목록 2:CSS 코드 예제
body {
color: black;
background-color: white;
}
p {
margin-bottom: 1em;
text-indent: 1em;
}

JavaScript:세상 에서 가장 오해 하기 쉬 운 언어
Javascript 은 스 크 립 트 언어 로 최초 로 20 세기 90 년대 에 개발 되 었 는데 그 때 는 웹 페이지 에 동적 특성 을 추가 하 는 방식 이 었 다.팝 업 창 을 자주 표시 하거나 상태 표시 줄 문 자 를 표시 하거나 다른 방식 으로 웹 페이지 를 사용자 에 게 불편 하 게 만 들 기 때문에 이 언어 는 실 용적 이지 않 고 기능 이 부족 합 니 다.또한 자바 script 에서 일련의 보안 구멍 과 Jscript 과 의 호환성 을 발 견 했 기 때문에 자바 script 을 완전히 포기 하 는 추세 입 니 다.그러나 구 글 맵 스(javascript 및 비동기 통신 사용)와 같은 네트워크 서 비 스 는 AJAX(Asynchronous JavaScript and XML)라 는 별명 을 가 진 일련의 기술 을 만 들 었 다.게다가 많은 라 이브 러 리 가 와 서 이 라 이브 러 리 들 은 서로 다른 웹 브 라 우 저 에서 이 루어 져 자바 script 을 프로 그래 밍 언어 로 재평가 하 게 되 었 다.Javascript 은 목록 3 과 같은 대상 을 대상 으로 하 는 소스 언어 로 독립 적 인 클래스 정의 도 허용 합 니 다.자바 와 같은 복잡 한 유형 이 없어 서 자 바스 크 립 트 가 상당히 편리 하고 가 져 왔 습 니 다.
function MyClass() {
}
MyClass.prototype = {
property1 : true,
property2 : 'string',
method : function() {
alert('Hello, world!');
}
};
var obj = new MyClass();
obj.method();

DOM:XML 문 서 를 처리 하 는 API
문서 개체 모델(DOM)은 W3C 가 발표 한 기술 표준 으로 XML 문서 의 내용 을 대상 으로 처리 하 는 API 이다.초기 동적 HTML 분기 에서 전형 적 인 방법 은 HTML 요소 노드 의 innerHTML 속성 을 사용 하여 문자열 을 처리 함으로써 HTML 문서 의 내용 을 동적 으로 바 꾸 는 것 이다.그러나 DOM 으로 XML 문 서 를 처리 하 는 것 은 자바 script 이 대상 을 대상 으로 하 는 자 연 스 러 운 특성 과 결합 하여 XML 문 서 를 처리 하 는 데 더 좋 은 방법 을 제공 합 니 다.또한 XUL 은 innerHTML 속성 과 같은 속성 이 없 기 때문에 DOM 이 없 으 면 동적 처리 가 불가능 합 니 다.많은 등급 의 DOM 이 있 고,각종 등급 의 DOM 은 서로 다른 등급 의 기능 을 가지 고 있다.Gecko 는 거의 모든 2 급 DOM 과 3 급 DOM 을 지원 합 니 다.우 리 는 DOM 의 서로 다른 API 의 세부 사항 에 대해 토론 하지 않 는 다.DOM 에 관 한 더 많은 것 을 배 우려 면 MDC 의 문 서 를 보십시오.목록 4:DOM 으로 처리 하 는 예
var bar = document.getElementById('toolbar');
bar.removeChild(bar.childNodes[1]);
bar.appendChild(document.createElement('button'));
bar.lastChild.setAttribute('label', 'Hello!');

번역문 pdf 버 전 다운로드

좋은 웹페이지 즐겨찾기