What are extensions?

Extension(์ดํ•˜ ํ™•์žฅ์•ฑ)์€ ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ๋Šฅ์„ ์ˆ˜์ •ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ง€์นญํ•ฉ๋‹ˆ๋‹ค. ํ™•์žฅ์•ฑ์€ ํ‘œ์ค€ ์›น ๊ธฐ์ˆ (JavaScript, HTML ๊ทธ๋ฆฌ๊ณ  CSS)๊ณผ ์ผ๋ถ€ ์ „์šฉ JavaScript API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์„ฑ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ํŠน์ง•์ด ์žˆ์ง€๋งŒ ๋ฌด์—‡๋ณด๋‹ค๋„ ํ™•์žฅ์•ฑ์€ ๋ธŒ๋ผ์šฐ์ €์— ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๊ณ  ํŠน์ • ์›น์‚ฌ์ดํŠธ์˜ ๋ชจ์–‘์ด๋‚˜ ๋‚ด์šฉ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ๋Œ€ํ‘œ์ ์ž…๋‹ˆ๋‹ค.
 
Firefox ์šฉ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์€ ํ™•์žฅ์•ฑ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ํฌ๋กœ์Šค ๋ธŒ๋ผ์šฐ์ € ์‹œ์Šคํ…œ์ธ WebExtensions API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ API๋Š” Google ํฌ๋กฌ ๋ฐ Opera์—์„œ ์ง€์›ํ•˜๋Š” extension API์™€ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์ด๋Ÿฌํ•œ ๋ธŒ๋ผ์šฐ์ € ์šฉ์œผ๋กœ ์ž‘์„ฑ๋œ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์€ Firefox ๋˜๋Š” Microsoft Edge์—์„œ ์•ฝ๊ฐ„์˜ ๋ณ€๊ฒฝ๋งŒ์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. API๋Š” ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์Šค Firefox์™€๋„ ์™„๋ฒฝํ•˜๊ฒŒ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค.
 
๊ณผ๊ฑฐ์—๋Š” XUL/XPCOM overlaysbootstrapped extensions, ๋˜๋Š” Add-on SDK ์ค‘ ํ•˜๋‚˜์˜ ๋ฐฉ๋ฒ•์œผ๋กœ Firefox Extension์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ 2017๋…„ 11์›”์„ ๋งˆ์ง€๋ง‰์œผ๋กœ WebExtensions API๊ฐ€ ์œ ์ผํ•œ Firefox ํ™•์žฅ์•ฑ ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•์œผ๋กœ ํ†ตํ•ฉ๋˜๊ณ , ๊ธฐ์กด์˜ ๋ฐฉ๋ฒ•์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. 
 
์งˆ๋ฌธ ํ˜น์€ ์•„์ด๋””์–ด๊ฐ€ ์žˆ๊ฑฐ๋‚˜, ๊ธฐ์กด Extension์„ WebExtensions API๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ•  ๋•Œ ๋„์›€์ด ํ•„์š”ํ•˜๋‹ค๋ฉด  dev-addons ๋ฉ”์ผ๋ง ๋ฆฌ์ŠคํŠธ๋‚˜ IRC์˜ #extdev๋กœ ์š”์ฒญํ•ด์ฃผ์„ธ์š”.

What's next?

  • ํ™•์žฅ์•ฑ ์˜ˆ์‹œ๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด Example extensions ์ฐธ์กฐ.
  • ํ™•์žฅ์•ฑ์˜ ๊ตฌ์กฐ์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ Anatomy of an extension ์ฐธ์กฐ.
  • ๊ฐ„๋‹จํ•œ ํ™•์žฅ์•ฑ์„ ๋งŒ๋“ค์–ด๋ณด๋ ค๋ฉด Your first extension ์ฐธ์กฐ.