브라우저 확장

확장 프로그램(Extension) 또는 웹 브라우저 기능 확장 프로그램 또는 확장 기능은 웹 브라우저의 기존 기능의 동작을 변경하거나 완전히 새로운 기능을 추가하는 웹 브라우저용 프로그램이다. 웹 브라우저의 기본 기능에 외부 개발자가 개발한 프로그램을 추가함으로써 웹 브라우저의 맞춤화, 보안성 향상, 검색 기능 향상, 북마크 기능 추가, 번역 기능 등 웹 브라우저의 기능과 성능을 향상시킨다. 현재 크롬, 사파리, 파이어폭스 등 대표적인 웹 브라우저는 이러한 확장 프로그램을 지원하며, 독자적인 확장 프로그램 갤러리 사이트를 운영하고 있다.

확장 프로그램 기술 

 CSS (스타일시트)
 DOM (Document Object Model) – 리얼타임의 XUL을 변경하거나 현재 불러온 HTML을 수정한다.
 JavaScript – 모질라 브라우저의 주요한 언어
 XPCOM (Cross-Platform Component Object Model)
 XPConnect
 XPI (Cross-Platform Installer)
 XUL (XML 사용자 인터페이스 언어) – 사용자와 상호작용하고 사용자 인터페이스(UI)를 정의한다.

확장 프로그램의 역사 
모질라의 파이어폭스의 확장 프로그램이 먼저 시작되어 다양하고, 풍부한 확장 프로그램을 지원했다. 구글 크롬은 4.0 버전부터 확장 프로그램을 본격적으로 지원하였다. 이후 사파리는 사파리 5부터 확장 프로그램을 지원하였다.

확장 프로그램의 확장 양상

기능 추가 
확장 프로그램은 일반적으로 웹 브라우저에 기능을 추가하기 위해 사용된다. 예를 들어 RSS 리더, IE 렌더링 전환, 기능성 툴바, 특정 웹 사이트에 대한 전용 프로그램, FTP, 이메일, 마우스 동작에 의한 명령 실행, 프록시 서버, 개발자 도구 등이 있다.

웹 페이지의 변경 
많은 확장 프로그램은 웹 페이지가 렌더링될 때 웹 페이지의 콘텐츠를 변경할 수 있다. 그리고 그리스몽키는 사용자가 정의한 스크립트를 적용하여 웹 페이지를 제어할 수 있고, 스타일리시(Stylish)는 사용자 스타일을 적용하여 웹 페이지를 변경할 수 있다. 뿐만 아니라 특정 파일을 불러오지 않음으로써 광고와 같은 정보를 표시하지 않는 등 웹 브라우저는 사용자의 웹 페이지 통제권을 부여한다.

기타 
확장 프로그램은 웹 브라우저의 기능과 관계는 없지만 사용자를 위한 다양한 기능을 제공하기도 한다. 게임 기능이나 성능 향상, 브라우저 버그 패치 등을 할 수 있다.

호환성과 업데이트 
확장 프로그램은 웹 브라우저의 기능을 확장하는 역할을 하므로 웹 브라우저와 호환이 되어야 하는 경우가 있다. 특히 파이어폭스 브라우저의 버전은 확장 프로그램의 설치 조건을 결정하는 중요한 요소이다.

확장 프로그램은 개발자에 의해 지속적으로 유지, 관리되므로 브라우저 자체에 확장 프로그램의 업데이트가 자동으로 이루어지거나 업데이트 확인 후 알림 기능을 지원한다.

확장 프로그램의 개발 현황 
확장 프로그램은 브라우저별로 특정 확장 프로그램을 독점적으로 이용할 수 있었지만 점차 개방적인 양상으로 변해가고 있다. 예를 들어 파이어폭스의 가장 인기 있는 확장 프로그램인 애드블록 플러스(Adblock Plus)는 크롬의 광고 차단 목적의 확장 프로그램 허용에 따라 크롬에서도 이용할 수 있게 되었고, 크롬과 사파리의 브라우저 엔진과 API의 유사성으로 인해 사파리에서도 서비스되고 있다. 그리스몽키나 스타일리시, 파이어버그 등 다양한 확장 프로그램이 특정 웹 브라우저에서만 개발되지 않고, 점차 모든 웹 브라우저로 보편화되어 가고 있다.

지역화 
확장 프로그램은 보통 영어 또는 자국어로 서비스된다. 사용자는 자발적으로 번역 활동에 참여함으로써 확장 프로그램을 지역화 또는 번역할 수 있다. 파이어폭스의 확장 프로그램의 경우 사용자가 편리하게 번역할 수 있는 '바벨질라'라는 웹 번역 사이트를 이용할 수 있다.

확장 프로그램의 수익성 
대부분의 확장 프로그램은 무료로 이용할 수 있다. 하지만 확장 프로그램의 개발에 따른 대가 차원에서 기부를 요청하기도 하고, 이를 확장 프로그램 갤러리에서 반영하고 있기도 하다. 그리고 일부 확장 프로그램은 유료화하여 대가를 지불해야 이용할 수 있기도 하다. 예를 들어 구글은 크롬 확장 프로그램 갤러리 이외에 앱스토어를 운영하여 확장 프로그램을 유료화할 수 있는 수익 구조를 만들어 개발자의 수익을 보장하려고 한다.

확장 프로그램 갤러리 
 크롬 확장 프로그램 갤러리
 사파리 확장 프로그램 갤러리 
 파이어폭스 확장 프로그램 갤러리
 오페라 확장 프로그램 갤러리

같이 보기 
 플러그인

웹 브라우저