HTML jest standardowym językiem hipertekstowym do przygotowania stron WWW i ma kilka różnych wersji. Wiele przeglądarek stron WWW rozumie wersję języka HTML 2, a większość nowszych wersji także HTML 3. Strony WWW mogą być tworzone i edytowane za pomocą edytora tekstowego, procesora tekstowego lub przeglądarki WWW.
Systemy komputerowe zawierają mikroprocesory, które sterują działaniem komputera. Mikroprocesor rozpoznaje tylko informacje przekazywane dwójkowo i działa na podstawie sekwencji rozkazów, nazywanych kodem maszynowym. Pisanie długich programów w kodzie maszynowym jest niezmiernie trudne, więc zamiast niego do programowania stosowane są języki wyższego poziomu. Język niskiego poziomu jest w pewnym stopniu podobny do kodu maszynowego, ale używa się w nim makropoleceń w postaci słów kluczowych (instrukcji), zastępujących sekwencje rozkazów kodu maszynowego. Języki wyższego poziomu mają składnię opartą na języku angielskim, co powoduje, że programy są łatwe w czytaniu i modyfikacji. W większości programów rzeczywiste działanie sprzętu (hardware) jest niewidoczne dla programisty. Kompilator zmienia zapis w języku wyższego poziomu na kod maszynowy. Szeroko stosowanymi językami wyższego poziomu są: C/C++, BASIC, COBOL, FORTRAN i Pascal, natomiast przykładem języka niskiego poziomu jest np. Assembler procesora 80486.
Java jest językiem wyższego poziomu, który został specjalnie opracowany do opisywania stron WWW i jest dobrze dostosowany do tworzenia aplikacji sieciowych. Jest oparty na języku C++ (ale prostszy i łatwiejszy od niego) i początkowo był rozwijany przez firmę Sun Microsystem. Obecnie większość przeglądarek stron WWW nowszej wersji współpracuje z Javą i ma interfejsy do tego języka. Oto kilka głównych cech języka Java:
- programy w języku Java mogą być uruchamiane autonomicznie lub przez przeglądarki Web, wtedy zwane są apletami.
- Java jest językiem „przenośnym” i aplety mogą być uruchamiane na komputerach z dowolnym typem mikroprocesora.
- Aplety Javy są niezależne od zastosowanego sprzętu (hardware’u) i systemu operacyjnego. Na przykład sam program nie musi mieć bezpośredniego interfejsu do takich urządzeń komputerowych jak karta video lub myszka. Typowe języki wyższego poziomu, takie jak C/C++ i Pascal, dają po kompilacji kod maszynowy (wynikowy) zależny od sprzętu przeznaczenia, który z tego powodu może być wykonywany tylko na komputerze określonego typu i przy określonym systemie operacyjnym.
- Przy konfiguracji klient/serwer Java pozwala na taką współpracę, w której aplety mogą być uruchamiane na odległym komputerze (serwerze), który w ten sposób odciążą lokalny komputer (zwykle komputery odległe są wielozdaniowymi komputerami o dużej mocy obliczeniowej i zaawansowanej technologicznie architekturze).
- Kompilator języka Java tworzy autonomiczne programy lub aplety. Wiele przeglądarek nowszych wersji ma zintegrowany kompilator języka Java.
Za pomocą typowego programu w C++ można uzyskać dostęp do twardego dysku. Byłoby to ryzykowne w Internecie, gdyż jakiś zamówiony włamywacz (hacker) lub nowicjusz mogliby spowodować zniszczenie zbiorów na dysku serwera internetowego. Aby temu zapobiec w Javie nie zastosowano żadnych mechanizmów obsługi zbiorów wejścia/wyjścia. Java umożliwia odczytywanie z serwera plików w standardowych formatach (takich jak GIF, JPG), ale nie pozwala na zapisywanie jakichkolwiek zmian na dysku serwera internetowego.
JavaScript
Programy pisane w językach wyższego poziomu mogą być kompilowane do postaci wykonywalnej lub na bieżąco interpretowane po uruchomieniu programu interpretera. Java jest językiem programowania, który wymaga kompilacji przed użyciem napisanego w nim programu. Nie może być więc zatem użyty, jeżeli programista nie ma odpowiedniego kompilatora. Z drugiej strony, JavaScript jest językiem, który może być interpretowany przez przeglądarkę. Jest on pod wieloma względami podobny do Javy i pozwala programiście wprowadzić opis w tym języku (skrypt) do dokumentu HTML opisującego stronę WWW. JavaScript ma niewielką liczbę typów danych numerycznych, logicznych i łańcuchowych, akceptowanych przez większość współczesnych przeglądarek, takich jak Microsoft Internet Explorer i Netscape. HTML jest użyteczny wtedy, gdy opisywane strony są krótkie i nie zawierają wyrażeń, pętli lub nie ma potrzeby dokonywania wyborów. JavaScript jest najbardziej dogodnym, spośród języków wyższego poziomu do przygotowania aplikacji internetowych, tak dla serwerów, jak i użytkowników. Może być wykorzystywany do odpowiedzi (zareagowania) na działania użytkownika, takie jak kliknięcie przyciskiem myszki, wprowadzenie formularza i przeglądanie stron.
Ważną zaletą jaką ma JavaScript w porównaniu z HTML jest to, że umożliwia stosowanie funkcji bez jakichkolwiek szczególnych wymagań deklaracyjnych. Łatwiej też z niego korzystać niż z Javy, ponieważ ma prostszą składnię, wbudowaną specjalizowaną funkcjonalność i minimalne wymagania przy tworzeniu obiektów.
Ważnymi elementami koncepcyjnymi w Javie i w JavaScript są obiekty. Obiekty są w zasadzie zasobnikami dla różnych wartości liczbowych. Główne różnice między Javą a JavaScript to:
¨ Program w JavaScript jest interpretowany przez komputer lokalny, natomiast program w języku Java jest, przed jego wykonaniem, kompilowany na serwerze.
¨ Programy w JavaScript są wbudowane w opis strony HTML, podczas gdy aplety w języku Java nie wchodzą do opisu stron w HTML (są odrębnymi dokumentami), a są tylko dostępne ze stron HTML.
¨ W JavaScript zmienne można przyjmować dowolnie (swobodnie przypisywanie wartości – to oznacza, że typ danych dla zmiennych nie musi być deklarowany), natomiast w Javie nie można tak swobodnie stosować zmiennych (typ danych dla zmiennych musi być zawsze deklarowany przed ich użyciem).
¨ JavaScript ma dynamiczne powiązania, przy których odwołania obiektowe są sprawdzane w czasie wykonania programu, natomiast w Javie są powiązania statyczne, przy których odwołania obiektowe są ustalone w czasie kompilacji programu.