Tworzenie klas w Dojo (stary mechanizm < 1.6)

Opisany tu sposób tworzenia „klas” Dojo jest już wycofywany. Aktualnie w Dojo Toolkit zaleca się (a w przyszłości będzie to jedyne dostępne rozwiązanie), by tworzyć moduły zgodne z AMD. Zobacz nowszy wpis o tym jak tworzyć moduły Dojo zgodne z AMD.

Dojo jest bardzo rozbudowanym i jednocześnie przyjaznym toolkitem JavaScript. W JavaScript, jak pewnie wiesz nie ma klas. Dojo wprowadza jednak zarówno takie pojęcie, jak i zestaw mechanizmów pozwalających bardzo przyjaźnie tworzyć „klasy JavaScript”.

Czytaj dalej Tworzenie klas w Dojo (stary mechanizm < 1.6)

Książka: „JavaScript. Programowanie obiektowe”

Okładka JavaScript. Programowanie obiektowe

W świecie JavaScript rewolucja za rewolucją. Na szczęście wyłania się już ścisła elita autorów, których będzie można polecać z zamkniętymi oczami i nie bać się ich cytować, będąc pewnym, że głupot nie gadają.

Stoyan Stefanov – zapamiętać to nazwisko.

Połączenie Erica Meyera i Douga Crockforda. Zdecydowanie najlepsza książka o JavaScript (nie tylko obiektowym, ale całkowicie ujmująca temat) jaką przeczytałem. A proszę mi wierzyć – było ich kilka.

Stawiam ją na równi z „Mocnymi stronami JavaScript” (D. Crockford) jeśli chodzi o wiedzę, którą autor przekazał w książce. Jednocześnie uważam, że jest o poziom lub dwa łatwiejsza do przyswojenia. Przykłady są bardziej intyicyjne, całość sprawia wrażenie pełnej prezentacji, a nie jedynie szczątkowych notatek. Czytaj dalej Książka: „JavaScript. Programowanie obiektowe”

Książka: „Programowanie obiektowe w PHP 5”

Okładka Programowanie obiektowe w PHP 5

PHP jest bardzo przyjaznym i popularnym językiem. Jego popularność bierze się w głównej mierze z prostoty. Właśnie – prostoty, a nie prostactwa.

PHP, szczególnie w wersji 5, jest naprawdę pełnoprawnym językiem programowania, pozwalającym na tworzenie dużych i skomplikowanych projektów. Książka Hasina Haydera próbuje pokazać możliwości piątej odsłony języka w zakresie OOP (programowania zorientowanego obiektowo).

W książce spodobał mi się układ. Czytając miałem wrażenie, że tworzy ona całość. Tematy jakby wynikały jeden z drugiego. Pozycja nie jest zbyt obszerna (treści < 250 stron) i czyta się ją szybko i sprawnie. Tekst okraszony został sporą ilością kodu prezentującego aktuanie omawiane aspekty, co także przemawia na korzyść książki.

Ucieszyło mnie także, że jeden rozdział został poświęcony testom jednostkowym, co uważam za bardzo poprawne w nauczaniu „nowego pokolenia” programistów. Czytaj dalej Książka: „Programowanie obiektowe w PHP 5”

Gettery i settery w PHP

Najpopularniejszym paradygmatem programowania jest programowanie zorientowane obiektowo. Obiekt posiada jakieś właściwości, które [IMO] najczęściej powinny być prywatne. Warto by było móc się do nich jakoś odwoływać, czy to podczas zapisywania danych, czy też w celu odczytu. Do tego bardzo przydatne okazać się mogą funkcje popularnie zwane getter („akcesor” – pobierająca dane) bądź setter („mutator” – ustawiająca).

W tym wpisie postaram się pokazać kilka możliwych podejść do tego zagadnienia.

Czytaj dalej Gettery i settery w PHP

Ajax w oparciu o pływającą ramkę

Ajax w szerszym znaczeniu oznacza komunikację z serwerem [wymianę danych z serwerem] bez konieczności przeładowania strony. Często mówiąc Ajax ma się na myśli także DHTML.

Nie o tym jednak będzie ten artykuł. Mam zamiar pokazać jak w łatwy sposób korzystać z dobrodziejstw Ajaksa bez jednego z filarów – obiektu XMLHttpRequest. Zastąpimy go pływającą ramką, a ramkę tę obudujemy w obiekt XMLHttpIframeRequest, który ma identyczny interfejs z natywnym ajaksowym obiektem.

Czytaj dalej Ajax w oparciu o pływającą ramkę

[JS] Zaokrąglanie liczb z zadaną dokładnością

Jeśli chcemy w JS sprowadzić liczbę z częścią ułamkową do liczby całkowitej możemy wykorzystać metodę Math.round(liczba).

Metoda ta przyjmuje jeden parametr, jest to liczba, która zostanie zaokrąglona wg prawideł matematycznych. Co jednak kiedy chcemy uzyskać zadaną liczbę miejsc po przecinku?

Nie ma wprost metody zaokraglanie(liczba, doMiejscPoPrzecinku). Można jednak łatwo napisać funkcję, która to dla nas zrobi: Czytaj dalej [JS] Zaokrąglanie liczb z zadaną dokładnością

Dlaczego new Boolean jest złym pomysłem

Javascript to język w pełni obiektowy. Obiektem jest wszystko: funkcja – obiekt, obiekt – obiekt, zmienna – obiekt… Eh, no i ta pełność ma swoje „widzimisie” i problemy.

Wartości logiczne

W klasycznej logice są dwie: true i false (prawda i fałsz). W JS istnieje jednak konstruktor dla wartości logicznych:

[javascript]var oBool = new Boolean(false);[/javascript] Czytaj dalej Dlaczego new Boolean jest złym pomysłem

Różne sposoby konkatencji stringów w JS

Jest kilka sposobów na łączenie cięgów znaków. W tym artykule opiszę 3.

Sposób I – „optymistyczny”

Optymistyczny dlatego, że używa się samych plusów.

[javascript]var string_1 = 'Ala ma ';
var string_2 = 'kota';
alert(string_1 + string_2);[/javascript]

Korzystając z tej metody pamiętaj o różnych niespodziankach związanych z wykorzystywaniem operatora `+’, który jest też wykorzystywany do dodawania liczb. Czytaj dalej Różne sposoby konkatencji stringów w JS