Wyższa Szkoła Biznesu w Dąbrowie Górniczej. Wydział Zarządzania, Informatyki i Nauk Społecznych PRACA DYPLOMOWA INŻYNIERSKA. Konrad Szelągowski

Wielkość: px
Rozpocząć pokaz od strony:

Download "Wyższa Szkoła Biznesu w Dąbrowie Górniczej. Wydział Zarządzania, Informatyki i Nauk Społecznych PRACA DYPLOMOWA INŻYNIERSKA. Konrad Szelągowski"

Transkrypt

1 Wyższa Szkoła Biznesu w Dąbrowie Górniczej Wydział Zarządzania, Informatyki i Nauk Społecznych PRACA DYPLOMOWA INŻYNIERSKA Konrad Szelągowski Interfejs WWW dla biblioteki Infosel++ Praca licencjacka/inżynierska napisana pod kierunkiem: Dr inż. Marcina Blachnika w Katedrze Informatyki Dąbrowa Górnicza 2010 r. 1

2 Spis treści Spis treści Wstęp Cel i zakres pracy Infosel Co to jest Infosel Selekcja cech Algorytmy zaimplementowane w bibliotece Analiza technologii NET Framework ASP.NET PHP(Hypertext Preprocessor) Java Enterprice Edition(JEE) Java Server Pages(JSP) Serwlety Podsumowanie Bazy danych MySQL PostgreSQL Firebird Podsumowanie Struktura aplikacji Struktura bazy danych Struktura aplikacji Kontroler Model

3 Widok Działanie interfejsu graficznego aplikacji Podsumowanie i wnioski Wykaz rysunków i schematów Bibliografia

4 1. Wstęp Ze względu na rosnącą popularność serwisów WWW, oraz ogólnodostępność Internetu, co raz częściej spotykamy się z rozwiązaniem zdalnego dostępu do aplikacji poprzez przeglądarkę internetową. W Internecie można spotkać wiele takich rozwiązań, ze względu na ich łatwą obsługę, dostęp do aplikacji z każdego miejsca posiadającego łącze Internetowe, umiarkowane koszty utrzymania w porównaniu z możliwościami jakie oferują tego typu serwisy. Aby wyjść naprzeciw tego typu rozwiązaniom i zapewnić wygodny dostęp do możliwości jakie oferuje biblioteka Infosel++ oraz ułatwić jej obsługę, postanowiono stworzyć interfejs WWW dla tej biblioteki Cel i zakres pracy Celem pracy jest zaprojektowanie i implementacja interfejsu WWW do biblioteki Infosel++ umożliwiającej selekcję cech w problemach inteligencji obliczeniowej. Zakres pracy: Stworzenie projektu interfejsu WWW biblioteki Infosel++ Zaprojektowanie odpowiednich struktur danych oraz infrastruktury pozwalającej na realizację interfejsu WWW Założenia dotyczące funkcjonalności portalu: o Umożliwienie pracy użytkownikom posiadającym indywidualne konto w portalu (Logowanie, dodawanie nowych użytkowników) o Konfiguracja biblioteki w tym wybór metod dyskretyzacji, algorytmów selekcji cech wraz z ich parametrami o Wgrywanie na serwer plików z danymi o Dane zadanie selekcji cech może być realizowane niezależnie od trwania sesji użytkownika o Powiadomienie o zakończeniu procesu obliczeń za pośrednictwem poczty elektronicznej o Dostęp do danych wynikowych (wyników obliczeń) z poziomu portalu 4

5 2. Infosel Co to jest Infosel++ Biblioteka Infosel++ jest to zbiór algorytmów selekcji cech oraz algorytmów dyskretyzacji, które w praktyce umożliwiają przeprowadzenie badań na określonych zbiorach danych w tym wybór istotnych zmiennych niezbędnych w dalszym procesie eksploracji danych w tym do realizacji problemów klasyfikacji i regresji. Głównym zadaniem biblioteki jest możliwość testowania i porównywania wyników dla różnych algorytmów i różnych typów danych. Algorytmy zaimplementowane w bibliotece znajdują swoje zastosowanie w wielu dziedzinach nauki, ale przede wszystkim w dziedzinach opierających się na sztucznej inteligencji oraz uczeniu maszynowym. Oprogramowanie obejmuje algorytmy oparte na metodach wywodzących się z teorii informacji, współczynnikach korelacji oraz testach statystycznych t-studenta oraz F- Snedecora i kilku dodatkowych innych metodach dla szacunkowej oceny znaczenia atrybutów danych, które nie są łatwe do znalezienia w innych pakietach oprogramowania.[15] 2.3. Selekcja cech Proces selekcji cech w zastosowaniu do klasyfikacji obiektów jest działaniem, umożliwiającym redukcję liczby zmiennych opisujących pewnego zbioru danych poprzez wybranie podzbioru, który będzie reprezentatywnie odzwierciedlał oryginalny zbiór. Selekcję cech wykorzystuje się w sytuacjach, gdy: w dużym zbiorze danych nie jesteśmy w stanie wybrać cech, które będą dla nas istotne w zbiorze danych występują cechy zawierające informację redundantną (nadmiarową) Selekcja cech umożliwia wybranie ze zbiorów danych tych cech, które będą nieść istotne dla nas informacje. Metody selekcji cech możemy podzielić ze względu na relację z algorytmami nadrzędnymi na: Filtry - są to metody selekcji cech, które samodzielne podejmują decyzję na temat jakości poszczególnych zmiennych i ich przydatności, w późniejszym procesie uczenia. Decyzja podejmowana jest na podstawie współczynnika 5

6 niezależnego od klasyfikatora, takiego jak: informacja wzajemna, lub dywergencja Kullbacka-Leiblera. Schemat 1 Schemat działania filtrów cech Źródło: Zaletami filtrów są: o Uniwersalność umożliwiają użycie dowolnego klasyfikatora, ze względu na to, iż filtry są od nich niezależne o Wszechstronność algorytm ten może być wykorzystany do każdego problemu klasyfikacyjnego o Szybkość niezależność od klasyfikatora powoduje zmniejszenie złożoności obliczeniowej, co przekłada się na szybkość działania i wydajność filtra o Użyteczność dla pewnej klasy problemów jedyna istotna informacją jest podzbiór istotnych cech, a nie sam proces klasyfikacji, wówczas dzięki wszechstronności i uniwersalności filtry dostarczają pożądany podzbiór cech (np. analiza aktywności genów) Niestety jak każdy algorytm również metody filtrów posiadają wady: o Konieczność estymacji wielowymiarowych rozkładów prawdopodobieństwa o Mniejsza dokładność w porównaniu z metodami opakowanymi Metody opakowane (ang. wrappers) są to algorytmy zawierające sprzężenie zwrotne pomiędzy elementem decyzyjnym (klasyfikatorem) 6

7 stanowiącym funkcję oceny, a algorytmem przeszukiwania co umożliwia optymalizację podzbioru cech pod kątem właściwości danego klasyfikatora Schemat 2 Schemat działania metod opakowanych Źródło: Zaletami metod opakowanych są: o Wybrany podzbiór cech jest dostosowywany do wymagań lub charakteru algorytmu decyzyjnego o Większa dokładność niż metod filtrów Wady metod opakowanych: o Problem z rzetelną oceną dokładności klasyfikacji o Większa złożoność obliczeniowa wynikająca z konieczności przeprowadzania testu krzyżowego Kombinacja filtrów oraz metod opakowanych (ang. frappers) w tego typu algorytmach filtry wykorzystywane są do selekcji cech, a metody opakowane stosuje się do zmiany i dopasowania ich parametrów. 7

8 Schemat 3 Schemat działania fraperów Źródło: Zalety: o Szybkość szybsze od metod opakowanych o Uniwersalność może być wykorzystany do każdego problemu klasyfikacyjnego o Większa dokładność niż metod filtrów, lecz mniejsza niż metod opakowanych. Metody wbudowane - to taka grupa algorytmów które wykorzystują pewne cechy algorytmów uczenia dokonując automatycznej selekcji cech na etapie uczenia algorytmu decyzyjnego (np. drzewa decyzji). 8

9 Zaletami metod wbudowanych są: o Szybkość - selekcja cech wykonywana jest podczas procesu uczenia dzięki czemu nie musimy dokonywać żadnych dodatkowych obliczeń o Dokładność metody projektowane dla konkretnych algorytmów Wady: o Brak uniwersalności metody wykorzystywane jedynie dla dedykowanego algorytmu We wszystkich wyżej wymienionych algorytmach spotkaliśmy się z określeniem strategii przeszukiwania. Są to metody przeszukujące zbiór danych i wybierające dany podzbiór cech w celu późniejszej pracy nad tym podzbiorem przez algorytmy selekcji cech. Dwa najczęściej stosowane algorytmy przeszukiwania to: algorytm selekcji w przód, algorytm selekcji w tył, oraz metoda rankingowa. Algorytm selekcji w przód rozpoczyna swoją prace z pustym zbiorem danych i po kolei wybiera dane cechy do sprawdzenia. Gdy wszystkie cechy zostały sprawdzone pojedynczo i zostały wybrane najbardziej istotne cechy, algorytm dodaje do pierwszej najlepszej cechy kolejną i przekazuje do sprawdzenia, aż do momentu przeszukania wszystkich kombinacji. Algorytm selekcji w tył rozpoczyna prace z pełnym zbiorem danych i przekazuje do funkcji oceniającej. Algorytm usuwa z pełnego zbioru danych najmniej istotne cechy i sprawdza pozostałe szukając w dalszym ciągu najmniej istotnej cechy z pozostałych, aż do uzyskania satysfakcjonującego wyniku. Metody rankingowe bazują na niezależnej ocenie każdej ze zmiennych, a następnie w oparciu o wyznaczone współczynniki dokonują uszeregowania zmiennych w kolejności od najbardziej do najmniej istotnych. Niezależnie od opisanych powyżej strategii przeszukiwania w problemach selekcji cech stosuje się techniki usprawniające redukcję wymiarowości poprzez analizę redundancji. Tego typu techniki bazują na wzajemnej analizie par zmiennych celem weryfikacji możliwego wystąpienia nadmiarowości np. poprzez analizę korelacji. Tego typu rozwiązania znacząco wpływają na redukcje złożoności obliczeniowej algorytmu nadzorując i redukując przestrzeń przeszukiwania oraz wskazując jej kierunki. 9

10 2.3. Algorytmy zaimplementowane w bibliotece Biblioteka Infosel++ z założeń projektowana była jak zbiór filtrów cech i udostępnia gamę algorytmów podzielonych na cztery kategorie: Metody rankingowe Współczynnik korelacji Pearson s Statystyka t Statystyka F Statystyka 2 Informacja wzajemna (MI) Symetryczny współczynnik niepewności (ang. Symmetrical Uncertainly Coefficient, SUC) Zysk informacyjny, (ang. Information Gain, IG) Względny zysk informacyjny (ang. Information Gain Ratio, IGR) Filtry redundancji Szybki filtr korelacyjny (ang. Fast Correlation Based Filter) Filtr korelacyjny Komołgorowa-Smirnowa (ang. Kolmogorov-Smirnov Correlation-Based Filter) Etykietowany filtr korelacyjny Komołgorowa-Smirnowa (ang. Kolmogorov-Smirnov Class Correlation-Based Filter) Filtr redundancji Pearsona (ang. Pearson Redundancy Based Filter) Metody bazujące na przeszukiwaniu kompletnym i heurystycznym Selekcja w przód i w tył w oparciu o powyżej zdefiniowane współczynniki rankingowe Selekcja k- wprzód j- wstecz z wykorzystanie ww współczynnikami Algorytm przeszukiwania całkowitego z w/w współczynnikami MIFS przy jednostajnym rozkładzie informacji Adaptacyjny algorytm MIFS Mutual Information Difference inne Aproksymacja nakryciami Markova (ang Markov Blanket approximation) GD-distance ranking 10

11 3. Analiza technologii Postępujący rozwój technologii internetowych, oraz intensywny rozwój Internetu, spowodowały zmiany w wykorzystywaniu stron internetowych. Statyczne strony WWW, ze względu na to, że nie niosły ze sobą żadnej innej funkcji jak tylko przekaz informacji odeszły w niepamięć. Dziś strona internetowa musi być atrakcyjna dla użytkownika. Musi mieć odpowiednią, przejrzystą szatę graficzną i oferować coś więcej a niżeli tylko statyczny tekst. Rozwiązaniem tego problemu są dynamiczne strony WWW, które zarazem są środkiem przekazu istotnych informacji oraz oferują interaktywną współpracę z użytkownikiem. Technologie tworzenia interaktywnych stron internetowych możemy podzielić na dwie kategorie: strony z dynamiczną zawartością działającą po stronie klienta(ang. client-side), oraz strony z generowaną dynamiczną zawartością po stronie serwera(ang. Server-side). Przykładem technologii działających po stronie klienta są: DHTML, Java Script, aplety Java, oraz technologia AJAX. W tym rozdziale zostaną opisane technologie tworzenia dynamicznych stron WWW działające po stronie serwera. Na rynku dostępnych jest wiele technologii tworzenia tego typu stron. Najpopularniejszymi z nich są: platforma Microsoftu -.NET, platforma firmy Sun Java Enterprise Edition, oraz technologia PHP. Wszystkie te technologie mają swoje wady i zalety, które zostaną przedstawione w poniższych rodziałach NET Framework Platforma programistyczna stworzona przez firmę Microsoft, zawierająca środowisko uruchomieniowe, oraz biblioteki klas, które zapewniają podstawową funkcjonalność tworzonym aplikacjom. Platforma umożliwia pisanie oprogramowania w kilkunastu językach, takich jak: C++/CLI, C#, J#, Delphi, Visual Basic.NET. itd..net Framework umożliwia pisane aplikacji internetowych, działających na serwerach stron internetowych (IIS), jak również aplikacji okienkowych na systemy dla których istnieje implementacja tej platformy.[5] Jednak rekomendowaną platformą docelową dla tworzonych aplikacji są produkty firmy Microsoft. 11

12 Schemat 4 Architektura platformy.net Źródło: ASP.NET Jest to technologia tworzenia dynamicznych stron WWW, korzystająca ze wszystkich możliwości jakie daje platforma.net Framework, czyli środowiska uruchomieniowego CLR oraz całej jego funkcjonalności. Poprzednikiem ASP.NET była technologia ASP(Active Server Pages) wprowadzona przez firmę Microsoft jako funkcję serwera IIS 3.0 w 1996 roku.[6] Głównym zadaniem podczas tworzenia ASP.NET było uproszczenie tworzenia dynamicznych stron WWW. Dzięki temu założeniu podczas procesu tworzenia aplikacji internetowej programista może użyć jednego z wielu języków programowania jakie obsługuje środowisko CLR(m.in. C#, Visual Basic.NET, C++/CLI, J#, JScript.NET). Daje to możliwość pisania poszczególnych klas w różnych językach, a następnie połączenie ich w jedną aplikacje internetową, czyli uniezależnia aplikacje od języka programowania.[6] 12

13 Schemat 5 Generowanie strony w technologii ASP.NET Źródło:http://www.diversity.pl/index.php?option=com_content&task=view&id=188&Itemid=621&lang=pl Kompilacja kodu w technologii ASP.NET opiera się na dwóch podstawowych czynnościach[23]: Przekształcenie kodu aplikacji na język pośredni CIL(Common Intermediate Language), który zawiera implementacje klas i metod pisanej aplikacji Przekształcenie pośredniego języka CIL(Common Intermediate Language) na kod języka maszynowego, zrozumiałego dla procesora i zależnego od systemu operacyjnego Kompilatory wykorzystane w drugim etapie kompilacji nazywane są JIT(Just-intime), które umożliwiają kompilację programu w momencie wystąpienia zapotrzebowania na dany fragment kodu wykonywalnego. ASP.NET pozwala oddzielić logikę biznesową od części prezentacyjnej za pomocą tzw. kodu schowanego(code-behind). Dzięki temu rozwiązaniu zamiast łączenia kodu HTML z kodem biznesowym dostajemy możliwość przechowywania 13

14 kodu właściwego aplikacji w osobnych plikach, do których strony.aspx odwołują się dzięki odsyłaczom[23]. Program ASP.NET korzysta z tekstowego, hierarchicznego systemu konfiguracyjnego, który upraszcza stosowanie ustawień do aplikacji sieci Web i środowiska serwera. Ponieważ informacje konfiguracyjne są przechowywane w postaci zwykłego tekstu, nowe ustawienia mogą być stosowane bez pomocy lokalnych narzędzi administracyjnych. Wszystkie zmiany wprowadzone w plikach konfiguracyjnych są automatycznie wykrywane i stosowane do aplikacji.[25] Bezpieczeństwo stron WWW zapewnia jedna z 4 zaimplementowanych i gotowych do użycia metod[25]: Windows: podstawowe, szyfrowane oraz zintegrowane uwierzytelnianie systemu Windows (przy użyciu protokołu NTLM lub Kerberos) Uwierzytelnianie za pomocą usługi Microsoft Passport Uwierzytelnianie formularzy Uwierzytelnianie certyfikatów klientów Gotowe aplikacje umieszcza się na serwerze za pomocą zwykłego kopiowania plików, co umożliwia korzystanie z nich bez potrzeby ponownego uruchamiania serwera. Do zalet możemy zaliczyć system buforowania, dzięki któremu możemy buforować całe strony, bądź ich fragmenty. Kolejną zaletą jest obsługa dowolnych przeglądarek internetowych, zarówno tych w komputerach stacjonarnych jak i urządzeniach przenośnych.[25] Jednak największą wadą produktu Microsoftu jest jego teoretyczna przenaszalność i zależność od platformy systemowej. Platforma.NET jest produktem jednego dostawcy, mimo iż cześć mechanizmów została objęta standaryzacją(cil ang.common Intermediate Language, CLI ang.common Language Infrastructure), to większość z mechanizmów niezbędnych do tworzenia aplikacji uzależniona jest od produktów Microsoftu. Mechanizmy objęte standaryzacją umożliwiają tylko współprace produktów Microsoftu z innymi produktami. Pomimo tego, że maszyna wirtualna i system CLR są dostępne dla innych systemów operacyjnych, to w dalszym ciągu pozostają produkty Microsoftu, które nie mają swoich odpowiedników w konkurencyjnych systemach operacyjnych. Mowa tu o: komponentach interfejsu użytkownika, dostępie do bazy danych przez ADO.NET, 14

15 czy też transakcjach rozproszonych. Bez których ciężko jest tworzyć zaawansowane aplikacje internetowe PHP(Hypertext Preprocessor) Jest to skryptowy język programowania, którego składnia wywodzi się z trzech języków: C, Perl i Java. Kod napisany w tym języku jest wykonywany przez interpretator PHP. Język z założenia przeznaczony do tworzenia dynamicznych stron WWW, lecz wykorzystywany również do pisania aplikacji dla systemu operacyjnego. Jako jeden z niewielu języków umożliwia wybór pomiędzy programowaniem zorientowanym obiektowo, a programowaniem strukturalnym. [19] PHP jest projektem open-source na licencji GNU GPL(ang. General Public Licence ), co znaczy, że każdy może pobrać go za darmo, zainstalować i używać bez ograniczeń.[19] Swobodny dostęp do kodu źródłowego gwarantuje pomoc doświadczonych użytkowników w pracach nad udoskonalaniem kolejnych wersji języka, nowych modyfikacji i modułów. Dzięki temu język ten rozwija się bardzo dynamicznie. Ogromna ilość prywatnych stron internetowych, jak również poważnych serwisów WWW dostępnych w Internecie jest napisana właśnie w tym języku. W wersji oferuje możliwości zbliżone do konkurencyjnych języków tworzenia stron WWW takich jak ASP czy JSP. PHP jest językiem, który pracuje po stronie serwera WWW, ma on budowę modułową, a jądro zapewnia obsługę wszystkich elementów języka oraz dostęp do podstawowych funkcji. Aby dodać większą ilość funkcji należy zainstalować dodatkowe moduły. Cześć modułów jest oficjalna i dołączona do każdej dystrybucji a reszta zgrupowana jest w tzw. Repozytorium PECL. PHP dzięki otwartości kodu pracuje na niemal każdym 32-bitowym systemie operacyjnym.[19] W wersji 5.1 oferuje użytkownikom m.in.:[19] Łatwa komunikacje z popularnymi bazami danych Obsługę wielu popularnych protokołów sieciowych (SSL, IMAP, SMTP, IRC) Wsparcie standardu XML Funkcje obróbki tekstu Wyrażenia regularne Elastyczne tablice o mieszanych kluczach Wsparcie dla usług sieciowych (SOAP, XML-RPC) 15

16 Zaawansowany model programowania obiektowego Obsługę obiektów COM w Windows Funkcję kryptograficzne, konwersji kodowań Algorytmy kompresji PHP umożliwia definiowanie i tworzenie własnych funkcji, co daje mu ogromne możliwości, jest proste do nauczenia się, darmowe i oparte o zasadę otwartego oprogramowania. PHP jest niezależne od platformy i pracuje z wieloma serwerami, umożliwia obsługę wielu baz danych, bardzo popularne i stale rozwijane. Jednak uzyskanie tego samego efektu w PHP jest możliwe na kilka różnych sposobów, programista jest zmuszony testować kilka rozwiązań w celu wyboru najlepszego. PHP nie wymaga ścisłego stosowania składni. Oferuje niską wydajność w przypadku aplikacji o większej ilości kodu, gdyż skrypty PHP są za każdym razem interpretowane, a nie kompilowane. Brak możliwości oddzielenia kodu odpowiadającego za logikę biznesową aplikacji, od statycznych treści tworzących warstwę widoku, wymusza mieszanie kodu generującego dynamiczną zawartość z kodem statycznym, co sprawia, iż kod jest mało przejrzysty i obniża bezpieczeństwo aplikacji Java Enterprice Edition(JEE) Platforma programistyczna stworzona przez firmę Sun Microsystems, umożliwiająca tworzenie aplikacji za pomocą jednego z najpopularniejszych języków programowania i jakim jest język Java. JEE jest zbiorem specyfikacji i wytycznych projektowych w procesie tworzenia aplikacji. W skład Java Enterprise Edition nie zalicza się żadne konkretne oprogramowanie czy też sprzęt komputerowy, jest to standard tworzenia nowoczesnych, wydajnych, w pełni skalowalnych aplikacji. Definiuje model aplikacji oraz określa standardy procesu tworzenia określonych zadań.[24] 16

17 Technologie i standardy składające się na specyfikację platformy JEE dzielą się na cztery podstawowe kategorie[13]: Usługi internetowe: o RESTful o XML-Based o XML Binding o XML-Based RPC o SOAP(SAAJ) o XML Registries Aplikacje internetowe o Java Servlet o Java Server Faces(JSF) o Java Server Pages(JSP) o Java Standard Tag Library(JSTL) Aplikacje korporacyjne o Enterprise Java Beans o Java EE Connector Architecture o Java Message Service o Java Transaction(JTA) o Java Beans Activation Framework(JAF) o Java Mail Zarządzanie i bezpieczeństwo o Java Authentication Service Provider Interface o Java Authorization Contract o Java EE Application Deployment o J2EE Managment 17

18 Wykorzystanie technologii JEE podczas tworzenia aplikacji umożliwia programiście stworzenie poszczególnych oddzielnych warstw odpowiadających za konkretne usługi[1]. Warstwy te można podzielić na[29]: Warstwa prezentacji Warstwa dynamicznie generowanych prezentacji Warstwa logiki biznesowej Warstwa dostępu do danych Warstwa integracji z systemem Taki model aplikacji oferuje wysoką jej skalowalność i pozwala na skupieniu się podczas jej tworzenia na konkretnych zadaniach, jakie ma pełnić. Najważniejszymi koncepcjami w specyfikacji JEE są wielowarstwowość, komponentowy model programowania oraz menadżer zasobów [24]: Wielowarstwowość zapewnia oddzielenie warstwy prezentacji, logiki biznesowej oraz warstwy dostępu do danych. Zaletą tego rozwiązania jest możliwość podzielenia aplikacji na niezależne części odpowiadające za konkretny fragment funkcjonalności aplikacji. Komponentowy model programowania. Komponent jest kawałkiem kodu, fragmentem logiki programu, który samodzielnie nie stanowi aplikacji. Jest to model programowania oparty o zasadę składania aplikacji z oddzielnych klocków, co umożliwia powtórne wykorzystanie kodu. Menadżer zasobów. Organizacja dostępu do danych za pomocą odpowiedniego menadżera, który odpowiada za właściwy protokół komunikacyjny, udostępniając dane konkretnego systemu przechowywania. 18

19 Schemat 6 Architektura platformy JEE Źródło: Główną zaletą technologii JEE jest jej niezależność od platformy. Aplikacje oparte o ten standard można uruchomić na każdym systemie operacyjnym, dla którego istnieje implementacja wirtualnej maszyny Javy. Obecnie maszyna wirtualna Javy oferowana jest na większość systemów operacyjnych. Wygoda i szybkość tworzenia aplikacji, są kolejnymi atutami tej technologii. Dzięki zaimplementowanym rozwiązaniom oraz dostarczonym standardowym bibliotekom pisanie aplikacji w standardzie JEE jest dużo prostsze oraz szybsze.[24] Platforma jest ciągle udoskonalanym rozwiązaniem firmy Sun Microsystems. Umożliwia tworzenie zaawansowanych technicznie, wydajnych i bezpiecznych aplikacji. Ułatwia ich budowę, zarządzanie i wdrażanie, zapewniając przy tym niezależność od platformy, skalowalność 19

20 Java Server Pages(JSP) Jest to technologia tworzenia dynamicznych stron WWW, oparta o język Java, umożliwiająca łączenie statycznego kodu HTML ze skryptami zawartymi w specjalnych znacznikach, generującymi dynamiczną zawartość. Kod plików JSP jest konwertowany do postaci binarnej (postaci serwletu), a następnie uruchamiany przez serwer. Inaczej niż ma to miejsce w przypadku technologii PHP, gdzie kod czytany jest linia po linii. Strony JSP przetwarzane i kompilowane są tylko przy pierwszym uruchomieniu, bądź też po zmianie ich zawartości[27]. Schemat 7 Generowanie strony w technologii JSP Źródło: Strony JSP wykorzystywane są przede wszystkim do oddzielenia warstwy prezentacji od logiki aplikacji. JSP stosowane jest w sytuacji, gdy ilość kodu generującego dynamiczną zawartość jest znikoma w porównaniu z ilością statycznego kodu HTML. 20

21 Technologia JSP udostępnia cztery typy konstrukcji[2]: Elementy skryptowe tworzenie dynamicznego kodu w języku Java, który będzie częścią serwletu wynikowego Deklaracje znaczniki umożliwiające deklarowanie zmiennych Dyrektywy zawierają informacje kontrolujące strukturę dokumentu Akcje dostęp do metod serwera i komponentów Wyrażenia wartościowanie wyrażeń i wyświetlanie wartości wynikowych Cykl życia dokumentu JSP składa się z trzech faz[14]: Inicjalizacji Obsługi żądań Zniszczenia Obiekty predefiniowane dostępne w technologii JSP[14]: Request udostępnia parametry żądania strony JSP Response obiekt odpowiedzi wysyłanej do klienta Out obiekt odpowiedzialny za prezentacje strony Session sesja http Application obiekt ServletContext Config konfiguracja serwletu PageContext kontekst strony Page reprezentuje bieżącą stronę JSP Serwlety Sertwlet to program działający po stronie serwera WWW napisany w języku Java, działający w modelu klient-serwer, najczęściej wraz z protokołem HTTP. Głównym zadaniem serwletów w aplikacjach internetowych jest oddzielenie od siebie warstw logiki, prezentacji i danych. Kolejną rolą serwletu jest przetwarzanie i przesyłanie danych pochodzących od użytkownika za pomocą metod POST i GET protokołu HTTP lub danych pochodzących z apletów Javy, bądź innego programu korzystającego z protokołu http[3]. 21

22 Schemat 8 Działanie serwletu Źródło: Serwlety wykorzystywane są również do odczytywania wszystkich informacji zawartych w żądaniach klienckich, jak również do generacji i przetwarzania tych danych. Umożliwiają wymianę informacji z bazami danych, operacje na danych uzyskanych z wszelakich źródeł, uruchamianie odrębnych aplikacji, formatowanie wyników, czyli przygotowanie ich i przekazanie do strony prezentującej. Ustawianie parametrów odpowiedzi HTTP, takich jak: pliki cookies, typ przesyłanego dokumentu itp. Zarządzenie parametrami działania przeglądarki klienta.[3] Serwlety to nic innego jak klasy Javy działające na serwerze WWW, jednocześnie rozszerzając jego możliwości o interaktywną komunikację z przeglądarką. Są alternatywą dla interfejsu CGI (ang. Common Gateway Interface), o podobnych zasadach działania. Uruchamiane w środowisku serwera aplikacji (np. GlassFish), bądź kontenera internetowego(np. Apache Tomcat). Główne zalety serwletów[3]: Efektywność ciągłość pracy wirtualnej maszyny Javy, umożliwia nieprzerwaną obsługę wszystkich przychodzących żądań, wykorzystując wątki Javy. W przeciwieństwie do procesów systemowych, które wykorzystują znaczną cześć zasobów, wątki Javy korzystają ze znacznie mniejszej ich ilości. W przypadki kilku 22

23 żądań HTTP wirtualna maszyna Javy dla każdego żądania wygeneruje nowy wątek, lecz tylko raz załaduje do pamięci klasę serwletu, co wpływa pozytywnie na efektywność aplikacji. Atutem wynikającym z tego jest fakt, iż serwet pozostaje w pamięci po zakończeniu obsługi żądań, dzięki czemu korzystanie z danych żądań jest w dalszym ciągu możliwe. Wygoda i duże możliwości serwlety korzystają z całego dobrodziejstwa platformy Java, co daje ogromne możliwości podczas tworzenia aplikacji internetowych. Ogromna liczba bibliotek oraz ogólnodostępnych rozwiązań opisanych w Internecie sprawia, iż technologia ta jest dużą konkurencją na rynku informatycznym. Współdzielenie zasobów i danych, również jest możliwe. Serwlety potrafią wymieniać informacje z serwerami WWW, co ułatwia tłumaczenie względnych adresów URL, na ścieżki dostępu do plików. Serwlety mogą współużytkować dane, co upraszcza problem wykorzystywania połączeń z bazą danych. Możliwość przechowywania danych z poprzednich żądań ułatwia obsługę sesji oraz przechowywania obliczeń. Przenośność wiele z zaimplementowanych serwletów może być bez problemu uruchamiana na różnych serwerach, bez konieczności wprowadzania jakichkolwiek zmian w kodzie. Wiele serwerów umożliwia obsługę serwletów bezpośrednio bądź za pomocą niewielkich dodatków. Bezpieczeństwo zaimplementowane narzędzia programistyczne umożliwiają wykrywanie ewentualnych podstawowych błędów programistycznych, jakimi są buffer overflow, lub kwestia połączeń baz danych i SQL Injection. Narzędzia wspomagające śledzenie sesji, obsługi plików cookie, sprawdzanie zakresów, ochrony pamięci oraz zaimplementowane biblioteki zarządzające bezpieczeństwem sprawiają, iż aplikacje pisane za pomocą serwletów mają wysoki poziom bezpieczeństwa. Koszty zagraniczni usługodawcy oferują niedrogie lub czasem nawet darmowe serwery obsługujące technologie JEE, doskonale nadające się na aplikacje o niewielkim natężeniu ruchu. Do uruchamiania niewielkich aplikacji możemy wykorzystać darmowe kontenery serwletów takie jak: Tomcat, Jetty. Do większych aplikacji możemy wykorzystać serwery: Apache Geronimo, GlassFish, Oracle AS itd. 23

24 3.4. Podsumowanie Zalety przemawiające za platformami.net oraz J2EE sprawiły, iż wybór zawęził się do tych dwóch technologii, jednak nie okazał się on łatwy. Architektury tych dwóch systemów nie różnią się od siebie znacząco, jednak niektóre cechy technologii.net przemawiają na jej niekorzyść. Należy tu wymienić: zależność od platformy systemowej, słaba przenaszalność kodu (brak wsparcia dla części bibliotek w platformach alternatywnych takich jak Mono), uzależnienie rozszerzeń od jednego producenta, które przemawiają za konkurencyjną technologia. Atutami platformy JEE jest jej całkowita niezależność od platformy, znaczna popularność, duża ilość gotowych darmowych rozwiązań, kilka bardzo znaczących i darmowych rozszerzeń dostępnych w Internecie, wsparcie innych użytkowników tej technologii. Dostarczenie przez promotora klasy napisanej w języku Java obsługującej bibliotekę Infosel++ było decydującym atutem wyboru technologii Java. 24

25 4. Bazy danych Z rozwojem technologii tworzenia dynamicznych stron WWW ściśle związany jest problem sposobu przechowywania dużych zbiorów informacji, z których to strony te korzystają. Rozwiązaniem tego problemu okazują się serwery baz danych oraz systemy zarządzania ich treścią. Bazy danych są to zbiory informacji, które można przetwarzać za pomocą odpowiednich programów komputerowych, czyli tzw. systemów zarządzania bazami danych. Dzięki rozwojowi tej technologii mamy możliwość przechowywania dużych zbiorów danych, przeszukiwania ich oraz edycji informacji w nich zawartych. Większość stron internetowych, które odwiedzamy, na co dzień w Internecie współpracują z bazami danych. Jedne wykorzystują je do przechowywania informacji na temat użytkowników, inne na tematy związane z samą strona internetową, czyli artykuły, dane multimedialne itp. Ogromny rozwój tej technologii spowodował, iż dostępna jest duża ilość tego typu rozwiązań. Zaczynając od projektów komercyjnych firm tworzących technologie internetowe, takich jak Microsoft czy też Sun Microsystems, kończąc na systemach w pełni darmowych i ogólnodostępnych. W tym rozdziale opisane zostały trzy systemy zarządzania relacyjnymi bazami danych MySQL, PostgreSQL, oraz Firebird. Każdy z tych trzech systemów jest oprogramowaniem wolno dostępnym, opartymi o różne zasady licencyjne, lecz darmowym MySQL MySQL to system zarządzania relacyjnymi bazami danych. Został stworzony przez szwajcarską firmę MySQL AB, wykupioną później przez Sun Microsystems, która od stycznia 2010 roku stała się własnością firmy Oracle.[17] MySQL jest ogólnodostępnym oprogramowaniem open source na licencji GNU(GENERAL PUBLIC LICENSE), co zapewnia jej ogólnodostępność i bezpłatność, oraz nieograniczony dostęp do kodu źródłowego. Dzięki takiemu rozwiązaniu MySQL jest ciągle udoskonalany. Najważniejszym aspektem podczas tworzenia systemu MySQL była jego szybkość, a nie kompatybilność ze standardem SQL. Na początku MySQL nie obsługiwał transakcji, lecz obecnie obsługuje on większą cześć standardu ANSI/ISO SQL. W najnowszych wersjach serwera zaimplementowano nowe rozszerzenia oraz 25

1 Wprowadzenie do J2EE

1 Wprowadzenie do J2EE Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2

Bardziej szczegółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008 Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF

Bardziej szczegółowo

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Dotacje na innowacje. Inwestujemy w waszą przyszłość. PROJEKT TECHNICZNY Implementacja Systemu B2B w firmie Lancelot i w przedsiębiorstwach partnerskich Przygotowane dla: Przygotowane przez: Lancelot Marek Cieśla Grzegorz Witkowski Constant Improvement Szkolenia

Bardziej szczegółowo

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152 Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy

Bardziej szczegółowo

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa 1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko

Bardziej szczegółowo

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne Jarosław Kuchta Internetowe Usługi Informacyjne Komponenty IIS HTTP.SYS serwer HTTP zarządzanie połączeniami TCP/IP buforowanie odpowiedzi obsługa QoS (Quality of Service) obsługa plików dziennika IIS

Bardziej szczegółowo

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans. GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans

Bardziej szczegółowo

egroupware czy phpgroupware jest też mniej stabilny.

egroupware czy phpgroupware jest też mniej stabilny. Opengroupware to projekt udostępniający kompletny serwer aplikacji oparty na systemie Linux. Dostępny na licencji GNU GPL, strona domowa: http://www.opengroupware.org/ Jego cechy to wysoka stabilność,

Bardziej szczegółowo

Aplikacje Internetowe, Servlety, JSP i JDBC

Aplikacje Internetowe, Servlety, JSP i JDBC Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny

Bardziej szczegółowo

INFORMATYKA Pytania ogólne na egzamin dyplomowy

INFORMATYKA Pytania ogólne na egzamin dyplomowy INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja

Bardziej szczegółowo

OpenLaszlo. OpenLaszlo

OpenLaszlo. OpenLaszlo OpenLaszlo Spis Treści 1 OpenLaszlo Co to jest? Historia Idea Architektura Jako Flash lub DHTML Jako servlet lub SOLO Jak to działa? Język LZX Struktura programu Skrypty Obiekty i klasy Atrybuty i metody

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

EJB 3.0 (Enterprise JavaBeans 3.0)

EJB 3.0 (Enterprise JavaBeans 3.0) EJB 3.0 (Enterprise JavaBeans 3.0) Adrian Dudek Wirtualne Przedsiębiorstwo 2 Wrocław, 1 czerwca 2010 Plan prezentacji 1 Wprowadzenie Cel prezentacji Czym jest EJB 3.0? Historia 2 3 Cel prezentacji Wprowadzenie

Bardziej szczegółowo

SOP System Obsługi Parkingów

SOP System Obsługi Parkingów SOP System Obsługi Parkingów JEE i Android Marcin Tatjewski Tomasz Traczyk Grzegorz Zieliński Paweł Borycki 5 listopada 2009 www.sopark.pl Plan prezentacji Java Platform, Enterprise Edition (JEE) Wstęp

Bardziej szczegółowo

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji System informatyczny na produkcji: Umożliwi stopniowe, ale jednocześnie ekonomiczne i bezpieczne wdrażanie i rozwój aplikacji przemysłowych w miarę zmiany potrzeb firmy. Może adoptować się do istniejącej

Bardziej szczegółowo

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle EFEKTY KSZTAŁCENIA Wiedza Absolwent tej specjalności

Bardziej szczegółowo

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres Artur Kozubski Software Development GigaCon Warszawa 2008 Plan Historia projektu Firebird Architektura serwera Administracja

Bardziej szczegółowo

REFERAT O PRACY DYPLOMOWEJ

REFERAT O PRACY DYPLOMOWEJ REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja elektronicznego dziennika ocen ucznia Autor: Grzegorz Dudek wykonanego w technologii ASP.NET We współczesnym modelu edukacji, coraz powszechniejsze

Bardziej szczegółowo

Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej

Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej Małgorzata Barańska Wydział Informatyki i Zarządzania, Politechnika Wrocławska Beata Laszkiewicz Wydział

Bardziej szczegółowo

ActiveXperts SMS Messaging Server

ActiveXperts SMS Messaging Server ActiveXperts SMS Messaging Server ActiveXperts SMS Messaging Server to oprogramowanie typu framework dedykowane wysyłaniu, odbieraniu oraz przetwarzaniu wiadomości SMS i e-mail, a także tworzeniu własnych

Bardziej szczegółowo

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Serwer aplikacji Serwer aplikacji to: Serwer wchodzący w skład sieci komputerowej, przeznaczony

Bardziej szczegółowo

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ Systemy baz danych 1. 2 Wstęp do baz danych 2. 2 Relacyjny model baz danych. 3. 2 Normalizacja baz danych. 4. 2 Cechy

Bardziej szczegółowo

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym

Bardziej szczegółowo

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

System zarządzający grami programistycznymi Meridius

System zarządzający grami programistycznymi Meridius System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu

Bardziej szczegółowo

Forum Client - Spring in Swing

Forum Client - Spring in Swing Forum Client - Spring in Swing Paweł Charkowski. 0. Cel projektu Celem projektu jest próba integracji Spring Framework z różnymi technologiami realizacji interfejsu użytkownika, oraz jej ocena. Niniejszy

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r.

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Stworzenie platformy internetowej na potrzeby projektu. 1 Wykonanie portalu internetowego na potrzeby e-usługi, obejmującego

Bardziej szczegółowo

KARTA PRZEDMIOTU. Programowanie aplikacji internetowych

KARTA PRZEDMIOTU. Programowanie aplikacji internetowych KARTA PRZEDMIOTU Nazwa przedmiotu/modułu: Nazwa angielska: Kierunek studiów: Poziom studiów: Profil studiów Jednostka prowadząca: Programowanie aplikacji internetowych Web application development edukacja

Bardziej szczegółowo

Webowy generator wykresów wykorzystujący program gnuplot

Webowy generator wykresów wykorzystujący program gnuplot Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin Nowak nr albumu: 254118 Praca inżynierska na kierunku informatyka stosowana Webowy generator wykresów wykorzystujący

Bardziej szczegółowo

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller Dokumentacja systemu NTP rekrut Autor: Sławomir Miller 1 Spis treści: 1. Wstęp 1.1 Wprowadzenie 1.2 Zakres dokumentu 2. Instalacja 2.1 Wymagania systemowe 2.2 Początek 2.3 Prawa dostępu 2.4 Etapy instalacji

Bardziej szczegółowo

REFERAT O PRACY DYPLOMOWEJ

REFERAT O PRACY DYPLOMOWEJ REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i budowa systemu zarządzania treścią opartego na własnej bibliotece MVC Autor: Kamil Kowalski W dzisiejszych czasach posiadanie strony internetowej to norma,

Bardziej szczegółowo

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

I. Informacje ogólne. Jednym z takich systemów jest Mambo. MAMBO (CMS) I. Informacje ogólne CMS, Content Management System ("system zarządzania treścią") jest to jedna lub zestaw aplikacji internetowych pozwalających na łatwe utworzenie oraz późniejszą aktualizację

Bardziej szczegółowo

Aplikacje WWW Wprowadzenie

Aplikacje WWW Wprowadzenie Aplikacje WWW Wprowadzenie Beata Pańczyk na podstawie http://www.e-informatyka.edu.pl/ http://wazniak.mimuw.edu.pl/index.php?title=aplikacje_www Plan wykładu Składniki architektury WWW: klient HTTP, serwer

Bardziej szczegółowo

Zadanie nr 4.5: Oprogramowanie bazodanowe. Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia

Zadanie nr 4.5: Oprogramowanie bazodanowe. Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia Zadanie nr 4.5: Oprogramowanie bazodanowe Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia Zakres przedmiotu zamówienia obejmuje dostarczenie, wdrożenie oraz konfigurację

Bardziej szczegółowo

Dokumentacja aplikacji Szachy online

Dokumentacja aplikacji Szachy online Projekt z przedmiotu Technologie Internetowe Autorzy: Jakub Białas i Jarosław Tyma grupa II, Automatyka i Robotyka sem. V, Politechnika Śląska Przedmiot projektu: Aplikacja internetowa w języku Java Dokumentacja

Bardziej szczegółowo

WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ

WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ Zamawiający: Wojewódzkie Biuro Urbanistyczne we Wrocławiu ul. Świdnicka 12/16 50-068 Wrocław Wykonawca:

Bardziej szczegółowo

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7 I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego

Bardziej szczegółowo

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010 Bezpieczeństwo interoperacyjnego hostingu Gerard Frankowski, Zespół Bezpieczeństwa PCSS 4. Konferencja MIC Nowoczesne technologie bliżej nas Poznań, 04.03.2010 1 Agenda Wprowadzenie Zespół Bezpieczeństwa

Bardziej szczegółowo

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.wroc.pl http://www.tjeleniewski.wstt.edu.pl Treści kształcenia: Paradygmaty

Bardziej szczegółowo

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL Katedra Informatyki, Uniwersytet Rzeszowski 2009 Agenda System kontroli wersji CVS SVN Praca z SVN i Visual

Bardziej szczegółowo

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,

Bardziej szczegółowo

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi 1 Rozdział 1 Wprowadzenie do PHP i MySQL Opis: W tym rozdziale kursanci poznają szczegółową charakterystykę

Bardziej szczegółowo

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Statyczne strony HTML Wczytanie statycznej strony HTML sprowadza się do odebrania żądania przez serwer, odnalezienia właściwego pliku

Bardziej szczegółowo

System generacji raportów

System generacji raportów Zalety systemu Czym jest ProReports? prostota instalacji, wieloplatformowość (AIX, Linux, Windows, Solaris), obsługa popularnych formatów (PDF, XLS, RTF, HTML,TXT,XML,CSV), obsługa wielu baz danych, raporty

Bardziej szczegółowo

Języki i paradygmaty programowania - 1

Języki i paradygmaty programowania - 1 doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.edu.pl http://www.tjeleniewski.wstt.edu.pl Cele przedmiotu Umiejętność zastosowania i oceny przydatności paradygmatów

Bardziej szczegółowo

Generated by Foxit PDF Creator Foxit Software http://www.foxitsoftware.com For evaluation only. System Szablonów

Generated by Foxit PDF Creator Foxit Software http://www.foxitsoftware.com For evaluation only. System Szablonów System Szablonów System szablonów System szablonów to biblioteka, która pozwala oddzielić warstwę prezentacji od warstwy logicznej. Aplikacja WWW najpierw pobiera wszystkie dane, przetwarza je i umieszcza

Bardziej szczegółowo

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania. Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania. Założenia projektowe systemu NETDOC. część 1: założenia ogólne i funkcjonalność rdzenia systemu Założenia ogólne Celem projektu jest

Bardziej szczegółowo

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia ZP/ITS/11/2012 Załącznik nr 1a do SIWZ ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia Przedmiotem zamówienia jest: Przygotowanie zajęć dydaktycznych w postaci kursów e-learningowych przeznaczonych

Bardziej szczegółowo

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle 2010-10-21

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle 2010-10-21 Organizacja zajęć BAZY DANYCH II WYKŁAD 1 Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu.pl Liczba godzin i forma zajęć: 15 godzin wykładu oraz 30 godzin laboratorium Konsultacje:

Bardziej szczegółowo

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,

Bardziej szczegółowo

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja ZPKSoft WDoradca 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja 1. Wstęp ZPKSoft WDoradca jest technologią dostępu przeglądarkowego do zasobów systemu ZPKSoft Doradca.

Bardziej szczegółowo

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych Spis treści Wprowadzenie... ix Organizacja ksiąŝki... ix Od czego zacząć?... x Konwencje przyjęte w ksiąŝce... x Wymagania systemowe... xi Przykłady kodu... xii Konfiguracja SQL Server 2005 Express Edition...

Bardziej szczegółowo

Zdalne monitorowanie i zarządzanie urządzeniami sieciowymi

Zdalne monitorowanie i zarządzanie urządzeniami sieciowymi Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Infomatyki Stosowanej Piotr Benetkiewicz Nr albumu: 168455 Praca magisterska na kierunku Informatyka

Bardziej szczegółowo

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: 209216. Aukcjomat

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: 209216. Aukcjomat Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Paweł Parys Nr albumu: 209216 Aukcjomat Praca licencjacka na kierunku INFORMATYKA w zakresie INFORMATYKA Praca wykonana pod kierunkiem

Bardziej szczegółowo

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8. WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8. Gdy już posiadamy serwer i zainstalowany na nim system Windows XP, 7 lub 8 postawienie na nim serwera stron WWW jest bardzo proste. Wystarczy

Bardziej szczegółowo

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie informatycznej. Zadaniem systemu jest rejestracja i przechowywanie

Bardziej szczegółowo

Środowiska i platformy programistyczne

Środowiska i platformy programistyczne Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,

Bardziej szczegółowo

UNIX: architektura i implementacja mechanizmów bezpieczeństwa. Wojciech A. Koszek dunstan@freebsd.czest.pl Krajowy Fundusz na Rzecz Dzieci

UNIX: architektura i implementacja mechanizmów bezpieczeństwa. Wojciech A. Koszek dunstan@freebsd.czest.pl Krajowy Fundusz na Rzecz Dzieci UNIX: architektura i implementacja mechanizmów bezpieczeństwa Wojciech A. Koszek dunstan@freebsd.czest.pl Krajowy Fundusz na Rzecz Dzieci Plan prezentacji: Wprowadzenie do struktury systemów rodziny UNIX

Bardziej szczegółowo

Jednolite zarządzanie użytkownikami systemów Windows i Linux

Jednolite zarządzanie użytkownikami systemów Windows i Linux Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Paweł Gliwiński Nr albumu: 168470 Praca magisterska na kierunku Informatyka Jednolite

Bardziej szczegółowo

Tomasz Grześ. Systemy zarządzania treścią

Tomasz Grześ. Systemy zarządzania treścią Tomasz Grześ Systemy zarządzania treścią Co to jest CMS? CMS (ang. Content Management System System Zarządzania Treścią) CMS definicje TREŚĆ Dowolny rodzaj informacji cyfrowej. Może to być np. tekst, obraz,

Bardziej szczegółowo

Serwery. Autorzy: Karol Czosnowski Mateusz Kaźmierczak

Serwery. Autorzy: Karol Czosnowski Mateusz Kaźmierczak Serwery Autorzy: Karol Czosnowski Mateusz Kaźmierczak Czym jest XMPP? XMPP (Extensible Messaging and Presence Protocol), zbiór otwartych technologii do komunikacji, czatu wieloosobowego, rozmów wideo i

Bardziej szczegółowo

(Pluggable Authentication Modules). Wyjaśnienie technologii.

(Pluggable Authentication Modules). Wyjaśnienie technologii. Bezpieczeństwo systemów komputerowych. Temat seminarium: Moduły PAM (Pluggable Authentication Modules). Wyjaśnienie technologii Autor: Bartosz Hetmański Moduły PAM (Pluggable Authentication Modules). Wyjaśnienie

Bardziej szczegółowo

11. Autoryzacja użytkowników

11. Autoryzacja użytkowników 11. Autoryzacja użytkowników Rozwiązanie NETASQ UTM pozwala na wykorzystanie trzech typów baz użytkowników: Zewnętrzna baza zgodna z LDAP OpenLDAP, Novell edirectory; Microsoft Active Direcotry; Wewnętrzna

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,

Bardziej szczegółowo

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL. E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL. Autor: Larry Ullman Poznaj zasady wirtualnego handlu i zarabiaj prawdziwe pieniądze Jak stworzyć doskonałą witrynę sklepu internetowego? Jak

Bardziej szczegółowo

Zaawansowane narzędzia programowania rozproszonego

Zaawansowane narzędzia programowania rozproszonego Zaawansowane narzędzia programowania rozproszonego Karol Gołąb karol.golab@tls-technologies.com 28 listopada 2001 1 Streszczenie Omówienie i porównanie popularnych standardów mechanizmów komunikacyjnych:

Bardziej szczegółowo

Ekspert MS SQL Server Oferta nr 00/08

Ekspert MS SQL Server Oferta nr 00/08 Ekspert MS SQL Server NAZWA STANOWISKA Ekspert Lokalizacja/ Jednostka organ.: Pion Informatyki, Biuro Hurtowni Danych i Aplikacji Wspierających, Zespół Jakości Oprogramowania i Utrzymania Aplikacji Szczecin,

Bardziej szczegółowo

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010 System kontroli wersji - wprowadzenie Rzeszów,2 XII 2010 System kontroli wersji System kontroli wersji (ang. version/revision control system) służy do śledzenia zmian głównie w kodzie źródłowym oraz pomocy

Bardziej szczegółowo

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne przedmioty.

Bardziej szczegółowo

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Usługi analityczne budowa kostki analitycznej Część pierwsza. Usługi analityczne budowa kostki analitycznej Część pierwsza. Wprowadzenie W wielu dziedzinach działalności człowieka analiza zebranych danych jest jednym z najważniejszych mechanizmów podejmowania decyzji.

Bardziej szczegółowo

Serwery Aplikacji "CC" Grzegorz Blinowski. Grzegorz.Blinowski@cc.com.pl http://www.cc.com.pl/ tel (22) 646-68-73; faks (22) 606-37-80

Serwery Aplikacji CC Grzegorz Blinowski. Grzegorz.Blinowski@cc.com.pl http://www.cc.com.pl/ tel (22) 646-68-73; faks (22) 606-37-80 Serwery Aplikacji Grzegorz Blinowski "CC" Grzegorz.Blinowski@cc.com.pl http://www.cc.com.pl/ tel (22) 646-68-73; faks (22) 606-37-80 Aplikacje Web Aplikacje Web - nowe wcielenie modelu klientserwer: przeglądarka

Bardziej szczegółowo

Porównanie systemów zarządzania relacyjnymi bazami danych

Porównanie systemów zarządzania relacyjnymi bazami danych Jarosław Gołębiowski 12615 08-07-2013 Porównanie systemów zarządzania relacyjnymi bazami danych Podstawowa terminologia związana z tematem systemów zarządzania bazami danych Baza danych jest to zbiór danych

Bardziej szczegółowo

Serwery LDAP w środowisku produktów w Oracle

Serwery LDAP w środowisku produktów w Oracle Serwery LDAP w środowisku produktów w Oracle 1 Mariusz Przybyszewski Uwierzytelnianie i autoryzacja Uwierzytelnienie to proces potwierdzania tożsamości, np. przez: Użytkownik/hasło certyfikat SSL inne

Bardziej szczegółowo

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

System Kancelaris. Zdalny dostęp do danych

System Kancelaris. Zdalny dostęp do danych Kancelaris krok po kroku System Kancelaris Zdalny dostęp do danych Data modyfikacji: 2008-07-10 Z czego składaj adają się systemy informatyczne? System Kancelaris składa się z dwóch części: danych oprogramowania,

Bardziej szczegółowo

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1 Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Bazy danych ITA-101 Wersja 1 Warszawa, wrzesień 2009 Wprowadzenie Informacje o kursie Opis kursu We współczesnej informatyce coraz większą

Bardziej szczegółowo

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć

Bardziej szczegółowo

Wprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/

Wprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ 1 Wprowadzenie do J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji

Bardziej szczegółowo

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury

Bardziej szczegółowo

Środowisko NetBeans. Paweł Boguszewski

Środowisko NetBeans. Paweł Boguszewski Środowisko NetBeans Paweł Boguszewski Plan prezentacji Wprowadzenie Historia Funkcjonalność Kierunek Rozwoju Wtyczki Platforma NetBeans Podsumowanie Wprowadzenie NetBeans.org projekt OpenSource zapoczątkowany

Bardziej szczegółowo

Hurtownie danych - przegląd technologii

Hurtownie danych - przegląd technologii Hurtownie danych - przegląd technologii Problematyka zasilania hurtowni danych - Oracle Data Integrator Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel

Bardziej szczegółowo

Aplikacja internetowa vs Strona Internetowa. Aplikacja internetowa, (ang.) web application zwana również aplikacją webową, to program komputerowy,

Aplikacja internetowa vs Strona Internetowa. Aplikacja internetowa, (ang.) web application zwana również aplikacją webową, to program komputerowy, 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ć

Bardziej szczegółowo

Oracle Application Express -

Oracle Application Express - Oracle Application Express - Wprowadzenie Wprowadzenie Oracle Application Express (dawniej: HTML DB) to narzędzie do szybkiego tworzenia aplikacji Web owych korzystających z bazy danych Oracle. Od użytkownika

Bardziej szczegółowo

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework mgr inż. Łukasz Stefanowicz dr inż.

Bardziej szczegółowo

Część I Rozpoczęcie pracy z usługami Reporting Services

Część I Rozpoczęcie pracy z usługami Reporting Services Spis treści Podziękowania... xi Wprowadzenie... xiii Część I Rozpoczęcie pracy z usługami Reporting Services 1 Wprowadzenie do usług Reporting Services... 3 Platforma raportowania... 3 Cykl życia raportu...

Bardziej szczegółowo

Oracle11g: Programowanie w PL/SQL

Oracle11g: Programowanie w PL/SQL Oracle11g: Programowanie w PL/SQL OPIS: Kurs pozwala zrozumieć zalety programowania w języku PL/SQL. Studenci uczą się tworzyć bloki kodu wykonywanego po stronie serwera, który może być współużytkowany

Bardziej szczegółowo

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE)

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE) Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE) Temat projektu/pracy dr inż. Wojciech Waloszek Grupowy system wymiany wiadomości. Zaprojektowanie

Bardziej szczegółowo

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer; 14.3. Podstawy obsługi X Window 14.3. Podstawy obsługi X Window W przeciwieństwie do systemów Windows system Linux nie jest systemem graficznym. W systemach Windows z rodziny NT powłokę systemową stanowi

Bardziej szczegółowo

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie

Bardziej szczegółowo