Poniżej przedstawiam przetłumaczony fragment z dokumentacji developers.apple.com ”About Web Objects": Dla zainteresowanych zapraszam do źródła:
Z perspektywy technologi informacji, WebObjects jest skalowalnym, silenie dostępnym (high-availability), silnie wydajnym serwerem aplikacji. Z punktu widzenia developera, mimo że WebObjects jest rozszeżalną zorientowaną obiektowo platformą, na podstawie której możesz rozwijać i rozmieszczać (develop and deploy) aplikacje, które integrują się z istniejącym systemem danych. WebObjects pozwala Ci budować aplikacji, które udźwigną łączność (connectivity), którą Internet lub intranet dostarcza wykorzystując wielowątkową architekture klient-serwer.
Sieć została stworzona do uproszczenia dostępu do publikowanych droga elektroniczną dokumentów. Pierwotnie strony internetowe były statycznymi plikami tekstowymi z hiperłączami do innych dokumentów. Jednakże, strony internetowe szybko rozwinęły się w wysoko graficzne animowane prezentacje. Po drodze, stopień interakcji został przedstawiony, pozwalając ludziom przeglądać sieć by wypełniać formularze skutkiem czego dostarczali dane do serwera.
WebObjects pozwala Ci przejść do następnego, logicznego, kroku. Mianowicie, możesz produkować w pełni dojrzałe aplikacje do wykorzystania w całym Internecie lub wewnątrz korporacyjnego intranetu. Użytkownicy nie tylko wypełniają formularze ale mogą być autorami treści backendowych w bazach danych (back-end databases). Poprzez śledzenie sesji użytkownika i jego preferencji możesz również zaoferować użytkownikowi, doświadczenie zbliżone do takiego jak w aplikacjach do desktopowych.
Te aplikacje mogą być oparte na sieci (can be web-based) i w ten sposób mogą być dostępne poprzez przeglądarkę internetową lub mogą być w pełni interaktywnymi aplikacjami desktopowymi. Twoja aplikacja może również dostarczać usługi internetowe do innych aplikacji webowych.
WebObjects dostarcza szeregu kluczowych technologi, które dają znaczącą przewagą nad innymi serwerami aplikacji.
(Streamlined Database Access) - Niektóre produkty polegając na ręcznym tworzeniu lub assistant-generated kodzie SQL, prowadząc do bazodanowego-specyficznego kodu który jest trudy do optymalizacji. WebObject unika tych problemów używając Enterprise Objects, mechanizmu model-based dla czystego instancjonowania obiektów biznesowych bezpośrednio z tabeli bazy danych. Enterprise Object przechwytują wszystkie interakcje na bazie danych takie jak fetching, caching, i saving. Co pozwala Ci na pisanie logiki biznesowej niezależnie od wykorzystywanego systemu magazynowania danych. Możesz modyfikować schemas, dodawać, zmieniać bazy danych, lub użyć całkowicie innego mechanizmu przechowywania danych bez potrzeby przepisywania swojej aplikacji.
Idealny web application–development system, który jest również zorientowany obiektowo, upraszcza utrzymanie i zachęca do ponownego użycia kodu poprzez wymuszenie czystej separacji modelu (data store), widoku (strony internetowe) i kontrolera (kod Java). To wydzielenie jest dziedziczone w programowaniu WebObjects, które używa re-używalność komponentów webowych do generowania stron internetowych bezpośrednio z enterprise-object instancji bez potrzeby osadzania skryptów lub kodu Javy wewnątrz stron internetowych. Komponent webowy zawiera szablon strony internetowej, który Ty lub Twój profesjonalny projektant stron internetowych może zaprojektować wykorzystując standardowe narzędzia dla stron internetowych. Komponent może również implementować specjalne zachowanie używając oddzielnego pliku źródłowego Java.
Protokół HTTP wykorzystywany w sieci jest z natury stateless; czyli każde żądanie HTTP przybywa niezależnie od poprzednich żądań i to zależy wyłącznie od aplikacji webowej by określić, który z aktywnych użytkowników wysłał żądanie. Dlatego, większość aplikacji webowych w konsekwencji - jak niektóre z bardziej ciekawych dynamicznie publikujących stron - potrzebuje trzymać stan informacji, takie jak; informacje o loginie czy o koszyku z zakupami, powiązane z każdą sesją użytkownika.
Nie używając ciasteczek, WebObjects dostarcza obiekty, które pozwalają Ci utrzymywanie informacji do czasu życia określonej sesji, lub dłużej. Staje się szczególnie prosta implementacja aplikacji takich jak sklep online: ty nie musisz robić nic specjalnego by przechowywać zawartości koszyka z zakupami użytkownika lub innych danych w czasie trwania sesji. Dodatkowo, Twój sklep online może nawet monitorować wzorce zakupów klienta i podświetlać rzeczy, którymi określony kupujący może zainteresowany gdy następny raz odwiedzi Twoja stronę.
Siła WebObject pochodzi z ściśle powiązanych zestawów narządzi i frameworków, ułatwiających szybkie łączenie złożonych aplikacji. W sercu tego systemu jest Xcode, zintegrowane środowisko programistyczne (IDE), które zarządza logiką biznesową Javy i śledzi modele danych, komponenty webowe oraz wspierane pliki. Jak wspomniano wcześniej, WebObjects również zawiera zestaw potężnych 'asystentów' i frameworków, które pozwalają na szybkie tworzenie web, Java Client i serwisów aplikacji bezpośrednio z bazy danych. Zaawansowani programiści mogą „spojrzeć” (tap) w API WebObjects, pozwalając na prawie nieograniczoną dostosowanie i rozbudowę.
Aplikacje WebObjects są w 100% czystą Javą, co oznacza że możesz je rozmieszczać na kazdej platformie z certyfikowaną wirtualną maszyną Javy.
Statyczne strony internetowe i tradycyjne aplikacje klient-serwer maja jedną zaletę: oba udźwigną moc platformy klienta, minimalizując obciążenie serwera. Nie jest potrzebne aż tak dużo mocy by obsłużyć statyczne strony. Dynamiczne aplikacje, są również niesamowicie bardziej rozwinięte niż statyczne strony internetowe (Dynamic applications, although a tremendous advance over static websites), jednak, wymagają dodatkowej mocy serwera by w szybki wydobyć zmieniające się dane i zbudować stronę internetową lub Javowy interfejs użytkownika.
Serwer aplikacji WebObject jest wydajny i skalowalny. Z WebObject, jeżeli potrzebna jest większa moc, niezawodność możesz uruchomić wiele instancji swojej aplikacji, jak i również jeden lub więcej serwerów aplikacji. (itd…)