Minifikacja
W informatyce minifikacja to proces usuwania zbędnych elementów i przepisywania kodu w celu zmniejszenia rozmiaru pliku. Zwykle wykonuje się ją w przypadku zasobów stron internetowych, takich jak pliki HTML, CSS i JavaScript. Zmniejszenie rozmiaru zasobów internetowych pozwala szybciej przesyłać pliki, dzięki czemu strony internetowe ładują się szybciej.
Istnieje kilka sposobów minifikowania danych. Najbardziej podstawowy polega na usunięciu komentarzy, zbędnych spacji i podziałów wierszy znaków (nowego wiersza). Komentarze i białe znaki ułatwiają odczytywanie kodu, ale przeglądarka je ignoruje. Dlatego te elementy można bezpiecznie usunąć przed opublikowaniem. Inną metodą jest ograniczenie ilości kodu potrzebnego dla każdej instrukcji. W CSS często osiąga się to przez konwersję pełnej składni CSS na skróconą składnię CSS. Na przykład definicja margin może zajmować siedem wierszy w pełnej składni, ale tylko jeden w składni skróconej. W JavaScript długie nazwy zmiennych można zastąpić krótszymi nazwami często pojedynczym (znakiem.
Poniżej przedstawiono przykład kodu CSS przed minifikacją i po niej. Zwróć uwagę, że usunięto komentarze, spacje, podziały wierszy i zbędne średniki. Kod został również przekonwertowany z pełnej składni CSS na skróconą.
Standardowy kod CSS
img.left /* float left 400px image */
{
float: left;
max-width: 400px;
margin-top: 8px;
margin-right: 30px;
margin-bottom: 12px;
margin-left: 0px;
}
Zminifikowany kod CSS
img.left{float:left;max-width:400px;margin:8px 30px 12px 0}
Zaawansowane algorytmy minifikacji mogą jeszcze bardziej zmniejszyć rozmiar pliku. Na przykład minifikator CSS może znaleźć i usunąć powtarzające się wiersze w pliku CSS. Może również połączyć podobne definicje CSS w jedną instrukcję. Minifikator JS może nawet przepisać funkcje JavaScript tak, aby działały wydajniej.
Minifikacja kodu często pozwala zaoszczędzić tylko kilka kilobajtów. Na przykład standardowy plik CSS może mieć 50KB, a jego zminifikowana wersja 40KB. Jednak podczas poprawiania szybkości ładowania strony liczy się każdy kilobajt. Celem dobrego minifikatora jest możliwie największe zmniejszenie rozmiaru pliku bez żadnego wpływu na sposób, w jaki kod jest analizowany lub przetwarzany. Niezależnie od używanego minifikatora programiści zwykle zachowują niezminifikowaną wersję kodu do późniejszej edycji.
Minifikacja a kompresja
Chociaż zarówno minifikacja, jak i kompresja plików zmniejszają rozmiar pliku, nie są tym samym. Minifikacja po prostu zmienia tekst, natomiast kompresja plików całkowicie przepisuje kod binarny znajdujący się w pliku. Aby można było odczytać skompresowany plik jako plik tekstowy, należy go zdekompresować za pomocą narzędzia do dekompresji plików. Wiele witryn internetowych łączy minifikację z kompresją plików „gzip”, aby możliwie najbardziej zmniejszyć rozmiar zasobów internetowych.
Sprawdź swoją wiedzę