13Sep

Dlaczego Firefox musiał zabić Twoje ulubione rozszerzenie

click fraud protection

Firefox 57, lub Quantum, jest tutaj i jest to ogromna poprawa. Firefox w końcu dogonił Chrome pod względem szybkości, interfejs jest o wiele czystszy i jest kilka świetnych nowych funkcji do uruchomienia. Nie ma na co narzekać.

Żartowałem. W Internecie zawsze można na co narzekać.

W Firefox Quantum skarga jest taka, że ​​niektóre rozszerzenia już nie działają.Liczne zaawansowane rozszerzenia, w tym DownThemAll i Greasemonkey, obecnie nie działają z Quantum. Inne, w tym Firebug i ScrapBook, prawdopodobnie już nigdy nie będą działać.

Jest to frustrujące, jeśli jesteś użytkownikiem jednej z tych usług i możesz myśleć, że jest nieco arbitralna. Nie jest. Czy się to podoba, czy też nie, Mozilla uznała, że ​​nie mają wyboru, jak zrezygnować z tego, co nazywa "starszymi" dodatkami, aby posunąć się naprzód. Dlatego.

Jak działały starsze rozszerzenia Firefox

Tradycyjne rozszerzenia Firefox były generalnie napisane w języku XML User Interface Language( XUL).W tym języku zbudowany jest interfejs użytkownika Firefoksa, a rozszerzenia oparte na XUL mogą bezpośrednio modyfikować ten interfejs. Te dodatki miały również prawie pełny dostęp do XPCOM, potężnego modelu obiektu składowego używanego przez Firefoksa.

instagram viewer

Jeśli to przeszło ci przez głowę, po prostu wiedz, że: rozszerzenia Firefox miały mniej więcej całkowitą możliwość zmiany przeglądarki i dokonały tych zmian bezpośrednio. To dlatego te rozszerzenia były tak potężne: nie było określonego zestawu rzeczy, które mogły i nie mogły się zmienić.Właśnie dlatego te rozszerzenia miały tendencję do łamania się w nowych wydaniach Firefoksa. Rozszerzenia

dla przeglądarki Chrome lub Safari nie działają w ten sposób. Te przeglądarki oferują programistom rozszerzeń specyficzne interfejsy API, z których mogą korzystać, co oznacza, że ​​istnieje zestaw rzeczy, które rozszerzenia mogą i nie mogą kontrolować.Od dwóch lat Firefox oferuje podobne API o nazwie WebExtensions, które zachęca programistów do adaptacji.

Tradycyjne rozszerzenia ulepszające Firefox Trudne

Firefox Quantam nie jest pierwszą aktualizacją, która przełamała rozszerzenie: od lat jest to stały problem. Ponieważ rozszerzenia Firefoksa mogły tak bezpośrednio wpłynąć na Firefoksa, możliwe było nawet drobne zmiany w Firefoksie, które całkowicie zepsuły dodatki lub po prostu wprowadziły błędy w działaniu.

Użytkownicy Firefoksa, nie wiedząc, że rozszerzenia są przyczyną problemu, zakładają, że nowa wersja Firefoksa jest błędna iz ich punktu widzenia była. Zespół Firefoksa postarałby się, aby popularne rozszerzenia działały przed wprowadzeniem nowej wersji, ale łatwo jest wyobrazić sobie cały ten spowalniający rozwój.

Interfejs API WebExtensions ułatwia to zadanie, określając, co mogą zrobić rozszerzenia i jak mogą to zrobić.Oznacza to, że programiści muszą jedynie upewnić się, że interfejs API działa poprawnie i nie martwcie się, że zmiana wydajności lub zmiana interfejsu użytkownika zepsują poszczególne rozszerzenia. Rezultatem powinno być zmniejszenie liczby rozszerzeń na dłuższą metę, ale aby to umożliwić, Mozilla musiała zrezygnować ze starego ekosystemu rozszerzeń.

Zmiana powoduje również, że niektóre z najlepszych funkcji Quantam są możliwe. Na przykład funkcja wielu procesów jest dużą częścią zwiększenia szybkości Firefox Quantam. Cztery oddzielne procesy obsługują interfejs i karty Firefoksa, co oznacza, że ​​Firefox może używać wszystkich czterech rdzeni procesora zamiast jednego. Jest to rzeczywistość, do której tradycyjny ekosystem rozszerzeń po prostu nie był stworzony i trudno sobie wyobrazić, aby działał bez wielu warstw abstrakcji, które nieuchronnie spowalniałyby działanie. Wiele nadchodzących zmian w Firefoxie zostało podobnie powstrzymanych przez starsze dodatki, co oznacza, że ​​ekosystem musiał się zmienić, aby Firefox mógł ewoluować.

Kompatybilność z wieloma platformami była problemem

Dawno, dawno temu, dodatki dawały ludziom powód do używania Firefoksa w przeglądarce Chrome. Obecnie Chrome jest zdecydowanie liderem pod względem dodatków, podczas gdy Firefox może czuć się jak cmentarz nieużywanych rozszerzeń z minionych lat.

Oczywiście, istnieje kilka rozszerzeń Firefoksa, których nie można uzyskać w Chrome, ale Chrome ma zdecydowanie większy ekosystem. Nowy interfejs API WebExtensions nie naprawi tego z dnia na dzień, ale znacznie ułatwi importowanie rozszerzeń Chrome do Firefoksa, ponieważ język używany do pisania rozszerzeń jest na tyle podobny, że portowanie jest powierzchowne. W wielu przypadkach wystarczy tylko kilka poprawek, aby rozszerzenie Chrome działało w Firefoksie, co oznacza, że ​​nie ma powodu, by twoje ulubione rozszerzenia do Chrome nie mogły teraz przyjść do Firefoksa, jeśli wystarczająco spytasz programistę.Powinno to doprowadzić do zalewu nowych rozszerzeń w ekosystemie, który mógłby z niego szczerze skorzystać.

Firefox już tracił użytkowników

Niektórzy mogą twierdzić, że Firefox straci użytkowników z powodu uszkodzonych rozszerzeń, ale warto zauważyć, że Firefox już tracił użytkowników do Chrome w alarmującym tempie i od lat. Szybkość porównywania i brak niektórych dodatków nie pomagały na tym froncie, a Firefox Quantum ma na celu naprawienie obu tych problemów.

Czy jest szansa, że ​​to się powtórzy? Pewnie. Niektórzy ludzie przeskakują statki do Chrome, a inni mogą szukać dawnych widelców, które utrzymują stary ekosystem rozszerzeń.Ale to nie tak, że wszystko szło dobrze wcześniej. Firefox musiał ewoluować, aby pozostać aktualnym i tak postanowili to zrobić.Programiści

mieli czas na przejście na nowe API

Niektórzy użytkownicy nie zauważą, że ten przełącznik się wydarzył, ponieważ rozszerzenia, z którymi pracują, korzystają już z interfejsu API WebExtension. Inne rozszerzenia nie zostały przełączone.

Może to być spowodowane tym, że programista porzucił to rozszerzenie dawno temu lub nie ma ochoty go ponownie pisać, aby korzystać z interfejsu API.W niektórych przypadkach interfejs API nie zapewnia wystarczającej kontroli nad ponownym utworzeniem oryginalnego rozszerzenia, więc programiści porzucają swoje projekty. W wielu przypadkach konwersja po prostu jeszcze się nie kończy.

Niezależnie od przypadku rozszerzenia nie pękają, ponieważ Mozilla zmieniła coś nagle. WebExtensions jest częścią Firefoksa od dwóch lat, a termin aktualizacji rozszerzeń został ogłoszony rok temu:

Do końca 2017 roku, wraz z wydaniem Firefoksa 57, przeniesiemy się do WebExtensions wyłącznie i przestaniemy ładowaćinne typy rozszerzeń na pulpicie.

Nadal brakuje rozszerzenia, na którym polegasz? Ten dokument Google śledzi kilka popularnych rozszerzeń i oferuje alternatywy dla kilku popularnych. Ta lista jest również przydatna.