Zakaj je Firefox moral ubiti vašo priljubljeno razširitev
Firefox 57, ali Quantum, je tu, in to je velik napredek. Firefox je končno dohitel Chrome v smislu hitrosti, vmesnik je veliko čistejši in obstajajo nove odlične funkcije. Tukaj ni veliko pritožb.
Samo hecam se. Na internetu se vedno lahko kaj pritožuje.
Z Firefoxom Quantum je pritožba de jour, da določene razširitve ne delujejo več. Številne razširitve visokih profilov, vključno z DownThemAll in Greasemonkey, trenutno ne delajo s Quantumom. Drugi, vključno s Firebug in ScrapBook, verjetno ne bodo nikoli več delali.
To je frustrirajuće, če ste uporabnik ene od teh storitev in morda mislite, da je nekoliko arbitrarna. Ni. Všeč ali ne, je Mozilla čutila, da nimajo druge izbire, kot da opustijo to, kar imenujejo »zapuščeni« dodatki, da bi lahko napredovali. Evo zakaj.
Kako delujejo razširjene razširitve Firefoxa
Tradicionalne razširitve za Firefox so bile običajno napisane v jeziku uporabniškega vmesnika XML (XUL). To je jezik, s katerim je vgrajen uporabniški vmesnik Firefoxa, razširitve na osnovi XUL pa lahko neposredno spremenijo ta vmesnik. Ti dodatki so imeli tudi skoraj popoln dostop do XPCOM, zmogljivega objektnega objektnega modela, ki ga uporablja Firefox.
Če se je to zgodilo v glavi, veste samo to: razširitve za Firefox so imele bolj ali manj popolno zmožnost spreminjanja brskalnika in te spremembe so naredile neposredno. Zato so bile te razširitve tako močne: ni bilo predpisanega sklopa stvari, ki bi jih lahko in ne bi mogle spremeniti. Prav zato so se te razširitve prelomile z novimi različicami Firefoxa.
Razširitve za Chrome ali Safari ne delujejo na ta način. Ti brskalniki ponujajo specifične API-je za razvijalce, ki jih lahko uporabijo, kar pomeni, da je seznam nastavitev, ki jih razširitve lahko in ne morejo nadzorovati. Firefox že dve leti ponuja podoben API, imenovan WebExtensions, ki ga je razvijalce spodbudil k sprejetju.
Tradicionalne razširitve, ki izboljšujejo Firefox, težko
Firefox Quantam ni prva posodobitev, ki bi prekinila podaljšanje: to je bil stalni problem že vrsto let. Ker razširitve Firefoxa lahko tako neposredno vplivajo na Firefox, je bilo mogoče celo pri manjših spremembah samega Firefoxa popolnoma prekiniti dodatke ali pa samo uvesti napake, ki vplivajo na učinkovitost..
Uporabniki Firefoxa, ki niso vedeli, da so težave povzročali razširitve, bi domnevali, da je nova različica Firefoxa napačna, in iz njihove perspektive je bila. Ekipa skupine Firefox bi se po svojih najboljših močeh trudila, da bi priljubljene razširitve delovale, preden so začele uporabljati novo različico, vendar si lahko preprosto zamislite vse to upočasnitev razvoja.
API za WebExtensions vse to olajša tako, da natančno določi, kaj lahko naredijo razširitve in kako lahko to storijo. To pomeni, da morajo razvijalci zagotoviti, da API deluje pravilno, in da ne skrbi, da bo sprememba zmogljivosti ali sprememba uporabniškega vmesnika prekinila določene razširitve. Rezultat bi moral biti, da bi se dolgoročno zmanjšalo število podaljškov, toda za to je Mozilla morala zapustiti stari ekosistem razširitve..
Sprememba omogoča tudi nekaj najboljših funkcij Quantama. Možnost več procesov je na primer velik del povečanja hitrosti Firefox Quantam. V štirih ločenih procesih je vmesnik in zavihki Firefoxa, kar pomeni, da lahko Firefox uporablja vse štiri jedra vašega procesorja namesto samo enega. To je resničnost, za katero tradicionalni ekosistem razširitve preprosto ni bil zgrajen, in težko si je predstavljati, da bi deloval brez veliko plasti abstrakcije, ki bi neizogibno upočasnila stvari. Mnoge prihajajoče spremembe v Firefoxu so podobno zadržale starejše dodatke, kar pomeni, da se je moral ekosistem spremeniti, da bi se Firefox razvil.
Problematična je združljivost med platformami
Nekdaj so dodatki dali uporabnikom tehten razlog za uporabo Firefoxa v Chromu. Danes je Chrome daleč vodilno mesto glede dodatkov, medtem ko se Firefox lahko počuti kot pokopališče nezavarovanih razširitev iz preteklih let.
Seveda obstaja nekaj razširitev Firefoxa, ki jih ne morete dobiti v Chromu, vendar ima Chrome daleč večji ekosistem. Novi API za WebExtensions tega ne bo odpravil čez noč, vendar je veliko lažje prenašati razširitve za Chrome v Firefox, ker je jezik, ki se uporablja za pisanje razširitev, dovolj podoben, da je portiranje površno. V mnogih primerih je za razširitev Chrome v Firefoxu potrebnih le nekaj prilagoditev, kar pomeni, da ni razloga, da bi se vaši priljubljeni Chrome razširitve zdaj ne morejo obrniti na Firefox, če razvijalca lepo vprašate. To bi moralo privesti do poplav novih razširitev v ekosistemu, ki bi jih lahko odkrito uporabljala.
Firefox je že izgubljal uporabnike
Nekateri lahko trdijo, da bo Firefox izgubil uporabnike zaradi pokvarjenih razširitev, vendar je treba omeniti, da je Firefox že izgubljal uporabnike za Chrome z zaskrbljujočo hitrostjo, in to že več let. Primerjalna hitrost in pomanjkanje določenih dodatkov nista pomagala pri tem, in Firefox Quantum je namenjen odpravi obeh težav..
Ali obstaja možnost, da se bo to vrnilo? Seveda. Nekateri ljudje bodo skočili v Chrome, drugi pa bodo iskali starodavne vilice, ki ohranjajo stari ekosistem. Ampak to ni tako, kot da bi se stvari dobro odvijale. Firefox se je moral razvijati, da bi ostal ustrezen, in tako so se odločili za to.
Razvijalci so imeli čas za prehod na nov API
Nekateri uporabniki tega stikala ne bodo opazili, ker so razširitve, s katerimi že delajo, že uporabljale API WebExtension. Druge razširitve se niso spremenile.
Razlog za to je lahko dejstvo, da je razvijalec že pred časom opustil razširitev ali pa mu ni treba ponovno pisati za uporabo API-ja. V nekaterih primerih API ne nudi dovolj nadzora za ponovno ustvarjanje izvirne razširitve, zato razvijalci opustijo svoje projekte. V mnogih primerih konverzija še ni končana.
Kakorkoli že, razširitve se ne zlomijo, ker je Mozilla nekaj nenadoma spremenila. WebExtensions je del Firefoxa že dve leti in rok za posodabljanje razširitev je bil napovedan pred enim letom:
Do konca leta 2017 in ob izdaji Firefoxa 57 se bomo premaknili izključno na spletno razširitev in ustavili nalaganje drugih vrst razširitev na namizje.
Še vedno manjka razširitev, na katero ste odvisni? Ta Googlov dokument sledi več priljubljenim razširitvam in ponuja alternative za več pogostih razširitev. Ta seznam je prav tako koristen.