Architektura składnikowa a architektura klient serwer. Programowanie składnikowe. Programowanie składnikowe w modelu COM

Podobne dokumenty
Programowanie składnikowe. Programowanie składnikowe w modelu COM. COM - Component Object Model. wprowadzenie. Programowanie składnikowe

Technologie COM i ActiveX COM - Component Object Model

OLE: Pojęcia podstawowe

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

Dostrzeżenie ograniczeń schowka [koniec lat 80-tych] OLE 1.0 [1991]

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

Programowanie obiektowe

Komunikacja i wymiana danych

1.1. Kontrolki ActiveX. Kontrolki ActiveX. Technologia ActiveX. Technologia ActiveX. Technologia ActiveX. Technologia ActiveX.

Spis treci. Dzie 1. I Wprowadzenie (wersja 0911) II Dostp do danych biecych specyfikacja OPC Data Access (wersja 0911)

Podstawy programowania. Wprowadzenie

Programowanie współbieżne i rozproszone

Programowanie MorphX Ax

Protokoly w technologii obiektow rozproszonych - CORBA, RMI/IIOP, COM, SOAP. Paweł Kozioł p.koziol@students.mimuw.edu.pl

Microsoft Interface Definition Language

Wywoływanie metod zdalnych

Wypożyczalnia VIDEO. Technologie obiektowe

Wywoływanie metod zdalnych

Rozproszone systemy internetowe. Wprowadzenie. Koncepcja zdalnego wywołania procedury

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Projektowanie architektury systemu. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Wprowadzenie. Dariusz Wawrzyniak 1

Zdarzenia (events, connection points)

Integracja systemów sterowania i sterowanie rozproszone 5 R

Systemy Rozproszone Technologia ICE

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

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

Middleware wprowadzenie października 2010

Architektury usług internetowych. Tomasz Boiński Mariusz Matuszek

Middleware wprowadzenie października Dariusz Wawrzyniak (IIPP) 1

Instrukcja laboratoryjna nr.4

Microsoft Visual Basic kontra Borland Delphi W wojnie o szybkość. Jacek Szarapa

Wzorce projektowe. dr inż. Marcin Pietroo

Remote Method Invocation 17 listopada 2010

Projektowanie logiki aplikacji

Kolejkowanie wiadomości Standard MQ (JMS)

Aplikacje RMI

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Podejście obiektowe do budowy systemów rozproszonych

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

EXSO-CORE - specyfikacja

Luxriot VMS. Dawid Adamczyk

SYSTEM SCADA DO OCHRONY KATODOWEJ SCADA SYSTEM FOR CATHODIC PROTECTION

SIMON SAYS ARCHITECTURE! Usługi zdalne. Technologie, techniki i praktyki implementacji

INFORMATYKA TECHNICZNA Badanie możliwości wykorzystania interfejsu automatyzacji OLE w systemie CAx

76.Struktura oprogramowania rozproszonego.

Programowanie Komponentowe WebAPI

Obiekty w plikach wykonywalnych, marshaling

Integracja aplikacji opartych na Forms 5.0 z narzędziem do prezentowania map MapInfo Professional

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Zdalne wywołanie metod - koncepcja. Oprogramowanie systemów równoległych i rozproszonych Wykład 7. Rodzaje obiektów. Odniesienie do obiektu

Oprogramowanie systemów równoległych i rozproszonych Wykład 7

Wątek - definicja. Wykorzystanie kilku rdzeni procesora jednocześnie Zrównoleglenie obliczeń Jednoczesna obsługa ekranu i procesu obliczeniowego

Systemy rozproszone System rozproszony

Dokumentacja aplikacji Szachy online

współbieżność - zdolność do przetwarzania wielu zadań jednocześnie

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

METODY URUCHAMIANIA PROGRAMÓW JĘZYKA AutoLISP W ŚRODOWISKU AutoCAD

Remote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1

Visual VM, Java Management extension i inne ciekawostki

Język Java część 2 (przykładowa aplikacja)

EJB 3.0 (Enterprise JavaBeans 3.0)

Mechanizmy pracy równoległej. Jarosław Kuchta

Diagramy klas. dr Jarosław Skaruz

Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów)

Programowanie obiektowe

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

WYKŁAD: Przetwarzanie rozproszone typu klient-serwer.

UML cz. II. UML cz. II 1/38

Wykład 1. Projektowanie efektywnych algorytmów przetwarzania danych w sieciowych systemach usług, rzeczy i multimediów.

Informatyka, I stopień. Programowanie (PRO300.2)

Podejście obiektowe do budowy systemów rozproszonych

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java JMX. Marcin Werla. Monitorowanie i zarządzanie usługami sieciowymi w Javie. mwerla@man.poznan.pl PCSS/Poznań JUG

Plan prezentacji. Budowa aplikacji w technologii Enterprise JavaBeans. Przegląd architektur: CORBA. Cele budowy aplikacji rozproszonych

Język programowania. Andrzej Bobyk

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Programowanie obiektowe

Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r.

Projektowanie obiektowe oprogramowania Wzorce architektury aplikacji (2) Wykład 10 Inversion of Control Wiktor Zychla 2013

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

Aplikacje RMI Lab4

C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop Spis treści

Budowa aplikacji w technologii. Enterprise JavaBeans. Maciej Zakrzewicz PLOUG

Kurs Wizualizacja z WinCC SCADA - Zaawansowany. Spis treści. Dzień 1. I VBS w WinCC podstawy programowania (zmienne, instrukcje, pętle) (wersja 1410)

Programowanie usług działających w tle

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

COOPERATION TASKS IN SERVER OF INFORMATION SCRIPTING SYSTEM

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

Wzorce projektowe. dr inż. Marcin Pietroo

Enterprise Java Beans wykład 7 i 8

Platformy programistyczne:.net i Java WYKŁ AD 3: WPROWADZENIE DO PL ATFORMY.NET / JĘZYK C#

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

Część I Dostęp do danych oraz moŝliwości programowe (silnik bazy danych)

Tunelowanie OPC. Eliminacja ograniczeń związanych z DCOM

Middleware wprowadzenie października Dariusz Wawrzyniak. Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5)

Transkrypt:

w modelu COM wprowadzenie Architektura składnikowa a architektura klient serwer Architektura klient-serwer Program składnikowy Jarosław Francik Serwer Składnik B Składnik A A B Składnik C Programowanie obiektowe a programowanie składnikowe COM - Component Object Model 1 Interfejs: Grupa właściwości i metod implementowanych przez klasę. Kontrakt pomiędzy klientem a składnikiem 1 C++: Dziedziczenie 1 COM: Interfejsy i ich implementacja 1 Java: : Jedno i drugie 1 Program - monolit 1 Program składnikowy Składnik A Składnik B Składnik C Składnik D Składnik E 1 COM - Common Object Model OLE - Object Linking and Embedding Automatyzacja - Automation (dawniej: Automatyzacja OLE) DirectX DAO - Data Access Objects DCOM - Distributed COM 1 COM+ - technologia dla XXI wieku 1

Interfejsy Obiekt COM 1 Obiekt: kombinacja danych i metod 1 Klasy i interfejsy COM pozwala stosować wiele interfejsów dla jednej klasy 1 Hermetyzacja 1 Polimorfizm 1 Dziedziczenie COM zapewnia tylko dziedziczenie interfejsów Interfejsy są niezmienne Dodanie nowej funkcjonalności wymaga zdefiniowania nowego interfejsu 1 Obiektowość 1 Spójność 1 Niezależność od języka 1 Kontrola wersji Typy składników COM 1 Składniki wewnątrzprocesowe - DLL 1 Składniki zewnątrzprocesowe,, lokalne - EXE 1 Składniki zewnątrzprocesowe,, zdalne 1 Formanty OLE (wewnątrzprocesowe( wewnątrzprocesowe) - OCX 2

Składniki wewnątrzprocesowe 1 Działają w obrębie procesu klienta 1 Korzystają z przestrzeni adresowej klienta 1 Mniejsza stabilność 1 Wysoka wydajność Automatyzacja 1 Programowalność 1 Udostepnianie interfejsów 1 Użytkowanie za pomocą Visual Basic 1 Uproszczone interfejsy : dispatch interfaces (s) Składniki zewnątrzprocesowe Interfejsy (przypomnienie) Przetwarzanie żądań klienta w osobnym procesie i wątku Osobna przestrzeń adresowa Wysoka stabilność Niższa wydajność (przekazywanie danych poprzez granice procesów) Możliwość uruchomienia jako niezależnej aplikacji Przydatne przy automatyzacji i w DCOM Przetwarzanie rozproszone w relacji klient - serwer :: 1 Korzystanie z lokalnego składnika KLIENT PROXY COM SERWER 1 Korzystanie ze zdalnego składnika KLIENT PROXY DCOM (RPC) PROXY SERWER Invoke() { switch(dispid) } 1: Metoda1( ) 2: Metoda2( ) 3: Metoda3( ) 3

vs. :: (przypomnienie) 1 Visual Basic 1 C++ 1 Automatyzacja na ogół 1 dual interfaces Invoke() { switch(dispid) } 1: Metoda1( ) 2: Metoda2( ) 3: Metoda3( ) 1 Ewolucja: VBX Visual Basic Extension OLE Controls Controls 1 Cechy: Składniki oparte na COM (IUnknown( IUnknown) Możliwość samorejestracji (np. przy pobieraniu z Internetu) Interfejsy (przypomnienie) interfejs użytkownika metody zdarzenia właściwości 4

1 Implementacja obejmuje wiele interfejsów COM (typu ) 1 Z punktu widzenia użytkownika widoczne są przede wszystkim s IOleInPlaceFrame IOleInPlaceUIWindow IOleInPlaceSite IOleClientSite IAdviseSink IOleControlSite IPropertyNotifySink (events) IOlePlaceActiveObject IOleInPlaceObject IOleObject IDataObject IViewObject2 IRunnableObject IOleCache2 IPersistStorage IPersistStreamInit ISpecifyPropertyPages IConnectionPointContainer IConnectionPoint IProvideClassInfo2 IOleControl VB implementacja COM. Podsumowanie IOlePlaceActiveObject IOleInPlaceObject IOleObject IDataObject IViewObject2 IRunnableObject IOleCache2 IPersistStorage IPersistStreamInit ISpecifyPropertyPages IConnectionPointContainer IConnectionPoint IProvideClassInfo2 IOleControl 1 Automatyzacja użycie interfejsu 1 Metody zdefiniowane w i dostępne poprzez :: 1 Właściwości metody specjalnego typu dostępne w 1 Zdarzenia wywoływanie metod kontenera (odwrócenie sytuacji: kontener jest serwerem) VB implementacja COM. Podsumowanie IOleInPlaceFrame IOleInPlaceUIWindow IOleInPlaceSite IOleClientSite IAdviseSink IOleControlSite IPropertyNotifySink (events) Przy implementacji wszystkich typów składników COM Visual Basic korzysta z elementów technologii 5