Aplikacja internetowa vs Strona Internetowa
Transkrypt
Aplikacja internetowa vs Strona Internetowa
Aplikacja internetowa vs Strona Internetowa. Aplikacja internetowa, (ang.) web application – zwana również aplikacją webową, to program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć komputerową z komputerem użytkownika wykorzystując przeglądarkę internetową która w takim przypadku jest interaktywnym klientem aplikacji internetowej. W pracy aplikacji internetowej musi pośredniczyć serwer WWW. Do przygotowania samej aplikacji używa się różnych mechanizmów (np. CGI, JSP, ASP.NET) i języków (np. PHP, Java, C#), jak również serwerów aplikacji. Mechanizm prezentacji danych w przeglądarce określa się czasem mianem cienkiego klienta. Przykładem aplikacji internetowej jest mechanizm edycji treści encyklopedii Wikipedia. Inne witryny WWW należące do tej kategorii to np. serwis aukcyjny Allegro czy księgarnia internetowa Merlin. Strona internetowa, strona WWW (ang. web page) – dokument HTML udostępniony w Internecie przez serwer WWW. Po stronie hosta użytkownika, strona WWW jest otwierana i wyświetlana za pomocą przeglądarki internetowej. Autorem pierwszych stron WWW jest Tim Berners-Lee. Czym się różnią: Dla laika wszystko co wyświetla się w przeglądarce to strona internetowa co jest błedne. Najprostszym kryterium podziału jest kryterium techniczne. Jeśli coś jest po prostu statycznym HTML'em i CSS'em to mamy do czynienia ze stroną internetową. Jeśli zaś pod maską mamy jeszcze inną technologię generującą treść strony możemy śmiało powiedzieć, że w tym wypadku mamy do czynienia już z aplikacją internetową. Zalety aplikacji Internetowych: • Bezpieczeństwo - aplikacje internetowe są bezpieczne, ponieważ ich bazy danych są składowane i zabezpieczone centralnie, • Dostępność - w bardzo łatwy sposób można korzystać z aplikacji internetowych w dowolnym miejscu - do ich obsługi wystarczy dostęp do urządzenia połączonego z Internetem, • łatwość uaktualniania - nawet gdy aplikacje internetowe są uaktualniane, nie jest konieczna aktualizacja po stronie klienta, • niezależność sprzętowa - aplikacje internetowe są całkowicie niezależne od systemów i przeglądarek klientów, którzy z nich korzystają, • łatwość rozbudowy - aplikacje internetowe mogą być bez przerwy rozbudowywane o dodatkowe funkcje a zmiany na bieżąco będą dostępne dla klientów. • Niski koszt – aplikacje internetowe są tanie bo pozwalają an prace na dowolnych urządzeniach z dostępem do internetu. Narzędzia aplikacji internetowych. Serwer WWW – podstawowym narzędziem jest serwer WWW zainstalowany na serwerze Internetowym (np. IIS albo Apache) na którym jest zainstalowane jest dodatkowe oprogramowanie (np. Serwer bazodanowy np. MySQL, MSQL) oraz interpreter wybranego języka, języków programowania (np. PHP, JAVA, C# ) Na serwerze mogą pracować równolegle różne oprogramowani (kilka serwerów bazodanowych i interpreterów). W aplikacjach internatowych największe wymagania sprzętowe stawiane są właśnie serwerowi WWW a nie klientom którzy się łączą się z wykorzystaniem przeglądarki internetowej. Klient aplikacji internatowej – zajmuje się renderowanie wyglądu strony na podstawie kodu HTML oraz obsługa niektórych zadań np. JavaScript, ApletJava, AJAX, Flash itp. Technologie po stronie klienta. Wspomagają one oprogramowanie po stronie serwera i najczęściej to: • JavaScript, JS – skryptowy język programowania, stworzony przez firmę Netscape. Głównym autorem JavaScriptu jest Brendan Eich. Skrypty w JavaScript służą najczęściej do zapewnienia interaktywności poprzez reagowanie na zdarzenia, sprawdzania poprawności formularzy lub budowania elementów nawigacyjnych. Skrypty JavaScriptu uruchamiane przez strony internetowe mają znacznie ograniczony dostęp do komputera użytkownika. Po stronie serwera może także działać JavaScript w postaci node.js lub Ringo • • • Aplet Javy – aplet dostarczany w postaci kodu bajtowego Javy. Może zostać uruchomiony w przeglądarce internetowej wykorzystując wirtualną maszynę Javy albo w samodzielnej aplikacji AppletViewer służącej do testowania apletów Javy. Mogą być pisane zarówno w Javie jak i innych językach kompilowanych do kodu bajtowego - na przykład Jython. Adobe Flash (dawniej Macromedia Flash) – technologia tworzenia animacji z wykorzystaniem grafiki wektorowej na zasadzie klatek kluczowych. Powstałe pliki .swf, zwane często „plikami Flash”, można odtwarzać na stronie www za pomocą przeglądarki internetowej z zainstalowaną odpowiednią wtyczką (np. Adobe Flash Player) lub w oddzielnym programie do tego przeznaczonym. Od wersji Flash 5 program wyposażony został w język programowania do obsługi zdarzeń (np. kliknięcie elementu myszą) – ActionScript. Dzięki temu we Flashu można tworzyć interaktywne animacje i programy, np. popularne w sieci WWW gry Flash. Oprócz tego pliki Flash są wykorzystywane do internetowych reklam, prezentacji oraz filmów (Youtube). Istnieją również strony internetowe całkowicie oparte na plikach Flash. AJAX (ang. Asynchronous JavaScript and XML, asynchroniczny JavaScript i XML) – technika tworzenia aplikacji internetowych wspomagajaca JavaScript, w której interakcja użytkownika z serwerem odbywa się bez przeładowywania całego dokumentu, w sposób asynchroniczny. Ma to umożliwiać bardziej dynamiczną interakcję z użytkownikiem niż w tradycyjnym modelu, w którym każde żądanie nowych danych wiąże się z przesłaniem całej strony HTML. Na technikę tę składa się parę elementów: ◦ XMLHttpRequest - klasa umożliwiająca asynchroniczne przesyłanie danych; ◦ JavaScript - mimo użycia w nazwie, może to być de facto dowolny język skryptowy funkcjonujący po stronie użytkownika (np. JScript czy VBScript). ◦ XML - język znaczników, poprzez który miałyby być opisane odbierane informacje.