Pokochać JavaScript

25 stycznia 2010

Stało się i nie ma już odwrotu. Trzeba nauczyć się JavaScript. Nie, nie mówię o sobie bo ja już go znam (na jakimś tam akceptowalnym poziomie :) ). Mówię do Ciebie.

Nie pamiętam kiedy pierwszy raz zetknąłem się z JavaScript ale wiem na co wtedy była moda. Implementacja tego języka w wielu przeglądarkach kulała a jeżeli nawet coś bardziej złożonego działało to w każdej przeglądarce trzeba było to napisać trochę inaczej. Z tego powodu nie było wielu zaawansowanych koderów JS a w sieci krążyły różne skrypciki, które webmasterzy dzisiaj zgodnie określają mianem wodotrysków. Implementacja zegarka albo kalkulatora, „padający śnieg” czy animowany tekst podążający za kursorem myszki – oto na co było stać większość programistów JS i czym zachwycali się twórcy stron www.

Wreszcie przyszło jednak opamiętanie i wszystkie straszydła zaczęły znikać z sieci. Bo na cholerę komuś zegarek na stronie skoro każdy ma go w prawym dolnym rogu… ?

Nadeszły gorsze czasy dla JS… co wyszło temu językowi tylko na dobre :) Na całe szczęście język nadal się rozwijał a producenci przeglądarek nie zapomnieli o nim i pomału programowanie ze znośnego stawało się przyjemne. Co mądrzejsi zaczęli się zastanawiać jak wykorzystać potencjał, niemały potencjał należy dodać, tego języka. Po cichu zaczęły się pojawiać jakieś bardziej ambitne próby stworzenia czegoś praktycznego w JavaScript.

Może i Google Maps nie przyniosłoby ze sobą otrzeźwienia (mimo zaawansowanego użycia JS) gdyby nie to, że wykorzystano obiekt XMLHttpRequest (wymyślony przez Microsoft) dzięki któremu od tamtej chwili webmasterzy na całym świecie mogą się cieszyć technologią znaną pod nazwą AJAX.

I zaczęło się :) Wchodzisz sobie na stronę, klikasz, coś się dzieje, ewidentnie pobierane są nowe informacje z serwera a strona się nie przeładowała… To była rewolucja, technika ta szybko stała się pragnieniem każdego właściciela www. JavaScript nareszcie został doceniony, to były jego drugie narodziny. Szczęśliwie zbiegło się to w czasie z już całkiem przyzwoitymi implementacjami JS w przeglądarkach.

Dalej opowiadać chyba już nie trzeba, gdyby nie powyżej opisane wydarzenia to Internet z pewnością wyglądałby dzisiaj i działał zdecydowanie gorzej. Właściwie to nawet może nie mielibyśmy dzisiaj Web 2.0? Kto wie, w końcu JS i AJAX miały w tym trendzie bardzo duży udział a nowe możliwości były inspiracją dla pierwszych pionierów.

Dzisiaj programowanie w JS to zupełnie inna bajka niż wtedy gdy pierwszy raz się nim zainteresowałem. Twórcy przeglądarek prześcigają się w implementacji ekstremalnie szybkich silników JavaScript, mamy do wyboru wiele frameworków i bibliotek ułatwiających życie webmasterom a Google jasno daje do zrozumienia swoimi rozwiązaniami (Gmail, Google Maps, Google Docs etc. oraz cała idea Chromium OS), że bez JS już się nie da…

Zachęcam wszystkich do poznawania możliwości JS. Zapewniam Cię, że jeżeli wiążesz swoją przyszłość z tworzeniem stron www to nie masz wyjścia ;)

Na nasze szczęście istnieją takie projekty jak jQuery, dzięki któremu programowanie w JS to poezja. Wybór frameworka należy do Ciebie ale podpowiem Ci, że ja już nie zabieram się za żaden projekt bez jQuery :) Oczywiście czasami coś prostego lepiej zaprogramować w czystym JS niż ładować dużą bibliotekę tylko po to aby obsłużyć jeden przycisk. Pamiętaj o tym.

Jeżeli na początku Twojej przygody brakuje Ci wielu rozwiązań z PHP to polecam zainteresować się projektem php.js. Nie radzę dodawać tej biblioteki do swoich stron (chociażby z powodu jej rozmiarów) ale łatwiej będzie Ci się czegoś nauczyć gdy zobaczysz jak zaimplementowane są w JS funkcje z dobrze znanego Ci języka.

Jest też coś dla programistów Java. Napisz wszystko w Javie i użyj Google Web Toolkit a kompilator sam zbuduje całą aplikację łącznie ze skryptami JS. Chociaż nie wszyscy są zdania, że to dobre rozwiązanie…

Podsumowując, chociażbyś bardzo chciał to JavaScript nie unikniesz. Ale nie ma ku temu powodów, czasy się zmieniły zdecydowanie na korzyść tego języka. Zacznij go odkrywać a zobaczysz ile nowych możliwości otworzy się przed Tobą i jak łatwo uzyskać niektóre efekty (zwłaszcza z pomocą narzędzi typu jQuery :) ).


Google Maps

03 marca 2009

Ostatnio musiałem mocno podszkolić się w JavaScript i bardzo dobrze poznać możliwości API Google Maps. Natrafiłem na kilka nietypowych problemów, wiele ciekawych rozwiązań itd. Przeszukałem mnóstwo stron internetowych. Kilka z nich zasługuje na szczególną uwagę dlatego postanowiłem Wam (i przy okazji sobie) zrobić małą ściągawkę.

Oto adresy stron www, które warto odwiedzić gdy trzeba coś wyrzeźbić w Google Maps:

http://code.google.com/intl/pl/apis/maps/
Oczywiście zawsze należy zacząć od oficjalnej dokumentacji. Większość użytkowników potrzebuje podstawowych funkcjonalności i na tej stronie skończą poszukiwania rozwiązań swoich problemów ;)

http://groups-beta.google.com/group/Google-Maps
Drugie z najpopularniejszych miejsc, gdzie można znaleźć pomoc a także zadać jakieś konkretne pytanie to grupa dyskusyjna Google Maps. Czytaj dalej »


Mini generator kodu CSS

20 lutego 2008

Kolejna mała ciekawostka ;) Na stronie www.csstypeset.com można znaleźć mały edytorek w którym z łatwością przygotujemy wygląd tekstu i dostaniemy kod CSS odpowiedzialny za jego sformatowanie. Wszystko oparte na Java Script. Może przyda się osobom, które uczą się CSS bo można łatwo podejrzeć która komenda jest za co odpowiedzialna.

Po pięciu minutach..
Właśnie się okazało, że tego typu narzędzi jest dużo więcej ;) Ja znalazłem jeszcze trzy:


WordPress: kolorowanie składni

11 lutego 2008

GeSHiChciałbym wszystkim polecić pewien plugin do wordpress dzięki któremu na naszym blogu pojawią się ładnie pokolorowane kawałki kodu z przeróżnych języków programowania. Przykład działania można zobaczyć w niejednym wpisie na tym blogu. Plugin nazywa się iG:Syntax Hiliter. Niestety ostatnia wzmianka o nim na stronie autora pochodzi ze stycznia 2006.

Problem pojawił się u mnie wczoraj gdy pisałem o smarty i coś się knociło z kolorowaniem składni przy komendzie {assign}.

Rozwiązanie jest proste, trzeba zaktualizować GeSHi (Generic Syntax Highlighter). Jest to bardzo zacny skrypt w php, który pozwala kolorować składnię ponad siedemdziesięciu języków programowania :) I ciągle dochodzą nowe.

Aktualizacja jest banalna, trzeba przekopiować i nadpisać plik geshi.php oraz katalog geshi ze skryptu GeSHi do naszego pluginu.

Jednak z ciekawości poszukałem innych tego typu rozwiązań. Większość korzysta właśnie z GeSHi (np. WP-Syntax lub CodeHighlighter) ale znalazłem też dwa inne, ciekawe projekty.

Pierwszy to coś dla wymagających bo obsługuje ponad 200 języków programowania. Niestety ma poważną wadę ponieważ wymaga zainstalowanego na serwerze edytora tekstowego VIM oraz musimy mieć dostęp do perla. Nazywa się to vimcolor.

Drugi to bardzo ciekawy projekt o nazwie SyntaxHighlighter. Sam plugin to nic nadzwyczajnego ale korzysta on z czegoś co nazywa się identycznie jak plugin i działa w czystym Java Script! Prawda, że bardzo wygodne? :) Stronę projektu skryptu w JS znajdziemy tutaj. Wygląda to i działa bardzo fajnie. Jedyną wadą jest mała ilość obsługiwanych języków ale dla większości osób możliwości są wystarczające.

Ja już nie będę eksperymentował, zostanę przy moim pluginie ale jeżeli ktoś dopiero zamierza dodać kolorowanie składni do swojego bloga to zachęcam do sprawdzenia kilku skryptów.