If-Koubou

Защо Firefox трябваше да убие любимото ви разширение

Защо Firefox трябваше да убие любимото ви разширение (Как да)

Firefox 57, или Quantum, е тук и това е огромно подобрение. Firefox най-накрая успява да дойде с Chrome по отношение на скоростта, интерфейсът е много по-чист и има някои страхотни нови възможности за зареждане. Няма какво да се оплаквате тук.

Просто се шегувам. В интернет винаги има нещо, за което да се оплаквате.

С Firefox Quantum жалбата de jour е, че някои разширения вече не работят. Многобройни разширения с висок профил, включително DownThemAll и Greasemonkey, в момента не работят с Quantum. Други, включително Firebug и ScrapBook, вероятно няма да работят отново.

Това е разочароващо, ако сте потребител на една от тези услуги и може да мислите, че това е донякъде произволно. Не е така. Харесваше или не, Mozilla чувстваше, че нямат избор освен да се откажат от това, което нарича "наследство" добавки, за да се придвижат напред. Ето защо.

Как работят Legacy Firefox Extensions

Традиционните разширения за Firefox обикновено са написани на XML User Language Interface Language (XUL). Това е езикът, в който се използва потребителският интерфейс на Firefox, а разширенията, базирани на XUL, могат да променят директно този интерфейс. Тези добавки също имаха почти пълен достъп до XPCOM, мощния модел на компонентния обект, използван от Firefox.

Ако това се появи над главата ви, просто знайте това: разширенията на Firefox са имали повече или по-малко пълна възможност да променят браузъра ви и са направили тези промени директно. Ето защо тези разширения бяха толкова силни: нямаше предписан набор от неща, които биха могли и не можаха да се променят. Това е и причината, поради която тези разширения са склонни да се скъсат с новите версии на Firefox.

Разширенията за Chrome или Safari не работят по този начин. Тези браузъри предлагат на разработчиците на разширения специфични API, които могат да използват, което означава, че има определен списък с неща, които разширенията могат и не могат да контролират. В продължение на две години Firefox предложи подобен API, наречен WebExtensions, който насърчи разработчиците да приемат.

Традиционните разширения станаха по - добри

Firefox Quantam не е първата актуализация, за да се прекъсне разширението: това е продължителен проблем от години. Тъй като разширенията на Firefox биха могли да засегнат директно Firefox, е възможно дори малки промени в самия Firefox, за да се счупят добавките напълно, или просто да се въведат бъгове за изпълнение.

Потребителите на Firefox, без да знаят, че разширенията причиняват проблема, биха предположили, че новата версия на Firefox е бъгове, а от гледна точка на това е така. Екипът на Firefox ще направи всичко възможно, за да гарантира, че популярните разширения работят, преди да натиснем нова версия, но е лесно да си представите всичко това забавяне на развитието.

Приложният програмен интерфейс (API) WebExtensions прави всичко това по-лесно, като конкретно определя какви разширения могат да направят и как могат да го направят. Това означава, че разработчиците трябва само да гарантират, че приложният програмен интерфейс (API) функционира правилно и да не се притеснявате, че промяната на производителността или промяната в потребителския интерфейс ще нарушат определени разширения. Резултатът трябва да е по-малък, но в дългосрочен план, но за да стане това възможно, Mozilla трябваше да се откаже от старата екосистема.

Промяната също прави възможно някои от най-добрите характеристики на Quantam. Многофункционалната способност, например, е голяма част от увеличаването на скоростта на Firefox Quantam. Четири отделни процепа се справят с интерфейса и разделите на Firefox, което означава, че Firefox може да използва всичките четири ядра на вашия процесор вместо само една. Това е реалност, която традиционната удължителна екосистема просто не беше построена, и е трудно да си представим, че работи без много слоеве абстракция, което неизбежно ще забави нещата. Много от предстоящите промени в Firefox също бяха задържани от наследствени добавки, което означаваше, че екосистемата трябваше да се промени, за да се развие Firefox.

Съвместимостта между платформите беше проблем

Всеки път добавките дават на хората неоспорима причина да използват Firefox върху Chrome. В наши дни Chrome е далеч лидер по отношение на добавките, докато Firefox може да се чувства като гробище на неопетнени удължения от години.

Разбира се, има няколко разширения на Firefox, които не можете да получите в Chrome, но Chrome има далеч по-голямата екосистема. Новият API за WebExtensions няма да го оправи за една нощ, но го прави много по-лесно разширяването на Chrome да бъде прехвърлено към Firefox, защото езикът, използван за написване на разширения, е достатъчно сходен, за да направи порфирността повърхностна. В много случаи са необходими само няколко промени, за да може разширението за Chrome да се изпълнява в Firefox, което означава, че няма причина, поради която любимите ви разширения за Chrome не могат да се появят в Firefox, ако попитате разработчика достатъчно добре. Това трябва да доведе до наводнение на нови разширения в една екосистема, която може да я използва откровено.

Firefox вече губи потребители

Някои може да твърдят, че Firefox ще загуби потребителите поради счупени разширения, но заслужава да се отбележи, че Firefox вече губи потребители с Chrome с тревожна скорост и е от години. Сравнителната скорост и липсата на определени добавки не помогнаха на този фронт, а Firefox Quantum имаше за цел да реши и двата проблема.

Има ли шанс това да се задържи? Сигурен. Някои хора ще прескочат кораба до Chrome, а други ще търсят древни вилици, които поддържат старата екосистема за разширение. Но не е така, както нещата вървят добре преди това. Firefox трябваше да се развие, за да остане релевантен и така решиха да го направят.

Разработчиците имаха време да преминат към новия API

Някои потребители няма да забележат, че този ключ дори се е случил, защото разширенията, с които работят, вече използват приложния програмен интерфейс (API) WebExtension. Другите разширения не са превключени.

Това може да се дължи на факта, че разработчикът е изоставил разширението отдавна или не се опитва да го напише отново, за да използва API. В някои случаи приложният програмен интерфейс (API) не предлага достатъчно контрол, за да пресъздаде първоначалното разширение, така че разработчиците изоставят своите проекти.И в много случаи конвертирането просто не е направено още.

Какъвто и да е случаят, разширенията не се разпадат, защото Mozilla промени нещо внезапно. WebExtensions е част от Firefox за две години и срокът за актуализиране на разширенията е обявен преди година:

До края на 2017 г. и с пускането на Firefox 57 ще преминем изцяло към WebExtensions и ще спрем да зареждаме други типове разширения на работния плот.

Все още липсва разширение, от което зависи? Този документ на Google проследява няколко популярни разширения и предлага алтернативи на няколко често срещани. Този списък също е полезен.