wtorek, 22 sierpnia 2006

HaXe i Neko

Programowanie jest zawsze fajną przygodą. Więc zobaczymy coś nowego. Tworzenie stron WWW obecnie wymaga znajomości PHP po stronie klienta oraz JavaScriptu i ActionScriptu po stronie klienta. Gdyby można było napisać metajęzyk który robiłby to wszystko? Generowałby kod dla serweraj jak dla klienta (jako skrypt JS, bądż plik SWF). Nie od dzis wiadomo, że aplikacje napisane w bajtkodzie są szybsze od aplikacji które są kompilowane podczas uruchomienia. Oznacza to załadowanie i uruchomienie bajtkodu w maszynie witualnej. W ten sposób na poziomie binarnym można napisać całą aplikację, którą da się uruchomić na każdej maszynie wirtualnej.

Taką możliwość oferuje nowa maszyna wirtualna o nazwie Neko. Narazie jest tylko jeden język HaXe w którym można programować dla tej maszyny wirtualnej. Kompilator HaXe pozwala też na generowanie kodu JavaScriptu dla Ajax i jak tworzenie plików SWF ( w tym dla wersji 9).
Sam język HaXe przypomina w składni ActionScript ( z kilkoma nowościami takimi jak typy interfejsu, dynamiczna obsługa typów danych, anominowe obiekty, typy ogólne, iteratory)
Ten kompilatoir obsługuje takze konpilację waunkową. HaXe może wygenerować bajtkod dla maszyny wirtualnej Neko. Do obsługi po stronie serwera napisano moduł do serwera Apache, który pozwala na wykonywanie bajtkodu przez Apache.

Na dzień dzisiejszy w HaXe napizasno biblioteki do:

  • parsowania i obsługi dokumentów XML w oparciu o DOM
  • wyrazeń regularnych
  • aplikacji po stronie serwera korzystających z prostego systemu szablonów
  • testów jednostkowych
  • wykorzystania logów, komunikatów do debugowania
  • obsługi wyjatków
  • ładowania danych z zewnatrz

  • można pisać aplikacje typu Ajax
  • po stronie serwera mamy obsługę baz danych SQLite, PostgreeSQL i jak MySQL
  • dostraczono obiektowy model obsługi zapytań SQL wraz z mapowaniem struktury bazy danych do obiektów
  • do obsługi poczty, obsługi adresów URL
  • do obsługi tekstów takich jak kolorowanie składni języka HaXe
  • wykorzystania Flash Remoting do komunikacji pomędy serwerem a aplikacja (przy pomocy protokolu AMF)
Opis języka HaXe i jak jego API moża przeczytać na stronie poświęconej temu językowi.

Obecnie mamy możliwość tworzenia aplikacji okienkowych dzięki ScreenWeaver HX. Istnieje wiele ciekawych projektów mi.in do obsługi grafiki Polecam zapoznanie się z grami we Flashu (zawieraja kod zródłowy HaXe). Bardzo interesujacym przykładem jest aplikacja hxBlog pokazująca to jak można napisać aplikację internetową. Dla tych, którzy interesują się wykorzystaniem wzorca projektowego MCV polecam zapoznanie się z kodem zródłowym małej aplikacji: pokaz slajdów.

Twórca Neko i HaXe Nicolas Cannasse na pewnej konferencji przedstawił możliwości HaXe. Napisał też inspirujący artykuł na temat tego języka.

Technorati Tags:

1 komentarz:

dervsh pisze...

niestety link do inspirującego artykułu prowadzi do strony która nie istnieje.