Skip to main content

Uglifowanie

Termin “uglifying” wywodzi się z dziedziny rozwoju oprogramowania. Termin ten jest używany do opisania celowego usuwania niepotrzebnych znaków z kodu źródłowego bez wpływu na funkcjonalność programu. Dotyczy to na przykład:
Miejsca
[su_list icon=”icon: commenting-o” icon_color=”#187bc0″ indent=”-5″]

  • Uwagi
  • Podziały linii
  • Identyfikatory bloków
[/su_list] Te specjalne znaki są pomocne, aby kod źródłowy programu był bardziej przejrzysty i łatwiejszy do odczytania dla programistów. Znaki te nie odgrywają jednak roli w realizacji programów i nie są wymagane. Jako ogólna koncepcja, proces ten jest często określany jako “minifikacja”. Minifikacja jest szczególnie wykorzystywana w dziedzinie tworzenia stron internetowych. Dzięki temu usuwanie zbędnych znaków jest pomocne nie tylko w przypadku skryptów JS(JavaScript), ale jest również stosowane w plikachHTML i CSS.

YouTube

By loading the video, you agree to YouTube’s privacy policy.
Learn more

Load video

Ogólne informacje na temat uglifowania

Douglas Crockford, amerykański informatyk i autor książki “JavaScript the Good Parts”, opublikował w 2003 roku narzędzie JSMin, które służyło do usuwania białych spacji i komentarzy z kodu źródłowego JavaScript. Koncepcja ta została przejęta przez Google i przez lata implementowana w postaci licznych narzędzi, tak że dziś dostępnych jest wiele wtyczek, narzędzi i bibliotek służących do minimalizowania kodu źródłowego. Pod względem funkcjonalności, narzędzia te mają zazwyczaj następujące cechy wspólne:
[su_list icon=”icon: share” icon_color=”#187bc0″ indent=”-5″]

  • Minifikacja: W ramach tego procesu wszystkie zbędne ciągi są skracane lub w razie potrzeby całkowicie usuwane.
  • Linting: Zminifikowany kod źródłowy jest sprawdzany pod kątem błędów składniowych.
  • Konkatenacja: Podobne typy danych mogą być konkatenowane w jednym pliku. Obejmuje to pliki JavaScript i CSS z rozszerzeniami .js i .css.
[/su_list]

Uglifowanie w praktyce

W ramach tego procesu kod źródłowy jest przetwarzany na różne sposoby:
[su_list icon=”icon: hand-o-right” icon_color=”#187bc0″ indent=”-5″]

  • Zbędna przestrzeń jest eliminowana. Obejmuje to na przykład spacje i przerwy między wierszami.
  • Nazwy zmiennych i stałych są skracane i redukowane do niezbędnego minimum, tak że nowe nazwy w wielu przypadkach składają się tylko z jednego znaku.
  • Aby zaoszczędzić miejsce, tablice są przekształcane w obiekty.
  • W deklaracjach podprogramów można zmieniać kolejność.
  • Długie instrukcje IF-ELSE są optymalizowane.
[/su_list]

Dostępne narzędzia i aplikacje

Obecnie dostępnych jest wiele narzędzi, skryptów i aplikacji do upglifowania kodu źródłowego. Z niektórych z nich można korzystać online poprzez “Kopiuj i Wklej“. Dobrze znanymi przykładami takich narzędzi internetowych są dostępne online YUI-Compressor lub Jsmini. Do aplikacji instalowanych lokalnie na komputerze i sterowanych za pomocą graficznego interfejsu użytkownika(GUI) należą CodeKit i Koala. Aplikacje te poza minimalizacją oferują również inne funkcjonalności. Ponadto istnieją aplikacje do ujednolicania kodu, które są sterowane z wiersza poleceń. Do takich narzędzi należą na przykład Gulo, Grund, czy kompilator Google Closer.

Wykorzystanie użyteczności do rozwoju

Wiele narzędzi nie tylko zmniejsza rozmiar kodu źródłowego, ale także analizuje i sprawdza wszystkie odwołania i składnię pliku kodu źródłowego. Proces ten przynosi następujące korzyści w kontekście rozwoju oprogramowania i stron internetowych:
[su_list icon=”icon: hand-o-right” icon_color=”#187bc0″ indent=”-5″]

  • Witryny ładują się szybciej i są bardziej responsywne.
  • wyższa wydajność podczas transferu danych
  • lepsze doświadczenie użytkownika dzięki zoptymalizowanej użyteczności
  • Kod źródłowy jest walidowany i sprawdzany pod kątem błędów
    Ponadto uglifowanie ma tę decydującą zaletę, że konkurenci nie mogą po prostu skopiować i odtworzyć kodu źródłowego, ponieważ przejrzystość i zrozumiałość kodu jest znacznie ograniczona.
[/su_list]

Masz jeszcze jakieś pytania?

Prosimy o kontakt z nami


Dalsze treści