13Sep

Miks peaks Firefoxi oma lemmik laiendama

Firefox 57 või Quantum on siin ja see on tohutu paranemine. Firefox on lõpuks jõudnud Chrome'i kiiruseni, liides on palju puhtam ja boot'uks on mõned suurepärased uued funktsioonid. Siin ei ole palju kaevata.

Ainuke nalja. Internetis on alati midagi ette heita.

Firefox Quantumiga on kaebus, et teatud laiendused enam ei tööta. Mitmed suure profiiliga laiendid, sealhulgas DownThemAll ja Greasemonkey, ei tööta Quantumis praegu. Teised, sh Firebug ja lõikelauad, tõenäoliselt kunagi enam ei tööta.

See on masendav, kui olete mõne nimetatud teenuse kasutaja ja võite arvata, et see on mõnevõrra meelevaldne. See pole nii. Kas see meeldib või mitte, tundub, et Mozilal ei olnud valikut, vaid loobuda sellest, mida ta edaspidiseks edasi "lisandmooduliks" nimetab. Sellepärast

Kuidas Legacy Firefoxi laiendused töötasid

traditsioonilised Firefoxi laiendused olid üldiselt kirjutatud XML-i kasutajaliidese keelt( XUL).See on keel Firefoxi kasutajaliides on ehitatud ja XUL-põhised laiendused võivad selle liidese otse muuta. Need lisandmoodulid olid täies ulatuses ligipääsu Firefoxi poolt kasutusele võimasele komponentide objektile mõeldud XPCOM-ile.

Kui see läks üle oma pea, lihtsalt tean seda: Firefoxi laiendustel oli rohkem või vähem täielikku võimalust oma brauserit muuta ja need muudatused tegid otse. Seepärast on need laiendused olnud nii võimsad: neid ei olnud võimalik ette kujutada ja neid ei saanud muuta. See on ka põhjus, miks need laiendused kipuvad uute Firefoxi versioonidega lõhkuma.

laiendid Chrome'i või Safari jaoks ei tööta nii. Need brauserid pakuvad laienduse arendajatele spetsiifilisi API-sid, mida nad saavad kasutada, see tähendab, et asjade loendit saab laiendada ja neid ei saa kontrollida. Nüüd on Firefox juba kaks aastat pakkunud sarnast API nimega WebExtensions, mis on arendajatele selle heaks kiitnud.

traditsioonilised laiendused parandatud Firefoxi raske

Firefox Quantam ei ole esimene värskendus laienduse katkestamiseks: see on aastaid pidev probleem. Kuna Firefoxi laiendused võivad otseselt Firefoxi mõjutada, oli Firefoxi jaoks isegi väikeste muudatuste korral võimalik täiel määral katkestada lisandmooduleid või lihtsalt täiustada jõudluskontrolliprobleeme.

Firefoxi kasutajad, kes ei teadnud laiendusi, tekitasid probleemi, eeldaksid, et uus Firefoxi versioon on vigane ja nende vaatevinklist oli see. Firefoxi meeskond teeks endast parima, et enne uue versiooni käivitamist töötaksid populaarsed laiendused, kuid seda on lihtne ette kujutada, mis aeglustab arengut.

WebExtensions API muudab selle kõik lihtsamaks, määratledes konkreetselt, mida laiendused saavad teha ja kuidas nad seda saavad teha. See tähendab, et arendajad peavad ainult tagama, et API toimib korralikult, ja ei muretse, et toimivuse tweak või kasutajate vahetus muudab teatud laiendusi. Tulemuseks peaks pikemas perspektiivis olema vähem laiendusi, kuid selleks on vaja, et Mozilla peaks vana laienduse ökosüsteemi loobuma.

Muudatus muudab ka mõned Quantami parimad funktsioonid võimalikuks. Näiteks mitme protsessi võime on Firefox Quantami kiiruse suurendamine suur osa. Neli erinevat protsessi käitavad Firefoxi liidest ja vahelehti, mis tähendab, et Firefox saab kasutada kõiki oma protsessori kõiki nelja südamiku asemel vaid üht. See on reaalsus, et tavapärase laiendamise ökosüsteemi lihtsalt ei ehitatud, ja on raske ette kujutada, et see töötab ilma paljude abstraktsioonikihtideta, mis paratamatult aeglustavad asju. Paljusid tulevastele Firefoxi muudatusi hoidsid samamoodi päris lisandmoodulid, mis tähendab, et ökosüsteem peaks muutuma, et Firefox saaks edasi areneda.

piiriülese platvormi ühilduvus oli probleem

Korda lisandmoodulid andsid inimestele kaalukat põhjust Firefoxi Chrome'i kasutamiseks. Tänapäeval on Chrome kindlasti liidriks lisandmoodulite all, samas kui Firefox võib tunduda aastatepikkusteks aastateks mittekasutatavate laienduste surnuaedaks.

Kindlasti on mõned Firefoxi laiendused, mida te Chrome'is ei saa, kuid Chrome on kaugeltki suurema ökosüsteemi. Uus WebExtensions API ei lahenda seda üleöö, kuid see muudab Chrome'i laienduste jaoks hõlpsamaks Firefoxile ülekandmise, sest laienduste kirjutamiseks kasutatav keel on küllaltki sarnane pinnavormide teisaldamiseks. Paljudel juhtudel on Firefoxi Chrome'i laienduse jaoks vaja kasutada vaid mõnda tweaksit, mis tähendab, et pole mingit põhjust, miks teie Chrome'i lemmik laiendid ei saa Firefoxi nüüd tulla, kui küsite arendajalt kenasti. See peaks kaasa tooma ökosüsteemis uute laienduste üleujutuse, mis võiks seda ausalt öelda kasutada.

Firefox oli juba kasutajaid

kaotanud. Mõned võivad väita, et Firefox kaotab kasutajaid purunenud laienduste tõttu, kuid tasub märkida, et Firefox kaotas kasutajatele Chrome'i juba murettekitava kiirusega ja on olnud aastaid. Võrdlev kiirus ja teatud lisandmoodulite puudumine ei aita seda esimest ja Firefox Quantumi eesmärk on parandada mõlemad probleemid.

Kas on võimalus, et see tagasilöök? MuidugiMõned inimesed hüpatakse laevalt Chrome'i ja teised võivad otsida vanu kahvliharusid, mis säilitavad vana laienduse ökosüsteemi. Aga see pole nii, nagu asjad lähevad hästi varem. Firefox vaja areneda, et jääda oluliseks, ja just nii otsustasid nad seda teha.

arendajatel oli aeg uue API-ga API-ga

sisse lülitada. Mõned kasutajad ei märka, et see lüliti pole isegi juhtunud, sest laiendused, millega nad juba töötavad, juba kasutavad WebExtensioni API-d. Muud laiendused pole lülitatud.

See võib olla tingitud sellest, et arendaja loobus laiendusest juba ammu või ei soovi API-d uuesti kirjutada. Mõnel juhul ei paku API esialgse laiendi uuesti loomisel piisavat kontrolli, mistõttu arendajad loobuvad oma projektidest. Ja paljudel juhtudel ei ole konversioon lihtsalt veel tehtud.

Igal juhul pole laiendused rikked, sest Mozilla muutis midagi äkki. WebExtensions on olnud kahe aasta jooksul Firefoxi osa ja laienduste ajakohastamise tähtaeg kuulutati välja aasta tagasi:

2017. aasta lõpuks ja Firefoxi 57 vabastamisega läheme üle ainult WebExtensionile ja peatame kõikmuud laienduse tüübid töölaual.

Puudub laiend, millest sõltub? See Google'i dokument jälgib mitut populaarset laiendit ja pakub alternatiive mitmele levinumale laiendusele. See nimekiri on samuti kasulik.