r07-01.doc

(278 KB) Pobierz
Helion









Rozdział 1 ¨ Pierwsze kroki (Nagłówek strony)

Rozdział 7

w oryginale 10.

.
Język Java

We wcześniejszych rozdziałach opisano sposób obsługi dokumentów XML w Internet Explorerze przy pomocy JavaScriptu. Jednak JavaScript jest językiem o dość przeciętnych możliwościach i poważniejsze projekty programistyczne robione są poza przeglądarkami takimi jak Internet Explorer. Obecnie językiem najpowszechniej stosowanym do obsługi XML jest Java – jest to język, który poznać musi każdy, kto zamierza poważniej zająć się XML.

Nie wolno mylić Javy z JavaScriptem; mimo że podobne są ich nazwy i pewne aspekty składni, to języki te nie są ze sobą spokrewnione. Java to dzieło firmy Sun Microsystems, JavaScript powstał w Netscape. Java jest językiem o możliwościach znacznie większych niż JavaScript.

Z drugiej strony teraz, kiedy już mamy za sobą lekcje JavaScriptu, łatwiej będzie zapoznawać się z Javą, gdyż składnia jest podobna (języki te nie są wprawdzie ze sobą spokrewnione, ale składnia obu z nich wzorowana jest przynajmniej częściowo na C++). W rozdziale tym i następnym nauczymy się używać Javy i najpopularniejszego pakietu obsługi XML w Javie, XML for Java IBMowskich AlphaWorks.

W tym rozdziale zajmiemy się samą Javą. Znajomość tego języka będzie potrzebna nam w następnych dwóch rozdziałach – musimy poznać klasy Javy i sposób obsługi aplikacji okienkowych.

Poniższy akapit jest niepełny – patrz: komentarz w nim (zaznaczam dodatkowo stylem do Składacza, aby tego braku nie przeoczyć).

W zasadzie tworzenie poważnych aplikacji w Javie jest bardziej złożone niż w JavaScripcie, gdyż Java jest językiem bardziej rozbudowanym. Jak się zapewne domyślasz, język Java jest znacznie obszerniejszy niż to, co opiszemy w tym rozdziale, jeśli chcesz się więcej dowiedzieć, weź odpowiednią książkę. Polecić można książki ....

niech Wydawnictwo wstawi tutaj książki o Javie, które samo uzna za stosowne.

Pamiętaj jednak, że w tym rozdziale jest dość informacji, abyś zrozumiał dalsze rozdziały. Jeśli dobrze już znasz Javę, możesz ten rozdział spokojnie pominąć i od razu przejść do następnego, gdzie omówimy DOM XML dostępny dla Javy (w rozdziale 5 zajmowaliśmy się tym samym modelem, ale z punktu widzenia JavaScriptu).

Informacje na temat Javy w Sieci

Java to dzieło firmy Sun Microsystems. Istnieje sporo stron poświęconych temu językowi, dużo z nich jest na serwerach Suna:

·         http://developer.netscape.com/tech/java/. Witryna programistów Javy prowadzona przez Netscape, znajdziesz tam wiele przydatnych informacji.

·         http://java.sun.com. Główna strona Javy z mnóstwem informacji o tym języku.

·         http://java.sun.com/docs/. Dostępna online dokumentacja języka Java. Traktować ją należy jako wzorzec języka.

·         http://java.sun.com/j2se/

u autora ten adres błędny

·         . Strona poświęcona dostępnej obecnie wersji zestawu programowania w Javie. Adres URL tej strony prawdopodobnie będzie się zmieniał.

·         http://java.sun.com/j2se/1.3/. Strona główna wersji 1.3 Javy, w czasie pisania tej książki najnowszej wersji języka (pełna nazwa to Java 2 Platform, Standard Edition, wersja 1.3).

·         www.javaworld.com. Forum poświęcone Javie z bardzo dużą ilością materiałów na temat tego języka.

Oto kolejna lista adresów, pod które warto zajrzeć. Są to darmowe działające online podręczniki, które pomogą Ci opanować Javę:

·         http://java.sun.com/docs/books/tutorial/index.html. Stworzony przez samą firmę Sun, bardzo obszerny podręcznik.

·         http://gamelan.earthweb.com/javaprogramming/javanotes/. Podręcznik Gamelana.

·         www.javacoffeebreak.com. Niezły podręcznik Javy.

·         www-4.ibm.com/software/developer/education/buildapplet/. Stworzony przez IBM wyjątkowy podręcznik.

Teraz na koniec jeszcze jedna ważna uwaga: Java nie jest językiem dla każdego. Jest to język złożony i na  pełne jego opisanie tysiąca stron byłoby mało. Nie możemy tego języka pominąć, gdyż jest on dla środowiska XML ogromnie ważny, ale jeśli programowanie zdecydowanie Cię nie interesuje, możesz pominąć ten rozdział i dwa następne. Pamiętaj jednak, że praca z XML zapewne prędzej czy później zmusi Cię do poznania języka Java.

Jak się pisze programy w Javie

Język Java zapewne nie jest Ci całkiem obcy – znasz przecież choćby aplety Javy. Aplety, czyli okienkowe aplikacje Javy przeznaczone do pracy w przeglądarkach sieciowych, zdobyły ogromną popularność i wszystkie najważniejsze dzisiaj przeglądarki obsługują tę samą wersję języka. W Internecie znajdziesz miliony gotowych apletów, znajdziesz całe ich darmowe biblioteki. Istnieją nawet aplety przeznaczone do użycia z XML.

Aplet Javy otrzymuje wyznaczony obszar w oknie przeglądarki, może w nim wyświetlać grafikę, kontrolki (takie jak przyciski czy pola tekstowe), tekst i tak dalej. Aplety są interaktywne, gdyż działają w środowisku przeglądarki. Jak już wspomniano, aplety Javy popularność zdobyły bardzo szybko, ale obecnie ich pozycja została znacznie osłabiona, a to z powodu rozwiązań konkurencyjnych, które albo są prostsze w użyciu (na przykład Dynamiczny HTML), albo dają większe możliwości (na przykład Shockwave).

Jednak nie musisz się o Javę zanadto martwić; wprawdzie aplety tracą popularność, ale za to rosną w siłę aplikacje Javy. Głównym powodem jest fakt, że język ten jest niemalże tak silnym narzędziem jak C++, a przy tem jest przenośny między różnymi platformami; możesz na przykład użyć tej samej aplikacji na Windows i na Unixie. Obecnie wiele firm zarzuciło używanie na wewnętrzne potrzeby C++ na rzecz Javy.

Aplikacja Javy nie działa w przeglądarce tak, jak aplet, lecz jest samodzielnym programem. Aplikacje te, podobnie jak aplety, tworzyć mogą własne okna, zresztą później zobaczysz, jak to wygląda. Tak naprawdę aplikacja Javy sama może być przeglądarką, w następnym rozdziale utworzymy aplikację odczytującą z Internetu dokument XML i wyświetlającą na jego podstawie grafikę. Nasz dokument będzie opisywał kółka, jakie mają być narysowane na ekranie.

W naszej pracy z XML skoncentrujemy się na aplikacjach, a nie na apletach Javy (z uwagi na ograniczenia związane z bezpieczeństwem aplety są bardzo ograniczone funkcjonalnie, między innymi niewielkie są ich możliwości w zakresie obsługi plików). Jak zatem tworzy się aplikację Javy? Piszę się aplikację w postaci kodu tego języka, następnie kompiluje się ten kod za pomocą SDK (Java Software Development Kit, w wersjach Javy starszych niż 2 był to Java Development Kit, JDK – z tą ostatnią nazwą nieraz się spotkasz, nawet na stronach Suna). Taka skompilowana aplikacja jest gotowa do użycia.

Aby nie być gołosłownymi, od razu przejdziemy do przykładu. Oto sposób utworzenia aplikacji app, którą zapiszemy w pliku app.java (szczegółami kodu zajmiemy się później):

public class app

{

  public static void main(String[] args)

  {

    System.out.println("Witamy w Javie!");

  }

}

Teraz możemy użyć kompilatora Javy, javac, aby skompilować ten plik do postaci kodu pośredniego app.class – to właśnie app.class będziemy uruchamiali. Właśnie kod pośredni Javy jest przez Javę czytany i uruchamiany. Kod pośredni jest w porównaniu z tekstem bardzo zwarty, dzięki temu aplety są szybko ściągane z Sieci. Ten sam plik z kodem pośrednim można uruchamiać w różnych systemach operacyjnych, czyli kod ten jest przenośny. Poniżej pokazano polecenie kompilujące app.java (używamy tu znaku zachęty % typowo stosowanego w systemie UNIX; w Windows może on przybrać postać C:\XML> lub podobną):

%javac app.java

Utworzony zostanie plik app.class, którego należy używać do uruchamiania aplikacji. Aby aplikację uruchomić, wywołać należy program java rozpowszechniany wraz z Java SDK:

%javac app.java

%java app

Witamy w Javie!

Uruchomiony został nasz kod pośredni z pliku app.class, w wyniku pojawił się tekst Witamy w Javie!. W systemie DOS lub Windows rzecz będzie wyglądała na przykład tak:

C:\XML>javac

to \XML dodałem, bo tak będzie bardziej dydaktycznie

app.java

C:\XML>java app

Witamy w Javie!

Tak właśnie wygląda uruchamianie aplikacji Javy. Istnieje wiele podobieństw między Javą a JavaScriptem, są jednak też między nimi zasadnicze różnice. Na przykład w Javie konieczne jest określanie typów zmiennych, co w JavaScripcie było zbędne. JavaScript jest językiem zorientowanym obiektowo, natomiast Java jest w pełni obiektowa.

Java jest językiem z gruntu obiektowym

Z programowaniem obiektowym pierwszy raz się zetknęliśmy, kiedy używaliśmy JavaScriptu, ale było to bardzo ogólne spojrzenie. W przypadku Javy programowanie obiektowe widać na każdym kroku – przyjrzyj się naszej aplikacji przykładowej:

public class app

{

  public static void main(String[] args)

  {

    System.out.println("Witamy w Javie!");

  }

}

Już w pierwszym wierszu mamy deklarację klasy app. Cały program działa w oparciu o tę klasę, gdyż każda instrukcja zapisana w Javie musi należeć do jakiejś klasy (lub do interfejsu, który jest pojęciem od klasy ogólniejszym). Kiedy Java tę aplikację uruchomi, utworzy obiekt danej klasy i przekaże mu sterowanie. Zatem o ile w JavaScripcie możesz obiektów użyć, to w Javie nie sposób przed nimi uciec.

Teraz przyjrzymy się nieco dokładniej całej idei klas, gdyż musimy temat ten zrozumieć znacznie dokładniej niż wtedy, gdy używaliśmy JavaScriptu. Programowanie obiektowe to po prostu kolejna technika, która umożliwia wcielenie w życie słynnej dewizy dziel i rządź.

Cała sztuka programowania obiektowego polega na zamykaniu danych i funkcji w obiekty, dzięki czemu obiekty te mogą być samodzielnymi jednostkami. Dane obiektu mogą być całkowicie dlań wewnętrzne, czyli prywatne (private), mogą być też udostępniane na zewnątrz, czyli być publiczne (...

Zgłoś jeśli naruszono regulamin