uFileStyle 1.1 wydany

W ekspresowym tempie udało mi się przygotować aktualizację innego pluginu: uFileStyle.

W zaledwie kilkanaście godzin po wydaniu uCount przygotowałem nową wersję uFileStyle.

Podobnie, jak w przypadku uCount, pierwszą zmianą jest nazwa pluginu. Dążę do spójnego nazewnictwa wszystkich moich projektów, a zmiana nazwy w przypadku zupełnie nieznanego (jeszcze!) pluginu wydaje mi się raczej zasadna.

Oprócz nowej nazwy, są też poprawki w kodzie. Nie ma nowych funkcji, ale w przypadku tego pluginu ciężko wymyślić dodatkowe funkcje, które byłyby jeszcze potrzebne. Zamiast kombinowania, skupiłem się na optymalizacji kodu. Zmiany, jakie wprowadziłem, dały ciekawy rezultat: dramatyczny wzrost wydajności. Benchmark obejmował wykonanie pluginu na 50000 pól uploadu plików w pięciu seriach i wyciągnięciu z nich średniego wyniku. Wersja 1.0 osiągała czas na poziomie 12 sekund. Nowa wersja wyknuje się sześciokrotnie szybciej: 2 sekundy (Google Chrome 22, AMD Athlon 2X 5500+, Windows 7 64 bit).

Znaczenie tego wzrostu wydajności jest znikome, bo kto normalny ma 50000 pól uploadu na jednej stronie? Jest jednak jeszcze jeden warty uwagi efekt „uboczny”. Kod wersji 1.0 wykorzystywał funkcje delegacji zdarzeń dostępne w jQuery 1.7. Funkcje te nie są najszybsze na świecie, delikatnie mówiąc. Wersja 1.1 korzysta z „gołego” JavaScriptu, gdzie tylko się da, polegając na jQuery tylko tam, gdzie faktycznie oszczędzał sporo wysiłku podczas pisania kodu. Przypisywanie callbacków do zdarzeń bez korzystania z jQuery nie tylko przyspieszyło cały plugin, ale sprawiło, że uFileStyle można teraż odpalić z dowolną wersją jQuery (testowałem do wersji 1.2.3 włącznie).


Napisz komentarz


Szukaj wpisów


Chmura tagów