1 / 47

Komponentinės sistemos

Komponentinės sistemos. asist. V.Giedrimas. Reikalavimai sistemoms. Atskirų PS dalių: sukurtų skirtingomis programavimo kalbomis; skirtų skirtingoms operacinėms sistemos; Skirtingų versijų gebėjimas veikti kartu. Komponentai. Komponentas-klientas Komponentas-serveris:

ovidio
Download Presentation

Komponentinės sistemos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Komponentinės sistemos asist. V.Giedrimas

  2. Reikalavimai sistemoms • Atskirų PS dalių: • sukurtų skirtingomis programavimo kalbomis; • skirtų skirtingoms operacinėms sistemos; • Skirtingų versijų • gebėjimas veikti kartu.

  3. Komponentai • Komponentas-klientas • Komponentas-serveris: • vidinis serveris (tame pačiame faile) • Lokalusis serveris; • Nutolęs serveris

  4. Serverių tipai

  5. Planas • DCOM • .NET • CORBA • EJB

  6. DCOM

  7. DCOM raida • DDE  OLE  COM  DCOM • DDE(Dynamic Data Exchange) • Duomenų mainai tarp programų naudojant clipboard • OLE (Object Linking and Embedding) • 1991 • Į sudėtinis dokumentą leidžia įterpti (arba susieti)kita programa sukurtą objektą. • COM(Component Object Model) • 1993 (1997) • Binarinių komponentų sąveika • DCOM • 1995 • Paskirstytosios sistemos

  8. COM komponentas

  9. COM privalumai • Suderinamumas • Skirtingos programos ir kalbos • Versijavimo galimybė

  10. DCOM

  11. DCOM privalumai • Suderinamumas • Skirtingos programos, platformos ir kalbos • Versijavimo galimybė • Paskirstytos atminties valdymas • Tinklo “skaidrumas” • Dinaminisaktyvavimas (loading)ir deaktyvavimas (unloading)

  12. Susijusios technologijos • Automation • ActiveX controls • OLE-DB • MTS • COM+

  13. .NET

  14. .NET • 2002 • .NET karkasas (.NET Framework)

  15. Java programos tekstas Byte-kodas JVM OS Java ir .NET palyginimas C# VB … IL-kodas .NET Framework CLR OS

  16. VB C++ C# JScript ... Common Language Specification Framework Class Libraries CommonLanguageRuntime Operacinė Sistema .NET karkaso struktūra

  17. VB C++ C# JScript ... ASP.NET Web Forms Web Services Mobile Internet Toolkit Windows Forms .NET karkaso struktūra Common Language Specification ADO.NETir XML Base Class Library CommonLanguageRuntime Operacinė Sistema

  18. System.Web System.Windows.Forms Services UI Design ComponentModel Description HtmlControls Discovery WebControls Protocols System.Drawing Caching Security Drawing2D Printing Configuration SessionState Imaging Text System.Data System.Xml OleDb SqlClient XSLT Serialization Common SQLTypes XPath System Collections IO Security Runtime InteropServices Configuration Net ServiceProcess Remoting Diagnostics Reflection Text Serialization Globalization Resources Threading .NET karkaso bibliotekos

  19. .NET komponentas • .NET komponentas - assembly yra • save aprašantis • Paskirstymo • Įvardijimo (Naming) • Saugumo • Versijavimo ir vienalaikio vykdymo (side-by-side execution) vienetas

  20. .NET komponentas • Metaduomenys • Manifestas (manifest, assembly metadata) • Tipų metaduomenys(metadata, type metadata) • IL kodas • Resursai

  21. Metaduomenys (Metadata) • Manifestas: komponento aprašymas • Pavadinimas, versija,lokalė(culture), viešasis raktas (public key) • Security properties: Needed permissions • Public key if present • Dependencies on other assemblies • Tipų (Klasių) sąrašas • Kiekvienam tipui: • Struktūrinės dalys: metodai, laukai, savybės, įvykiai • Kiekvienos daliesSintaksė (argumentai ir rezultatai) • Realizuojami Interfeisai • Papildomi atributai (Customattributes)

  22. Susijusios technologijos • Automation • ActiveX controls • OLE-DB • MTS • COM+

  23. CORBA

  24. CORBA (Common Object Request Broker Architecture) • 1991 • OMG standartas • Jungiantis elementas - objektų užklausų brokeris ORB(Object Request Broker)

  25. CORBA Architektūra CORBA Paslaugos CORBA Galimybės CORBA Domenai

  26. ORB • Programinė įranga, užtikrinanti informacijos perdavimą iš vieno CORBA komponento kitam nutolusiam komponentui.

  27. Gyvavimo ciklo valdymas Vardų paslauga (Naming) Įvykių perdavimas Tinklo skaidrumas Tranzakcijų apdorojimas Vienalaikio komponentų darbo palaikymas (Concurrency) Saugumas Pagrindinės CORBA paslaugos

  28. IOR • Kiekvienas CORBAobjektasturi 128baitų unikalų identifikatorių, vadinamą IOR (Interoperable Object Reference). • Simboliniai vardaiir jų IOR saugomi registe. • Vardų paslauga nustato vienareikšmę abipusę atitiktį tarp vardo ir IOR

  29. Praktinis CORBA panaudojimas IDL Developer IDL Source Client Developer IDL-to-Java Compiler IDL-to-C++ Compiler Server Developer App.java Stubs.java Stubs.cc impl.cc Client Executable Server Executable ORB

  30. IDL (Interface Description Language) • IDL kalba aprašomos tokios savybės: • Interfeisai • Laukai ir metodai • Programiniai pertraukiai (exceptions) • Metodų argumentai ir rezultatai • Objectų atributai

  31. CORBA Component CORBA komponentas facet receptacle Įvykių .. (event sinks) Įvykių šaltinis (event source)

  32. Susijusios technologijos • CORBA 2 • 1996 • Nutolusių mazgų sujungimas Interneto tinkle, IIOP (Internet ) protokolas • Suderinamumas su OLE/COM • CORBA 3 • 2002 • CCM v3 komponento modelis • Visiškas suderinamumas su Java ir kitomis komponentinėmis technologijomis http://www.omg.org/gettingstarted/history_of_corba.htm

  33. EJB

  34. Java raida • Java • Java 2 • J2EE • Išskirstytosioms programomų sistemoms • J2SE • Monolitinėms programoms • J2ME • Mobiliesiems įrenginiams

  35. J2EE • Vardų paslauga(Naming service) • JNDI (Java Naming and Directory Interface) • JTS (Java Transaction Services) • JSP, Servletai • RMI • EJB

  36. Java technologijos • Apletai • Dinaminiai tinklalapių elementai būdingi Java 1. • Naudojami TIK kliento kompiuteryje • JavaBeans • Skirti jungiamajam (Conection-oriented) programavimui • Dažniausiai naudojami kliento kompiuteryje • EJB ( Enterprise Java Beans) • Technologija paremta konteinerio principu • Dažniausiai naudojami serveryje • Servletai • Apletų idėja realizuota serveryje • Naudojami TIK serveryje

  37. Java technologijos • JSP • Technologija, leidžianti deklaratyviai aprašyti tinklalapį kurį reikia sugeneruoti • Naudojami TIK serveryje • Klientiniai komponentai (Application client components) • Naudojami TIK kliento kompiuteryje • Duomenų bazes pasiekia per JDBC, kitus resursus per JNDI

  38. JavaBeans naudojimo pavyzdys JVM

  39. EJB architektūra Naming Service Server Container Home Interface (Factory) RMI Client RMI Remote Interface EJB Object (Wrapper) Enterprise Java Bean (Biz Logic) Kuria progrmt. Realizuoja Kviečia Sukuria / naudoja

  40. EJB konteinerio funkcijos • Objektų valdymas(instance Pooling) • Resursų valdymas • Transakcijų kontrolė • Saugumo paslaugos • Skaidrumas(persistence) • Klasteriavimas

  41. EJB pagrindai Client Home Interface Container EJB Object Call create method Proxy to container Construct an EJB Object Return EJB Object Return EJB Object

  42. EJB pagrindai (2) Client Distributed Object Transaction Service Request Interceptor Security Service Database Driver Stub Skeleton Tinklas

  43. EJB Esybės Sesijos Komponentovaldomas Konterinerio valdomas Be būsenos Su būsena EJB komponentų klasifikacija

  44. EJB komponentų klasifikacija • Sesijos koponentai (Session beans) • modeliuoja procesus arbaužduotis • Pvz.apskaičiuoti sąskaitų balansą • Esybės komponentai (Entity beans) • modeliuojarealaus pasaulio objektus • Pvz.: Vartotojas, mašina

  45. Praktinis EJB kūrimas Remote Interface Enterprise Bean Class EJB Java Archive EJB Compiler / Deploy Jar Tool Home Interface Deployment Descriptor

  46. Komponentinės sistemos asist. V.Giedrimas

More Related