1 / 25

IDU0075 Veebiteenused

IDU0075 Veebiteenused. Tarvo Treier Tarvo.treier@gmail.com. Täna kavas. Mõisted : liides, API, WS, SOA, XML, XPath Kordamine Veebiteenuste eelised ja puudused SOA XML JSON XPath JSONPath. Mõned mõisted ja lühendid. Liides ( interface ) API ( application programming interface )

duc
Download Presentation

IDU0075 Veebiteenused

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. IDU0075 Veebiteenused TarvoTreier Tarvo.treier@gmail.com

  2. Täna kavas • Mõisted: liides, API, WS, SOA, XML, XPath • Kordamine • Veebiteenuste eelised ja puudused • SOA • XML • JSON • XPath • JSONPath Tarvo Treier tarvo.treier@gmail.com

  3. Mõned mõisted ja lühendid • Liides (interface) • API (application programming interface) • WS (webservice) • SOA (serviceorientedarchitecture) • XML (extensiblemarkuplanguage) • JSON (JavaScriptObjectNotation) • XPath (XML pathlanguage) • JSONPath(JSON pathlanguage) Tarvo Treier tarvo.treier@gmail.com

  4. Kordamine: Mis on veebiteenus? Tarvo Treier tarvo.treier@gmail.com

  5. Veebiteenus • Veebiteenus on üle veebi (http) välja kutsutav (käivitatav) meetod (protseduur või funktsioon). • Veebiteenust kutsutakse välja mingis kindlas formaadis sõnumiga (nt. SOAP) ja vastus saadakse samuti selles formaadis. • Sarnaselt tavaliste funktsioonidega saab ka veebiteenuse väljakutsel määrata sisendparameetreid. Tarvo Treier tarvo.treier@gmail.com

  6. Mis eeliseid annavad veebiteenused? Tarvo Treier tarvo.treier@gmail.com

  7. Pilt veebiteenuste abil integreerimisest • Erinevad platvormid ja programmeerimiskeeled • Erinevad kasutajaliidesed ühel kesksüsteemil • Erinevad organisatsioonid • Varjatud realisatsioon • Kliendi ja teenusepakkuja sõltumatu arendus Tarvo Treier tarvo.treier@gmail.com

  8. Veebiteenuste eelised.. • Erinevate platvormide rakenduste koostöö võimaldamine • Teksti põhised ja avatud standardid on arendajale arusaadavad • Annavad võimaluse erinevate ettevõtete erinevas kohas asuvaid rakendusi ja teenuseid integreerida üheks uueks teenuseks • Veebiteenuste taaskasutamise võimalus Tarvo Treier tarvo.treier@gmail.com

  9. ... ja puudused • Suurem keerukus • Väiksem jõudlus • ... Tarvo Treier tarvo.treier@gmail.com

  10. Service-oriented architecture (SOA) • Arhitektuur, mis kasutab • teenuseid organisatsiooni integrastiooni ehitusklotsidena • komponentide taaskasutust läbi nõrga seotuse. Tarvo Treier tarvo.treier@gmail.com

  11. SOA: On arhitektuur • Mingi hulga teenuste tegemine ei anna meile SOA-d. • Arhitektuur peab andma meile juhised teenuste loomiseks. Tarvo Treier tarvo.treier@gmail.com

  12. SOA: Ehitatakse teenustest • Nagu objekt-orienteeritud maailmas on objekt/klass nii on SOA-s teenus peamine komponent. • Ilma teenusteta pole meil millestki ehitada, midagi jälgida (monitor) ega käivitada. Tarvo Treier tarvo.treier@gmail.com

  13. SOA: integratsioon • SOA esindab ühte võimalust süsteemide integratsiooniks. • Erinevate süsteemide kokkuühendamise võib lahendada mõne P2P lahendusega palju kiiremini. • Samas võib minna alternatiivide puhul ka palju rohkem aega, kuna süsteemid räägivad erinevat keelt (sõnumite formaat). • SOA kasutab sõnumivahetuses XML-i. Tarvo Treier tarvo.treier@gmail.com

  14. SOA: nõrk seotus • SOA-s püütakse teha nõrgalt seotud komponente, ehk teenuseid, mis ei tea midagi klientidest, kes neid kasutama hakkavad. Tarvo Treier tarvo.treier@gmail.com

  15. SOA: taaskasutus • Pole alati hädavajalik. • Samas, kui ühegi komponendi taaskasutus võimalust pole ega näe ka tulemas, siis on tõenäoliselt tegu üle mõeldud lahendusega ja kindlasti mitte SOA-ga. Tarvo Treier tarvo.treier@gmail.com

  16. SOA müügijutt.. • Kattes oma süsteemi selgroo (missioncritical) veebiteenustega, mis opereerivad SOA raamistikul, saad sa kergesti • laiendatava, • taaskasutatava ja • asendatava lahenduse. Tarvo Treier tarvo.treier@gmail.com

  17. ..jätkub • SOA annab meile raamistiku, kus mitmed mittefunktsionaalsed nõuded on juba täidetud. • Näiteks turvalisus • Arendajad keskenduda äriprobleemidele. Tarvo Treier tarvo.treier@gmail.com

  18. XML Tarvo Treier tarvo.treier@gmail.com

  19. XML (eXtended Markup Language) • Root element (document element) • <element_nameattribute_name="attribute_value">Element Content </element_name> • Element content võib olla Child element • XML’i näited http://www.w3schools.com/xml/cd_catalog.xml http://www.w3schools.com/XQuery/books.xml

  20. XML namespaces <root xmlns:h="http://www.w3.org/TR/html4/" xmlns:f="http://www.w3schools.com/furniture"> <h:table> <h:tr> <h:td>Apples</h:td> <h:td>Bananas</h:td> </h:tr> </h:table> <f:table> <f:name>African Coffee Table</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table> </root> • http://www.w3schools.com/xml/xml_namespaces.asp

  21. XPath Tarvo Treier tarvo.treier@gmail.com

  22. XPATH • XPATH on päringukeel XML dokumentidest informatsiooni otsimisest nagu SQL on päringukeel andmebaasi tabelitest otsimiseks.

  23. XPATH’i näited • Online vahendeid • http://www.bit-101.com/xpath/ • http://www.futurelab.ch/xmlkurs/xpath.en.html • http://www.xmlme.com/XpathTool.aspx • Näite XML • http://www.w3schools.com/xml/cd_catalog.xml • Pärime välja kõik title’d • /CATALOG/CD/TITLE • //TITLE • Pärime välja kõik cd’d, mille hind on suurem kui 10 • /CATALOG/CD[PRICE>10]

  24. JSON (JavaScriptObjectNotation) • Nimi-väärtus paaride kollektsioon {„nimi“:“Juhan“ , „vanus“: 21 } • http://www.w3schools.com/json/

  25. JSONPath • Xpathi analoog JSON-i jaoks • http://goessner.net/articles/JsonPath/ • Online vahendid • http://ashphy.com/JSONPathOnlineEvaluator/ • http://jsonpath.curiousconcept.com/

More Related