Mongolopedia Wolna Encyklopedia

Napisz więc to, co widziałeś, i to, co jest, i to, co potem musi się stać.

Narzędzia użytkownika

Narzędzia witryny


wiki:dla_edytujacych

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Poprzednia rewizja po obu stronach Poprzednia wersja
Nowa wersja
Poprzednia wersja
wiki:dla_edytujacych [2011/04/22 12:07]
freesz
wiki:dla_edytujacych [2011/04/21 22:00] (aktualna)
Linia 7: Linia 7:
 ==== Wprowadzenie do JavaScript + jQuery ==== ==== Wprowadzenie do JavaScript + jQuery ====
 === Podstawy === === Podstawy ===
-Cała gra powstaje w oparciu o HTML i JavaScript z biblioteką jQuery. JavaScript jest potężnym, a zarazem łatwym w użyciu językiem programowania, dającym nam bardzo duże możliwości. Począwszy od prostych kalkulacji i operacji na zmiennych, aż po zaawansowany rendering 3D. Biblioteka jQuery ułatwia nam tworzenie animacji i programowanie zdarzeń(wkrótce się wyjaśni, co to oznacza). Koniec więc z marudzeniem typu: "szkoda, że w naszej grze nie można tego zrobić". Technologie, które zdecydowałem się użyć, absolutnie nas nie ograniczają i pozwalają nam osiągnąć właściwie każdy rezultat(oczywiście wszystko jest kwestią czasu (};D-). Ale przechodząc do konkretów... JavaScript jest językiem C pochodnym, co oznacza, że jego składnia bazuje na tym właśnie języku. Może to być nowością dla osób, które znają jednie Pascala, ale myślę, że JavaScript, jest na tyle łatwa i intuicyjna, że nikt nie powinien mieć problemów z opanowaniem jej podstaw.+Cała gra powstaje w oparciu o HTML i JavaScript z biblioteką jQuery. JavaScript jest potężnym, a zarazem łatwym w użyciu językiem programowania, dającym nam bardzo duże możliwości. Począwszy od prostych kalkulacji i operacji na zmiennych, aż po zaawansowany rendering 3D. Biblioteka jQuery ułatwia nam tworzenie animacji i programowanie zdarzeń(wkrótce się wyjaśni, co to oznacza). Koniec więc z marudzeniem typu: "szkoda, że w naszej grze nie można tego zrobić". Technologie, które zdecydowałem się użyć, absolutnie nas nie ograniczają i pozwalają nam osiągnąć właściwie każdy rezultat(oczywiście wszystko jest kwestią czasu (};D-). Ale przechodząc do konkretów... JavaScript jest językiem C pochodnym, co oznacza, że jego składnia bazuje na tym właśnie języku. Może to być nowością dla osób, które znają jednie Pascala, ale myślę, że JavaScript, jest na tyle łatwa i intuicyjna, że nikt nie powinien mieć problemów z opanowaniem jej podstaw. Wszystkie instrukcje(przypisanie zmiennych, wywoływanie funkcji) w JS muszą kończyć się znakiem ";". JavaScript umożliwia umieszczanie komentarzy w kodzie. Służy do tego podwójny ukośnik(%%//%%). Jeżeli przeglądarka natknie się na ten symbol reszta linii zostanie potraktowana jako komentarz i pominięta.
 === Zmienne === === Zmienne ===
 +JavaScript jest językiem(w przeciwieństwie do Pscala) dynamicznie typowanym. Oznacza to, że każda zmienna może przyjmować dowolne wartość. Spróbujmy posłużyć się przykładem. Wyobraźmy sobie zmienną a, zawierającą liczbę np. 5. W językach statycznie typowanych zmiennej tej nie moglibyśmy przypisać innej wartości niż jakiejś innej liczby. W JavaScripcie jednak nic nie stoi na przeszkodzie, aby stała się łańcuchem znaków.
  
-=== Operacje matematyczne ===+Drugą cechą zmiennych w JS jest brak potrzeby, tak jak to było w Pascalu definiować zmiennych na początku. Zmienne możemy definiować w dowolnym miejscu programu. 
 + 
 +Trzecią istotną cechą zmiennych w JS są zasięgi. Ta kwestie też została bardzo uproszczona. Na razie możemy przyjąć, że wszystkie zmienne są globalne tzn. niezależnie gdzie zdefiniowałeś zmienną, jest ona widoczna w każdym innym miejscu programu. Co prawda jest to nie do końca prawda, ale na razie możemy przyjąć, że tak jest. 
 + 
 +To może tyle teorii. Zobaczmy teraz, jak to wygląda w praktyce. Oto przykładowa definicja zmiennej: 
 + 
 +'' 
 +var test 5; 
 +'' 
 + 
 +Definicja zaczyna się od słowa kluczowego var. Nie jest ono konieczne, ale lepiej je zawrzeć, ma to związek z zasięgiem zmiennych, nad którym jak powiedziałem na razie nie będę się rozwodzić. Następnie następuje nazwa zmiennej. Nazwa nie może się zaczynać od cyfry. Nazwa może zawierać litery, cyfry oraz znaki "_". Wielkość znaków w nazwie ma znaczenie. Nazwa nie może być żadnym ze słów kluczowych JS: abstract, boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, extends, false, final, finally, float, for, function, goto, if, implements, import, in, instanceof, int, interface, long, native, new, null, package, private, protected, public, return, short, static, super, switch, synchronized, this, throw, throws, transient, true, try, var, void, while, with. 
 + 
 +Po nazwie zmiennej następuje operator przypisania jest to "=", a nie jak w Pascalu, ":=". Warto o tym pamiętać. Początkowi programiści często mylą operator przypisania: "=", z operatorem porównania: "==". Następnie określamy wartość zmiennej. Zmienne mogą przyjmować cztery typy wartości: liczby, ciągi znaków, tablice, tablice klucz - wartość. W poprzednim przykładzie zmiennej test, właśnie przypisaliśmy liczbę 5, jednak niekoniecznie musi to być liczba całkowita, aby przypisać do zmiennej liczbę zmiennoprzecinkową: 
 + 
 +'' 
 +var test2 = 5.54; 
 +'' 
 + 
 +Kolejnym typem wartości jest ciąg znaków. Zawartość ciągu może się zawierać pomiędzy znakami apostrofów: ' ', lub cudzysłowów "". Możemy używać tych oznaczeń zamiennie. Oto przykłady: 
 + 
 +'' 
 +var test3 = "Testowa zmienna. Mogę tu bez problemu używać znaków apostrofu ' ', ale nie mogę użyć tu znaku cudzysłowu.";\\ 
 +var test3 = 'Testowa zmienna. Mogę tu bez problemu używać znaków cudzysłowu "", ale nie mogę użyć tu znaku apostrofu.'; 
 +'' 
 + 
 +Trzecim typem wartości jest tablica. Tablice w JS są najogólniej rzecz biorąc zbiorem wartości dowolnych typów. Oto przykład: 
 + 
 +'' 
 +var tablica = [12, "Ciąg znaków", ['Test', 22], 4]; 
 +'' 
 + 
 +Kolejnym elementom tablicy są przypisywane kolejne liczby całkowite, poczynając od 0. Aby odczytać konkretny element tablicy używamy następującej składni:  
 + 
 +'' 
 +tablica[nr elementu]; 
 +'' 
 + 
 +Przykłady: 
 + 
 +'' 
 +var tablica = ['a', 54, 7, ["t", 5.5]];\\ 
 +tablica[0];%%//%%a\\ 
 +tablica[2];%%//%%7\\ 
 +tablica[3][0];%%//%%t 
 +'' 
 + 
 +Aby usunąć element z tablicy używamy słowa kluczowego delete. Jednak należy pamiętać, że JS nie zmienia zmienia numeracji w tablicy(jak usuniemy z tablicy pierwszy element drugi element **nie stanie** się pierwszym itd.), a usuniętą wartość zastępuje słowem kluczowym undefined(w JS undefined znaczy że dany element nie istnieje. Taką samą wartość zwróci nam program jeżeli zapytamy go o wartość niezdefiniowanej zmiennej) np. 
 + 
 +'' 
 +var tablica = ['a', 54, 7, ["t", 5.5]];\\ 
 +delete tablica[0];%%//%%Teraz tablica wygląda następująco: [undefined ,54, 7, ["t", 5.5]] \\ 
 +'' 
 + 
 +Ostatnim typem wartości jest tablica klucz - wartość. Jest ona bardzo zbliżona do tablicy, z tym że wartościom nie są przypisywane kolejno liczby, ale nazwy zdefiniowane przez użytkownika. Przykładowa definicja tablicy klucz - wartość: 
 + 
 +'' 
 +var obiekt = {test: "aaaa", test2:12, test3:["a", 12]} 
 +'' 
 + 
 +Zasady nazywania kluczy są identyczne jak zasady nazywania zmiennych. Wartość z tablicy klucz - wartość możemy odczytać na dwa sposoby: 
 + 
 +'' 
 +var obiekt = {test: "aaaa", test2:12, test3:["a", 12]}\\ 
 +obiekt.test%%//%%"aaaa"\\ 
 +obiekt["test2"]%%//%%12\\ 
 +obiekt.test3[0]%%//%%"a" 
 +'' 
 + 
 +=== Funkcje i operacje matematyczne ===
  
 === Instrukcje warunkowe i pętle === === Instrukcje warunkowe i pętle ===
wiki/dla_edytujacych.1303466848.txt.gz · ostatnio zmienione: 2011/04/21 22:00 (edycja zewnętrzna)