Mozilla jako platforma aplikacji
|
|
- Tadeusz Owczarek
- 7 lat temu
- Przeglądów:
Transkrypt
1 Mozilla jako platforma aplikacji Paweł Hryczuk 11 maja 2006
2 Plan prezentacji Wprowadzenie historia Mozilli czym jest Mozilla Architektura składniki platformy technologie platformy Zastosowania i porównania rodzaje zastosowań porównanie z innymi platformami Moduł WebMemo omówienie pokaz na żywo
3 Początki Mozilli Konkurencja Netscape Navigatora z NCSA Mosaic Mozilla pochodzi od Mosaic killer początkowo nazwa kodowa Navigatora i maskotka w firmie Netscape Microsoft po nieudanej próbie przejęcia Navigatora wykupuje Mosaica Tzw. browser wars między Netscape a Microsoft walka o kontrolę nad standardami sieciowymi
4 Narodziny Mozilli 23 lutego 1998 Firma Netscape zrzeka się praw autorskich do kodu Navigatora nigdy wcześniej duża firma nie zdecydowała się na taki krok powodem była rosnąca przewaga rynkowa Microsoftu Powstaje Mozilla Foundation nadzorująca rozwój projektu o już oficjalnej nazwie Mozilla Mozilla stopniowo uniezależnia się od Netscape a rozwój społeczności programistów udział nowych sponsorów
5 Ewolucja Ewolucja Mozilli od przeglądarki przez zestaw aplikacji sieciowych do platformy programistycznej Nadal sponsorowana przez Netscape Aktualne wersje Mozilla 1.8 Firefoks 1.5 Dzisiaj jeden z największych na świecie projektów open-source
6 Czym jest Mozilla Zestawem aplikacji sieciowych Mozilla Application Suite (Seamonkey) Przeglądarką internetową Firefoks Organizacją i społecznością internetową Mozilla Foundation Platformą aplikacji Mozilla Application Framework
7 Projekty mozilla.org Firefoks Thunderbird SeaMonkey (Mozilla Application Suite) Sunbird (Calendar) Narzędzia dla programistów Bugzilla Tinderbox Bonsai
8 Ideologia Firefoks browser wars are back Mozilla Technology Evangelism The Book of Mozilla URL: about:mozilla
9
10 Architektura
11 Składniki Mozilli Obsługa interfejsu użytkownika Interpreter Gecko Biblioteka sieciowa Necko Komponenty XPCOM Obsługa Web Services Mechanizm instalacyjny XPInstall
12 Gecko Oddzielony od pozostałych części Mozilli Niewielki a w pełni funkcjonalny jako przeglądarka Bardzo dobra obsługa standardów W3C restrykcyjny dla programisty, pobłażliwy dla użytkownika Strategia Mark III układ strony powstaje dynamicznie w trakcie ładowania dokumentu przewidywanie dotąd nie otrzymanych znaczników informacja kontrolna RDF usuwanie i dodawanie fragmentów strony nawet po załadowaniu dokumentu
13 Mozilla platformą aplikacji In computer programming, an application framework is a term usually used to refer to a set of libraries or classes that are used to implement the standard structure of an application for a specific operating system. By bundling a large amount of reusable code into a framework, much time is saved for the developer, since he/she is saved the task of rewriting large amounts of standard code for each new application that is developed. from wikipedia Cechy charakterystyczne Mozilli wieloplatformowość elastyczność specjalizacja w zastosowaniach sieciowych otwarte standardy i specyfikacje W3C open-source i licencja MPL/GPL ciekawe rozwiązania te cechy platformy przenoszą się na aplikacje
14 Kod źródłowy Większy dwa razy od jądra linuksa Wielkości kodu GNOME 2.0 łącznie z jego 150 standardowymi aplikacjami Ponad 1000 interfejsów i ponad 1000 klas Napisany głównie w C++ pewna część w JavaScript Bardzo ładny i czytelny
15 Diagram warstwowy XPFE Cross-Platform Front End Warstwa pośrednia XPConnect XPBE Cross-Platform Back End
16 Przegląd technologii XUL CSS DTD Interfejs użytkownika JavaScript XBL Technologie niskopoziomowe XPCOM XPIDL RDF XPConnect XULRunner XPInstall
17 XUL XML User Interface Language Deklaratywny język do opisu interfejsu użytkownika bardzo duża elastyczność oddzielenie od logiki brak konieczności kompilacji prosta struktura i przejrzystość Określa kontrolki z atrybutami, strukturę i układ (layout) XUL Templates kontrolki z dynamicznymi danymi
18 XUL c.d. Przestrzeń nazw XUL Interfejs Mozilli jest napisany w XUL Gdzie jest granica między XUL a HTML? chrome://browser/content
19
20 CSS Cascading Style Sheets CSS służy do opisywania prezentacji dokumentów XML W Mozilli CSS określa wygląd kontrolek stylizowanie aplikacji Tematy i skórki (themes & skins) wygląd interfejsu niezależny od struktury proste dodawanie i zmienianie tematów Zgodne ze specyfikacją W3C ok. 200 specyficznych własności
21 DTD Document Type Definition Sprawdzanie poprawności dokumentów XML również rozwijanie encji rekomendacja W3C W Mozilli służy do lokalizowania aplikacji encje używane w XUL rozwijane do napisów w zależności od aktualnego języka Tłumaczenie jest proste technicznie i nie wymaga znajomości programowania
22 JavaScript Jeden z najczęściej używanych języków skryptowych odniósł ogromny sukces w programowaniu WWW W Mozilli służy do obsługi interfejsu użytkownika zagnieżdżanie w XUL identyczne jak w HTML instalowanie funkcji obsługi zdarzeń Wywoływanie metod komponentów XPCOM Realizowanie części funkcjonalności często wygodniejszy od C++ na przykład browser.js ma ponad 6000 linii kodu
23 JavaScript c.d. JavaScript łączy interfejs z logiką poprzez wywołania XPConnect
24 XBL XML Binding Language Określa sposób działania kontrolek interfejsu rozszerzanie funkcjonalności interfejsu modyfikacja metod i atrybutów kontrolek metody implementowane jako wstawki JavaScript Wysokopoziomowy język obiektowy dziedziczenie, agregacja, interfejsy, itd. zgodny z XML Dodawanie powiązań (bindings) a nie kontrolek nowe elementy opierają się na istniejących prosta implementacja, ale ograniczone możliwości
25 Przykład powiązania
26 Programowanie komponentowe Umożliwia zarządzanie nawet bardzo dużym kodem źródłowym niezależna kompilacja komponentów niezależność od języka programowania niezależne testy jednostkowe Oddzielenie interfejsu od implementacji wywołujący nie wie kto implementuje dany interfejs, ani gdzie się znajduje Przywiązanie do zastosowanej platformy
27 XPCOM Cross-Platform Component Object Model Platforma Mozilla podzielona na współpracujące, ale niezależne komponenty komunikacja przez interfejsy Dynamiczne ładowanie żądanych modułów ogromna oszczędność pamięci szybki start platformy Zarządzanie rejestrem załadowanych modułów odpowiadanie na zapytania typu Czy komponent X implementuje interfejs Y?
28 Wywoływanie XPCOM Moduł biblioteka dynamiczna jeden albo wiele komponentów Komponent jest usługą udostępniającą metody określone w interfejsie sam może też być klientem
29 XPCOM metoda NSGetModule() dynamiczne ładowanie komponentu nsimodule rejestracja komponentu dostęp do implementującej klasy nsifactory obiekty są tworzone przez fabryki dostępne jako metody interfejsu
30 XPCOM Glue Zbiór różnych narzędzi programistycznych to nie są komponenty Biblioteki operacje na ciągach znaków (nsistring) inteligentne wskaźniki (smart pointers) Makra wiele rodzajów asercji Przyczyna charakterystycznego wyglądu kodu Mozilli
31 XPIDL Cross-Platform Interface Definition Language Pochodzi od CORBA IDL niewielkie różnice techniczne nieznacznie zmodyfikowany kompilator Specyfikowanie interfejsów niezależny od platformy współpracuje z wieloma językami programowania Kompilacja do biblioteki typów szkieletu C++ dokumentacji HTML Część interfejsów oznaczona jako frozen
32 RDF Resource Description Framework RDF formułowanie zdań o strukturze podmiot predykat obiekt definiowanie słownictwa rekomendacja W3C W Mozilli spełnia podwójną rolę grafowy model opisywania zasobów internetowych i ich wzajemnych relacji np. hierarchiczne drzewo zakładek mechanizm serializacji przesyłanie danych przez sieć aplikacje rozproszone
33 Źródła danych (datasources) Główne zastosowanie RDF Bardzo abstrakcyjny i elastyczny model reprezentowania informacji stosowany również dla tabelkowych danych Trzy rodzaje przechowywane w pamięci serializowane i zapisywane na dysku złożone Reprezentowane za pomocą wzorców XUL jako drzewa, tabeli, menu
34 XPConnect Cross-Platform Connect Niewielka warstwa pośrednia między XPFE a XPBE Wykorzystywanie komponentów XPCOM w innych językach JavaScript Python Java Perl (w trakcie przygotowywania) Same komponenty mogą być pisane w C++ oraz JavaScript
35 XULRunner Zamienia zbiór bibliotek w platformę aplikacji instalacja, aktualizacja i deinstalacja aplikacji w systemie operacyjnym początkowe ładowanie platformy runtime package Programiści niezależnych aplikacji w ten sposób uruchamiają je razem z platformą Wiele aplikacji na jednej platformie
36 XPInstall Cross-Platform Install Mechanizm rozszerzania aplikacji Określa budowę pakietu strukturę katalogów format pliku z informacją o pakiecie (manifest) archiwum w formacie zip Zainstalowany kod otrzymuje pełne uprawnienia podpisy cyfrowe przy instalacji rozszerzeń
37 On-line Alternatywa dla instalowania aplikacji lokalnie strony WWW napisane w języku XUL dużo większe możliwości niż w HTML Bardzo ograniczone uprawnienia Przykład: gry
38 Rola języka XML Wspólny dla wielu technologii XUL, HTML, XBL, RDF, SVG, RSS, MathML Nadaje elastyczność tym technologiom Open-Closed Principle dowolne kodowanie znaków Wszystkie korzystają z tych samych komponentów do parsowania XML Dokumenty reprezentowane zgodnie ze standardem DOM
39 Zastosowania i porównania
40 Zagnieżdżanie Gecko Najczęstsze zastosowanie Mozilli Zagnieżdżanie interpretera Gecko wystarczy znajomość API niewielka integracja z platformą przykłady: K-Meleon, Epiphany
41 Zagnieżdżanie Gecko przykład
42 Rozszerzenia Pisanie rozszerzeń tematy i skórki tłumaczenia modyfikowanie działania interfejsu wystarczy JavaScript nowa funkcjonalność programowanie komponentów C++ Niewielkie wymagania pamięciowe Linkowanie z XPCOM Glue Integracja z istniejącym interfejsem XUL Overlays
43 Niezależne aplikacje Bardzo duże możliwości Szybkie tworzenie prototypowych interfejsów Niekoniecznie aplikacje sieciowe np. Sunbird Projekty komercyjne Crocodile Clips ActiveState Komodo
44 Mozilla vs. DHTML W pewnym sensie każda przeglądarka jest platformą aplikacji Mozilla jest rozwinięciem tego pomysłu Podstawowa różnica HTML: stworzony do hypertekstu XUL: specjalnie zaprojektowany dla UI Pozostałe składniki wspólne Dlatego Mozilla bardzo dobrze nadaje się do tworzenia wizualnych i iteraktywnych aplikacji
45 Mozilla vs..net Mozilla XPCOM C++ JavaScript Gecko Necko XUL RDF COM.NET C# JScript.NET Avalon Indigo XAML XML Schema Główna różnica polega na dostępności kodu źródłowego i rozszerzalności
46 Mozilla vs. Java Mozilla aplikacje sieciowe komunikacja przez XML Wiele języków programowania i standardów słaba wielowątkowość Java uniwersalne aplikacje urządzenia przenośne komunikacja przez byte-code bardzo dobra wielowątkowość, narzędzia i dokumentacja
47 Aplikacje mogą wyglądać identycznie na wszystkich platformach albo wykorzystywać specyficzny look-and-feel systemu
48 Moduł WebMemo
49 WebMemo Rozszerzenie Firefoksa Mój projekt magisterski Cel nowa implementacja historii i zakładek drzewo historii Wymagania dodanie nowej funkcjonalności bez modyfikowania istniejącej prosta instalacja efektywność
50 Baza danych W przeglądarce potrzebna do przechowywania historii odwiedzanych stron wypełnianych formularzy zakładek W nowych aplikacjach może być niezbędna do innych celów Wymagania odporność na awarie elastyczność format tekstowy oszczędność pamięci The last goal could have been done better...
51 Możliwe rozwiązania XML byłby najlepszym rozwiązaniem ale 10 lat temu obawiano się korupcji danych Zastosowanie bazy danych z ACID zakończone niepowodzeniem problemy z licencjonowaniem Stworzenie abstrakcyjnego interfejsu MDB niezależność od konkretnego rozwiązania możliwość użycia komercyjnej bazy danych w Netscape Navigator, a darmowej w Mozilli
52 Mork Pierwsza implementacja MDB w założeniu tymczasowa w praktyce używana do dziś... Zalety spełnia powyższe wymagania stabilność Ograniczenia nieefektywność nieczytelność
53 Mork przykład
54 Mork It is impossible for non-mozilla programs to extract data from history.dat because it uses Mork, which is and I do not use these words lightly the single most braindamaged file format that I have ever seen in my nineteen year career. from Mozilla Bug
55 SQLite Minimalistyczna implementacja bazy danych spełnia ACID implementuje większość standardu SQL92 nierestrykcyjna licencja i dostępność źródeł Ma w przyszłości zastąpić format Mork ale nigdy nie było to priorytetem Zaimplementowany w WebMemo
56 Datasource Warstwa pośrednia między bazą danych a interfejsem użytkownika Dane muszą być sformatowane w RDF konieczna ręczna konwersja typów Implementacja 15 metod interfejsu RDF różne operacje na danych pełna kontrola Wykorzystywanie słownictwa Mozilli oraz własnego
57 Drzewo historii Pomysł przedstawienia historii jako drzewa a nie listy nie istnieje implementacja ani dla Firefoksa, ani dla IE Przechwytywanie wydarzeń historii globalna i lokalna historia pole referrer niektóre strony nie działają poprawnie Zastosowanie kontrolki drzewa jedna z najbardziej złożonych kontrolek XUL
58 Implementacja WebMemo Główna część kodu w C++ prawie wszystkie dostępne w sieci rozszerzenia ograniczają się do JavaScriptu JavaScript do obsługi interfejsu napisanego w XUL jeden komponent w JavaScript Kompilacja niezależna od Mozilli wymaga plików nagłówkowych komponentów Interfejsy frozen nie wystarczą Inne zagadnienia profile i uruchamianie platformy zwalnianie zadeklarowanej pamięci
59 Budowa pakietu content pliki XUL i CSS locale pliki DTD components moduły komponentów install.rdf opis pakietu META-INF podpis cyfrowy pakietu
60 Moje doświadczenia Skomplikowana konfiguracja środowiska sama kompilacja Mozilli nie jest prosta Dużo trudności szczególnie na początku słaba dokumentacja szczególnie zaawansowana niewiele materiałów w sieci duży kod źródłowy Dobre strony bardzo ładny kod źródłowy i styl programowania szeroki zakres stosowanych technologii ciekawa architektura
61 Podsumowanie Mozilla jest 8-letnim projektem, stabilnym i nieustannie ewoluującym Firefoks zyskał ogromną popularność Jako platforma aplikacji Mozilla jest bardzo dobra do pewnych zastosowań aplikacje sieciowe interaktywne i wizualne aplikacje W Mozilli istnieje sporo niedokończonych i niedopracowanych fragmentów kodu równie wiele funkcjonalności można dodać...
62 Więcej informacji Witryny Nigel McFarlane Rapid Application Development with Mozilla David Boswell i inni Creating Applications with Mozilla Doug Turner i Ian Oeschger Creating XPCOM Components Neil Deakin, XUL Tutorial
63 Pokaz na żywo
Zarządzanie globalną historią w przeglądarce opartej na Mozilli
Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Paweł Hryczuk Nr albumu: 197864 Zarządzanie globalną historią w przeglądarce opartej na Mozilli Praca magisterska na kierunku INFORMATYKA
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,
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
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
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
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
Obiektowy model dokumentu. Katedra Mikroelektroniki i Technik Informatycznych
Katedra Mikroelektroniki i Technik Informatycznych Łódź, 14 października 2005 roku Wstęp DOM Document Object Model zapewnia: Zbiór obiektów reprezentujących dokumenty XML i HTML. Model łączenia obiektów.
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
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
Analiza i projektowanie aplikacji Java
Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie
Programowanie Zespołowe
Programowanie Zespołowe Dobre Praktyki dr Rafał Skinderowicz mgr inż. Michał Maliszewski Parafrazując klasyka: Jeśli piszesz w Javie pisz w Javie - Rafał Ciepiela Principal Software Developer Cadence Design
Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i
Program szkolenia: Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Produktywne tworzenie aplikacji webowych z
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
Konspekt pracy inżynierskiej
Konspekt pracy inżynierskiej Wydział Elektryczny Informatyka, Semestr VI Promotor: dr inż. Tomasz Bilski 1. Proponowany tytuł pracy inżynierskiej: Komunikator Gandu na platformę mobilną Android. 2. Cel
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
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
XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
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ść,
Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8
Początki Javy Java została pierwotnie zaprojektowana dla telewizji interaktywnej, ale była to zbyt zaawansowaną technologią dla branży cyfrowej telewizji kablowej. James Gosling, Mike Sheridan i Patrick
Programowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT
Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT O co chodzi? - Przypomnienie Hackathon - http://en.wikipedia.org/wiki/hackathon A hackathon is an event in which computer programmers
Politechnika Poznańska, Instytut Informatyki, TWO/GE. Programowanie dla ios
Politechnika Poznańska, Instytut Informatyki, TWO/GE Programowanie dla ios 13 stycznia 2012 Urządzenia ios Urządzenie Data prezentacji iphone 9.01.2007/06.2007 ipod touch 5.09.2007 iphone 3G 9.06.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
Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida
Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida Cel pracy Analiza wybranych ram projektowych dostępnych dla platformy Java Warunki selekcji napisany z wykorzystaniem języka Java oraz
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
Projekt: Mikro zaprogramowane na sukces!
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Projekt: Mikro zaprogramowane na sukces! Opis autoryzowanych szkoleń Microsoft planowanych do realizacji w ramach
Ś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,
Front-end: solidne podstawy. Wszystko, co warto wiedzieć o HTML, CSS, JavaScript i Bootstrap.
Kod szkolenia: Tytuł szkolenia: FRONT-END Front-end: solidne podstawy. Wszystko, co warto wiedzieć o HTML, CSS, JavaScript i Bootstrap. Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest zarówno dla
1. CZYM JEST SERIALIZACJA
SERIALIZACJA O CZYM POWIEMY? 1. Czym jest serializacja? 2. Jak przeprowadzić proces serializacji? 3. Jak przeprowadzić proces deserializacji? 4. Serializacja własnych klas. 5. Dobre praktyki. 6. SoapFormatter.
To sposób w jaki użytkownik wchodzi w interakcje z systemem. Środowisko graficzne używa kombinacji graficznych elementów(przyciski, okna, menu) i
Aleksandra Dębiecka To sposób w jaki użytkownik wchodzi w interakcje z systemem. To sposób w jaki użytkownik wchodzi w interakcje z systemem. Środowisko graficzne używa kombinacji graficznych elementów(przyciski,
PyPy's Approach to Virtual Machine Construction
PyPy's Approach to Virtual Machine Construction Armin Rigo, Samuele Pedroni Prezentacja: Michał Bendowski Czym jest PyPy? Implementacja Pythona w Pythonie - wydajniejsza niż oryginalna implementacja w
Wykład 6 Dziedziczenie cd., pliki
Wykład 6 Dziedziczenie cd., pliki Autor: Zofia Kruczkiewicz 1. Dziedziczenie cd. 2. Pliki - serializacja Zagadnienia 1. Dziedziczenie aplikacja Kalkultory_2 typu Windows Forms prezentująca dziedziczenie
Programowanie obiektowe. Wprowadzenie
1 Programowanie obiektowe Wprowadzenie 2 Programowanie obiektowe Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
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,
Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+
Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu
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
Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych
Kod szkolenia: ANGULAR 4 Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
REFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
Kompleksowe tworzenie aplikacji klasy Desktop z wykorzystaniem SWT i
Program szkolenia: Kompleksowe tworzenie aplikacji klasy Desktop z wykorzystaniem SWT i JFace Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Kompleksowe tworzenie aplikacji
EXSO-CORE - specyfikacja
EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.
WPROWADZENIE DO JĘZYKA JAVA
WPROWADZENIE DO JĘZYKA JAVA programowanie obiektowe KRÓTKA HISTORIA JĘZYKA JAVA KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny języka java. Pierwsza nazwa Oak (dąb). KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny
SZKOLENIE TWORZENIE SYSTEMÓW
SZKOLENIE TWORZENIE SYSTEMÓW INFORMATYCZNYCH Z UŻYCIEM GROOVY I GRAILS KOD: JGR Strona 1 1 Opis Platforma Java EE to zbiór zaawansowanych narzędzi umożliwiających tworzenie systemów korporacyjnych. Jest
Historia modeli programowania
Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu
Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
Tworzenie raportów XML Publisher przy użyciu Data Templates
Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia
III Edycja ITPro 16 maja 2011
III Edycja ITPro 16 maja 2011 SharePoint 2010 SharePoint jako platforma ERP Paweł Szczecki pawel.szczecki@predica.pl Prelegent Paweł Szczecki Współwłaściciel firmy Predica sp. z o.o. Odpowiedzialny za
UML w Visual Studio. Michał Ciećwierz
UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować
Projektowanie, tworzenie aplikacji mobilnych na platformie Android
Program szkolenia: Projektowanie, tworzenie aplikacji mobilnych na platformie Android Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Projektowanie, tworzenie aplikacji mobilnych
Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy
Dokumentacja techniczna Młodzieżowe Pośrednictwo Pracy Spis Treści 1. Widok ogólny architektury MPP... 3 2. Warstwy systemu... 5 3. Struktura systemu/komponentów... 7 3.1 Aplikacje... 7 3.2 Biblioteki...
Tworzenie oprogramowania
Tworzenie oprogramowania dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Tworzenie oprogramowania dla systemów wbudowanych Program wykładu: Tworzenie aplikacji na systemie wbudowanym. Konfiguracja
Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE
Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE Cena szkolenia Cena szkolenia wynosi 100 zł za 60 min. Ilość godzin szkolenia jest zależna od postępów w nauce uczestnika kursu oraz ilości czasu, którą będzie
Tomasz Grześ. Systemy zarządzania treścią, cz. II
Tomasz Grześ Systemy zarządzania treścią, cz. II Panel administracyjny Panel administracyjny pozwala na zarządzanie wszystkimi elementami pakietu, m.in. zarządzanie użytkownikami, edycję stron, instalowanie
OBC01/TOPMOB Projektowanie w języku Objective-C
Szkolenie skierowane do: Programistów zaczynających pracę z platformą ios na urządzeniach iphone oraz ipad. Tematy zajęć: Dzień 1 1. Wprowadzenie Zarys historyczny NextStep oraz rozwój Apple ios Historia
PRZYJĘTE ZASADY GRY...3 ZAŁOŻENIA PROJEKTU...4 CZYM JEST I DLACZEGO QT?...5 DIAGRAM KLAS...7 DIAGRAM GRY SINGLE PLAYER...8 DIAGRAM MULTIPLAYERA...
WARCABY Spis treści PRZYJĘTE ZASADY GRY...3 ZAŁOŻENIA PROJEKTU...4 CZYM JEST I DLACZEGO QT?...5 DIAGRAM KLAS...7 DIAGRAM GRY SINGLE PLAYER...8 DIAGRAM MULTIPLAYERA...9 1.PRZYJĘTE ZASADY GRY 1. W grze bierze
Tworzenie aplikacji Web Alicja Zwiewka. Page 1
Tworzenie aplikacji Web Alicja Zwiewka Page 1 Co to są web-aplikacje? Aplikacja internetowa (ang. web application) program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć komputerową
ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH
ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH szkolenie dla webdeveloperów ze znajomością przynajmniej podstaw HTML i JavaScript INFORMACJE PODSTAWOWE AngularJS to framework JavaScript stworzony przez inżynierów
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji
Podstawy programowania. Wprowadzenie
Podstawy programowania Wprowadzenie Proces tworzenia programu Sformułowanie problemu funkcje programu zakres i postać danych postać i dokładność wyników Wybór / opracowanie metody rozwiązania znaleźć matematyczne
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą
INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE
Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby
Komunikacja i wymiana danych
Budowa i oprogramowanie komputerowych systemów sterowania Wykład 10 Komunikacja i wymiana danych Metody wymiany danych Lokalne Pliki txt, csv, xls, xml Biblioteki LIB / DLL DDE, FastDDE OLE, COM, ActiveX
Tester oprogramowania 2014/15 Tematy prac dyplomowych
Tester oprogramowania 2014/15 Tematy prac dyplomowych 1. Projekt i wykonanie automatycznych testów funkcjonalnych wg filozofii BDD za pomocą dowolnego narzędzia Jak w praktyce stosować Behaviour Driven
Uniwersytet Mikołaja Kopernika. Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej
Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin HENRYKOWSKI Nr albumu: 158069 Praca magisterska na kierunku Informatyka Archiwizacja
Google Android. Opracował Maciej Ciurlik
Google Android Opracował Maciej Ciurlik Plan prezentacji Wprowadzenie Architektura Cykl życia aplikacji Wprowadzenie Android - kompletny zbiór oprogramiwania dla urządzeń mobilnych. System operacyjny Middleware
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
Wzorce Strukturalne. Adapter: opis. Tomasz Borzyszkowski
Adapter: opis Wzorce Strukturalne Tomasz Borzyszkowski Alternatywna nazwa: Wrapper (opakowanie) Rola obiektu Adapter: pełni wobec Klienta rolę otoczki, która umożliwia przetłumaczenie jego żądań na protokół
Android tworzenie aplikacji mobilnych
Android tworzenie aplikacji mobilnych Charakterystyka Szkolenie ma na celu zaznajomienie słuchaczy z tworzeniem aplikacji działających na systemie operacyjnym Android z naciskiem na przedstawienie zaawansowanych
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Wstęp Programowanie w Javie 2 mgr inż. Michał Misiak Agenda Założenia do wykładu Zasady zaliczeń Ramowy program wykładu
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:
Szczegółowy opis zamówienia:
Szczegółowy opis zamówienia: Rok 2016 budowa stron w html5 (8h v + 4h ćw) 8 szt. html5 - zaawans. (7h v + 5h ćw) 8 szt. programowania w java script (9h v + 7h ćw) 8 szt. java script zaawans (8h v + 4h
Bazy danych i strony WWW
Bazy danych i strony WWW Obsługa baz danych poprzez strony WWW Niezbędne narzędzia: serwer baz danych np. MySQL serwer stron WWW np. Apache przeglądarka stron WWW interpretująca język HTML język skryptowy
Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po
Zacznij Tu! Poznaj Microsoft 2012. Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska
Zacznij Tu! Poznaj Microsoft 2012 Visual Basic Michael Halvorson Przekład: Joanna Zatorska APN Promise, Warszawa 2013 Spis treści Wstęp...................................................................vii
Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]
JAVA wprowadzenie do programowania (3/3) [1] Czym jest aplikacja Java Web Start? Aplikacje JAWS są formą pośrednią pomiędzy apletami a aplikacjami Javy. Nie wymagają do pracy przeglądarki WWW, jednak mogą
JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008
JDBC w LoXiMie Interfejs Java Database Connectivity dla systemu LoXiM Adam Michalik 2008 Sterownik JDBC co to jest? Sterownik JDBC to zbiór klas implementujących interfejsy opisane w specyfikacji JDBC
REACT NATIVE. Anna Maziejuk Kamil Jankowski
REACT NATIVE Anna Maziejuk Kamil Jankowski React Native Framework/biblioteka bazujący na React Pozwala na tworzenie aplikacji tylko za pomocą języka JavaScript Wspiera platformy ios i Android REACT React
Java - wprowadzenie. Programowanie Obiektowe Mateusz Cicheński
Java - wprowadzenie Programowanie Obiektowe Mateusz Cicheński O języku Czym jest Java Cechy charakterystyczne języka Przykładowe zastosowania Składnia języka Podstawowe typy Wybrane słowa kluczowe Plan
extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl
extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl Plan wykładu Wprowadzenie: historia rozwoju technik znakowania tekstu Motywacje dla prac nad XML-em Podstawowe koncepcje XML-a XML jako metajęzyk
Struktury systemów operacyjnych
Struktury systemów operacyjnych Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Cele wykładu 1. Opis usług dostarczanych przez OS
Podstawy programowania wykład
Podstawy programowania wykład WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 1 Materiały do wykładu
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
Domain-specific Languages. Języki dziedzinowe. Adam Robaszyński-Janiec a.r.janiec@world-loom.com
Domain-specific Languages Języki dziedzinowe Adam Robaszyński-Janiec a.r.janiec@world-loom.com Czym są DSL? (często) prosty język przewidziany do rozwiązania konkretnego problemu Wysokopoziomowy (wyżej
PROJEKTOWANIE APLIKACJI INTERNETOWYCH
PROJEKTOWANIE APLIKACJI INTERNETOWYCH (WFAIS.IF-N016) dr inż. Marcin Zieliński Wykład dla kierunku: Informatyka Stosowana I rok, II stopień Rok akademicki: 2016/2017 - semestr letni WYKŁAD 1 Konsultacje
Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: DED/FSJS Full Stack JavaScript z Angular i Nest Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających podstawową wiedzę w zakresie JavaScript,
XML i nowoczesne technologie zarządzania treścią
XML i nowoczesne technologie zarządzania treścią Egzamin, 7 lutego 2014 r. Imię i nazwisko: Czas: 90 minut. Maksymalna suma punktów: 50. Pytania testowe są wielokrotnego wyboru, można przyjąć że co najmniej
Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript
Kod szkolenia: Tytuł szkolenia: HTML5/ANG Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript Dni: 5 Opis: Adresaci szkolenia: Kurs przeznaczony jest dla programistów
Wypożyczalnia VIDEO. Technologie obiektowe
Wypożyczalnia VIDEO Jest to program do obsługi wypożyczalni i wypożyczeń klientów. Głównym zadaniem programu jest zarządzanie wypożyczeniami i drukowanie potwierdzenia wypożyczenia oraz naliczenie punktów
ZSBD ćwiczenie 4. Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. Wymagania: ZSBD ćwiczenie 4
Zaawansowane Systemy Bazy Danych - ZSBD ZSBD ćwiczenie 4 Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. ZSBD ćwiczenie 4 W ramach tych i dwóch kolejnych ćwiczeń zapoznacie się
Narzędzia RAD (wykład 1)
Narzędzia RAD (wykład 1) Piotr Cybula Uniwersytet Łódzki, Wydział Matematyki cybula@math.uni.lodz.pl http://www.math.uni.lodz.pl/~cybula Rys historyczny (1) lata 80-te i początek 90-tych: środowiska programistyczne
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
OfficeObjects e-forms
OfficeObjects e-forms Rodan Development Sp. z o.o. 02-820 Warszawa, ul. Wyczółki 89, tel.: (+48-22) 643 92 08, fax: (+48-22) 643 92 10, http://www.rodan.pl Spis treści Wstęp... 3 Łatwość tworzenia i publikacji
Aplikacje Internetowe
Aplikacje Internetowe ITA-103 Wersja 1 Warszawa, październik 2008 Spis treści Wprowadzenie i-4 Moduł 1 Podstawy HTML 1-1 Moduł 2 Kaskadowe Arkusze Stylów CSS 2-1 Moduł 3 Podstawy JavaScript 3-1 Moduł 4
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
Nauczanie na odległość
P o l i t e c h n i k a W a r s z a w s k a Nauczanie na odległość a standaryzacja materiałów edukacyjnych Krzysztof Kaczmarski Nauczanie na odległość T Nauczanie ustawiczne T Studia przez Internet? T
Tematy dyplomów inżynierskich 2009 Katedra Inżynierii Oprogramowania
Tematy dyplomów inżynierskich 2009 Katedra Inżynierii Oprogramowania Literatura Projekt i implementacja biblioteki tłumaczącej zapytania w języku SQL oraz OQL na zapytania w języku regułowym. dr hab. inż.
Java jako język programowania
Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)
Web Services. Wojciech Mazur. 17 marca 2009. Politechnika Wrocławska Wydział Informatyki i Zarządzania
Standardy w Rodzaje Przykłady Politechnika Wrocławska Wydział Informatyki i Zarządzania 17 marca 2009 Standardy w Rodzaje Przykłady Plan prezentacji 1 Wstęp 2 Standardy w 3 4 Rodzaje 5 Przykłady 6 Standardy
Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.
Załącznik nr 1a do Zapytania ofertowego nr POIG.08.02-01/2014 dotyczącego budowy oprogramowania B2B oraz dostawcy sprzętu informatycznego do projektu pn. Budowa systemu B2B integrującego zarządzanie procesami