Karcsúsító javascript alkalmazások: Megközelítés a fel nem használt funkciók eltávolítására a javascript könyvtárakból

Absztrakt

Kontextus

A JavaScript fejlesztésében bevett gyakorlat az, hogy egy alkalmazást nagy fájlként, kötegként szállítanak és telepítenek, ami az alkalmazáskód és az alkalmazás függő összes könyvtár kódjának egyesítésének eredménye. Az alkalmazásonkénti egyetlen csomag előnyeinek ellenére ez a megközelítés oda vezet, hogy az alkalmazásokat jelentős, valóban nem használt kódrészekkel szállítják, ami feleslegesen megnöveli a JavaScript-csomagokat, és lelassíthatja a weboldalak betöltését az extra fel nem használt kód miatt. Bár a statikus elemzési technikák léteznek a fel nem használt kód eltávolítására, vizsgálataink azt sugallják, hogy van még hová fejlődni.

javascript

Célkitűzés

A cikk célja a csomagfájlok méretének csökkentésével kapcsolatos probléma megoldása a JavaScript-alkalmazásokban.

Módszer

Ebben az összefüggésben definiáljuk a nem használt idegen funkció (UFF) fogalmát egy függő könyvtárakban található JavaScript-függvény jelölésére, amelyre futás közben nincs szükség. Javasoljuk továbbá a dinamikus elemzésen alapuló megközelítést, amely segíti a fejlesztőket az UFF-ek azonosításában és eltávolításában a JavaScript-csomagokból.

Eredmények

Beszámolunk egy 22 JavaScript alkalmazáson keresztül elvégzett esettanulmányról, amely azt bizonyítja, hogy megközelítésünk átlagosan 26% -os méretcsökkentést eredményezhet (egyes alkalmazásokban akár 66% -kal is).

Következtetés

Arra a következtetésre jutottak, hogy a fel nem használt idegen függvények eltávolítása a JavaScript-csomagokból segít csökkenteni azok méretét, és ezáltal növelheti a meglévő statikus elemzési technikák eredményeit.

Előző kiadott cikk Következő kiadott cikk