Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien

Größe: px
Ab Seite anzeigen:

Download "Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien"

Transkript

1 Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien Version: 1.0 Orientation in Objects GmbH Weinheimer Str Mannheim

2 Ihr Sprecher Thorsten Maier Trainer, Berater, Orientation in Objects GmbH Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien 2

3 Frontend Backend 3

4 Wer ist alles hier? 4

5 Ich würde immer einen faulen Menschen wählen, um einen schwierigen Job zu erledigen. Er wird definitiv einen einfachen Weg finden. Bill Gates 5

6 Software Entwicklung Schwieriger Job Fauler Entwickler 6

7 Coole Software Zufriedene Kunden Don t repeat yourself Einfacher ist besser Keine Doku Wenig Technologien Fauler Entwickler 7

8 JAX 2018 geht zu Ende Was waren die Trends? 8

9 24x 15x Microservices immer noch 7x 11x Cloud ist nicht mehr neu 4x 10x APIs mehr denn je 9

10 Frontend API? Backend 10

11 <!DOCTYPE html> <html> <head> <title>person</title> </head> <body> <span th:text="${person.firstname}"></span> <span th:text="${person.lastname}"></span> </body> public class PersonApplication { API? public ModelAndView getperson() { return new ModelAndView("view", "person", new Person("Thorsten", "Maier")); } 11

12 Aus was besteht ein API? Datenstrukturen + Operationen 12

13 Architekten Ausbildung PRAXIS 13

14 1. Sich vorher auf Angular festlegen 2. Architektur Workshop ohne Anforderungen 3. Bei Angular bleiben 14

15 <span>{{person.firstname}}</span> <span>{{person.lastname}}</span> this.httpclient.get(' Person) => { this.person = person; public class PersonApplication { public Person getperson() { return new Person("Thorsten", "Maier"); } 15

16 <span>{{person.firstname}}</span> <span>{{person.lastname}}</span> this.httpclient.get(' Person) => { this.person = person; }); public class PersonApplication { public Person getperson() { return new Person("Thorsten", "Maier"); } 16

17 <span>{{person.firstname}}</span> <span>{{person.lastname}}</span> this.httpclient.get(' Person) => { this.person = person; }); public class PersonApplication { public Person getperson() { return new Person("Thorsten", "Maier"); } 17

18 <span>{{person.firstname}}</span> <span>{{person.lastname}}</span> this.httpclient.get(' Person) => { this.person = person; public class PersonApplication { Operation API! Datenstruktur public Person getperson() { return new Person("Thorsten", "Maier"); } 18

19 Na und??? 19

20 API verspricht Wiederverwendung 20

21 Die UI Technologie ändert sich alle paar Jahre Dann bauen wir das Backend so, dass wir es behalten können. Wir brauchen eine API. 21

22 Wiederverwendung ist 3x teurer Gründe: Test, Dokumentation, Abstraktion, lohnt sich erst ab dem 3. Mal 22

23 Was ist denn daran teurer? Wir machen einfach ein REST-API. Geht doch schnell. 23

24 Alles ist eine Ressource Firstname Lastname Employer Hobbies Dieter Develop OIO Coding, Biking 24

25 Jede Ressource hat eine URI 25

26 Ressourcen können mehrere Repräsentationen besitzen { } "firstname": "Dieter", "lastname": "Devekop", "employer": "OIO", "hobbies": ["Coding", "Biking"] <html> <head> <title>dieter s Homepage</title> </head> <body> <h1>my name is Dieter, welcome to my personal Homepage</h1> </body> </html> 26

27 Operationen in REST Ressource POST (create) GET (read) PUT (update) DELETE (delete) /person Person anlegen Alle Personen abrufen Alle Personen ändern Alle Personen löschen /person/4711 error Person 4711 abrufen Person 4711 ändern Person 4711 löschen 27

28 28

29 REST fehlt ein Standard 29

30 REST ist technisch new RestTemplate().getForObject( " Person.class, 1); Operation 30

31 Was immer alle vergessen HATEOAS Hypermedia as the engine of Application state 31

32 HATEOAS mit JSON { } "_links" : { "next" : { "href" : " "templated" : true } }, "_embedded" : {... data... }, "page" : { "size" : 5, "totalelements" : 50, "totalpages" : 10, "number" : 0 } 32

33 Niemand nutzt Hypermedia I am getting frustrated by the number of people calling any HTTP-based interface a REST API. Today s example is the SocialSite REST API. That is RPC. It screams RPC. [ ] What needs to be done to make the REST architectural style clear on the notion that hypertext is a constraint? In other words, if the engine of application state (and hence the API) is not being driven by hypertext, then it cannot be RESTful and cannot be a REST API. Period. Is there some broken manual somewhere that needs to be fixed? Roy T. Fielding, 2008, 33

34 Na gut, dann machen wir halt Hypermedia Links. Aber sonst ist doch alles klar! 34

35 REST ist datengetrieben stornierebestellung(74) // kein REST! DELETE /bestellung/74 // fachlich falsch? PATCH /bestellung/74 { "status": "storniert" } PUT /bestellung/74/storno 35

36 Aber Moment, es gibt doch 36

37 Datenstruktur mit JSON Schema definitions: Person: type: "object" properties: firstname: type: "string" lastname: type: "string" 37

38 Operation paths: /person: get: summary: "Get a list of all persons" operationid: "getperson" consumes: - "application/json" produces: - "application/json" responses: 200: description: "List of persons as JSON" schema: $ref: '#/definitions/person' 38

39 39

40 40

41 41

42 Generierung Generierung Swagger API Beschreibung Generierung Generierung API Test Zugriff API Implementierung Zugriff API Client 42

43 = "person", description = "the person API") public interface PersonApi { = "Get a person", nickname = "getperson", notes = "", response = Person.class, tags = = = 200, message = "Persons as JSON", response = Person.class) = "/person", produces = { "application/json" }, consumes = { "application/json" }, method = RequestMethod.GET) ResponseEntity<Person> getperson(); 43

44 API Generierung spart etwas Arbeit Vorlieben können nicht berücksichtigt werden Paketnamen Klassennamen Aufteilung der REST Controller 44

45 Was passiert bei einer Änderung? Swagger API Beschreibung API Test API Implementierung API Client 45

46 Was tun wir hier gerade? Wir bauen ein kundenorientiertes API Für einen Kunden: unsere eigene UI 46

47 Wozu benötige ich ein API? Wettbewerbsvorteil da andere in die Lage versetzt werden, zusätzliche Software für dieses System zu erstellen. Wiederverwendung 47

48 Richtige APIs sind richtig teuer Bisher Faktor 3 für Wiederverwendung 48

49 Verfügbarkeit? Laufzeitverhalten? Verhalten bei Last? Fehlerbehandlung? Eingabeparameter (Wertebereiche, nullable?, ) Ausgabeparameter? Vorbedingungen? Verständliche Dokumentation Eine API sollte minimal sein Synchron oder asynchron? 49

50 Ist ein API veröffentlicht, kann es nur noch sehr mühsam verändert werden. 50

51 Schauen wir uns das am Beispiel der Datenstruktur genauer an. 51

52 UI API Client API? 52

53 Lösungsansatz: kanonisches Datenmodell ermöglicht Wiederverwendung ermöglicht Austauschbarkeit Modellierung z.b. in JSON Schema 53

54 UI API Client kanonisches Datenmodell API 54

55 Probleme: kanonisches Datenmodell Enorme Analyseaufwände zieht sich durch alle Schichten Aufwände bei Änderungen 55

56 Praxis: kanonisches Datenmodell Inneres Datenmodell als erster Schritt zu kanonischem Modell Behauptung: Iterative Prozess führt langfristig zu kanonischer Form Neue externe Anforderungen wirken direkt auf internes Modell 56

57 Gute APIs sind schwer zu entwerfen 57

58 Lotto spielen ist einfach wenn man vorher die richtigen Zahlen kennt. 58

59 Modularisierung ist einfach, wenn man vorher die richtigen Schnitte kennt. 59

60 Empfehlungen? 60

61 It depends Leider auch dieses Mal keine 3 Bullet-Point Lösung 61

62 1 Personen- Team Kein API zwischen Frontend und Backend! 62

63 Pizzaschachtel-Team Besser kein API zwischen Frontend und Backend! 63

64 Pizzaschachtel-Team Muss ich jetzt TypeScript und Java können? Reicht nicht eine Sprache? 64

65 End-To-End-Entwicklung mit einer Sprache? DRY Validierung nur einmal Business Logik nur einmal 65

66 End-To-End-Entwicklung mit einer Sprache?? 66

67 Zwei große Teams API! Brauchen wir immer große Teams? 67

68 If you remember one thing Passt auf, dass ihr nicht versehentlich ein API baut, obwohl ihr keines braucht. 68

69 ??? Fragen?? Orientation in Objects GmbH? Weinheimer Str Mannheim

70 Vielen Dank für Ihre Aufmerksamkeit! Orientation in Objects GmbH Weinheimer Str Mannheim

Microservices. - Integration der Benutzeroberfläche - Version: Orientation in Objects GmbH. Weinheimer Str.

Microservices. - Integration der Benutzeroberfläche - Version: Orientation in Objects GmbH. Weinheimer Str. Microservices - Integration der Benutzeroberfläche - Version: 18.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler

Mehr

Wenn. Schnittstellen. alt werden... Claus Straube IT Architekt

Wenn. Schnittstellen. alt werden... Claus Straube IT Architekt Wenn Schnittstellen alt werden... Claus Straube IT Architekt claus.straube@muenchen.de A B Provider Consumer Request A Response B Provider Consumer Payload Request A Response B Provider Consumer Payload

Mehr

Backend. Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017. Christopher Dörge, Thomas Sauer, David Müller

Backend. Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017. Christopher Dörge, Thomas Sauer, David Müller Backend Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017 Christopher Dörge, Thomas Sauer, David Müller Aufbau einer RESTful API mit... Ziel node.js, express und MongoDB Symfony und

Mehr

Forms auf Tablets. Vision oder Realität?

Forms auf Tablets. Vision oder Realität? Forms auf Tablets Vision oder Realität? Die handelnden Personen Jan-Peter Timmermann Entwickler seit 1985 (Informix) OCP Oracle Forms/Reports, PL/SQL Seit 2000 bei Unternehmen wie Opitz, Trivadis und PITSS

Mehr

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG SODA Die Datenbank als Document Store Rainer Willems Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG vs No Anforderungskonflikte Agile Entwicklung Häufige Schema-Änderungen Relationales

Mehr

Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams. Jan Kruse, utilitas GmbH

Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams. Jan Kruse, utilitas GmbH Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams Jan Kruse, utilitas GmbH 15.01.2018 Gliederung Einleitung Motivation Ziele Grundlagen ASP.Net Web API REST-API Microsoft

Mehr

Azure &.NET Meetup Freiburg

Azure &.NET Meetup Freiburg Azure &.NET Meetup Freiburg 002 Think API 20.06.2017 Patrick A. Lorenz Geschäftsführer PGK Gunar Liepins Developer PGK Azure &.NET Freiburg Agenda 18:30 Herzlich willkommen 18:45 Fürchtet die Cloud! Patrick

Mehr

Microservices Integration der Benutzeroberfläche

Microservices Integration der Benutzeroberfläche Microservices der Benutzeroberfläche OOP München 31.01.2017 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 17.1 www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater,

Mehr

Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services?

Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services? Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services? Web APIs Wo kommen wir her? Remote Procedure Calls (RPC) Verben/Aktionen im Endpunkt enthalten GetCustomer InsertInvoice

Mehr

ResilientSoftware Design Patterns

ResilientSoftware Design Patterns Resilient Software Design Patterns Version: 17.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Orientation

Mehr

Resilient Software Design Patterns

Resilient Software Design Patterns Resilient Software Design Patterns Version: 17.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Orientation

Mehr

VAADIN, SPRING BOOT & REST

VAADIN, SPRING BOOT & REST VAADIN, SPRING BOOT & REST Ein Einstieg für Domino Entwickler Stephan Kopp 1 STEPHAN KOPP Software & Solutions Development Tel.: +49 6182 7869420 Mobil: +49 173 3089806 E-Mail: stephan.kopp@axians.de 2

Mehr

NotesSession.GetPropertyBroker( )

NotesSession.GetPropertyBroker( ) Bestandteile von CA Laufen im Rich Client (Notes oder Expeditor) oder via Portal Server im Browser NSF-Komponenten sind Notes-Designelemente Eclipse Komponenten sind Eclipse ViewParts lokale oder Websphere

Mehr

Architektur von REST basierten Webservices

Architektur von REST basierten Webservices 28.11.2005 Architektur von REST basierten Webservices Referent MARK ALTHOFF REST was invented by ROY T. FIELDING and RICHARD N. TAYLOR Geschichtlicher Hintergrund von REST 1994-1995 taucht der Begriff

Mehr

Mail: Web: juergen-schuster-it.de

Mail: Web: juergen-schuster-it.de Mail: j_schuster@me.com Twitter: @JuergenSchuster Web: juergen-schuster-it.de APEX Podcast: apex.press/talkshow Dynamic Actions Examples: dynamic-actions.com APEX-Meetups: apexmeetups.com APEX D-A-CH Facebook

Mehr

REST Grundlagen. Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web. Olga Liskin <olga.liskin@gmail.com>

REST Grundlagen. Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web. Olga Liskin <olga.liskin@gmail.com> REST Grundlagen Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web Olga Liskin Übersicht Motivation, Einführung Architekturstil REST RESTful Webservices Patterns,

Mehr

Code Quality in Practice

Code Quality in Practice Code Quality in Practice Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Feedback @ThorstenMaier

Mehr

Neue Welten: Externe Daten mit APEX nutzen

Neue Welten: Externe Daten mit APEX nutzen Neue Welten: Externe Daten mit APEX nutzen Carsten Czarski Oracle Application Express Development-Team DOAG Regio München - 17. Mai 2018 Copyright 2017 Oracle and/or its affiliates. All rights reserved.

Mehr

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!.

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!. +++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!. +++ Oracle Mobile Cloud Service (MCS) MCS SDK & MAF MCS

Mehr

Code Quality in Practice

Code Quality in Practice Code Quality in Practice Orientation in Objects GmbH Entwicklertag Karlsruhe Mai 2017 Version: 1.2 Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater,

Mehr

{ "Einstöpseln" : "jetzt!" }

{ Einstöpseln : jetzt! } { "Einstöpseln" : "jetzt!" } OIO - Hauskonferenz 2013 predic8 GmbH Moltkestr. 40 53173 Bonn www.predic8.de info@predic8.de API? Vortrag Vortrag Math.sqrt(36); Vortrag Vortrag Vortrag 1997 Vortrag 3rd Party

Mehr

Effektiver Einsatz von Code-Reviews

Effektiver Einsatz von Code-Reviews Effektiver Einsatz von Code-Reviews Version: 1.4 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de 18. Java Forum Stuttgart 2015 Ihr Sprecher Thorsten Maier Trainer,

Mehr

Brauche ich ein DVCS?

Brauche ich ein DVCS? Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Kristian Köhler Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Einleitung Grundbegriffe Workflows Demo Fazit 2 Gliederung Einleitung

Mehr

Microservice UI Composition

Microservice UI Composition Microservice Composition Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 16.1 www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Sollen wir Microservices

Mehr

Frühling für iphone-apps

Frühling für iphone-apps Spring-basierte Backends für ios-applikationen Stefan Scheidt Solution Architect OPITZ CONSULTING GmbH OPITZ CONSULTING GmbH 2010 Seite 1 Wer bin ich? Software-Entwickler und Architekt Trainer und Coach

Mehr

Microservices Integration der Benutzeroberfläche

Microservices Integration der Benutzeroberfläche Microservices Integration der Benutzeroberfläche OOP 2017 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 16.2 www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater,

Mehr

Groovy und CouchDB. Ein traumhaftes Paar. Thomas Westphal

Groovy und CouchDB. Ein traumhaftes Paar. Thomas Westphal Groovy und CouchDB Ein traumhaftes Paar Thomas Westphal 18.04.2011 Herzlich Willkommen Thomas Westphal Software Engineer @ adesso AG Projekte, Beratung, Schulung www.adesso.de thomas.westphal@adesso.de

Mehr

APIC-EM Software Engineering Insight

APIC-EM Software Engineering Insight APIC-EM Software Engineering Insight Programmieren mit APIC-EM Fabian Wirz 8. September 2016 Fabian Wirz Informatikstudent Hochschule Rapperswil Faszination SDN und Cloud Computing Entwickler AnyMulticast

Mehr

Mobile in Minuten? Forms-Anwendungen auf mobilen Endgeräten

Mobile in Minuten? Forms-Anwendungen auf mobilen Endgeräten Mobile in Minuten? Forms-Anwendungen auf mobilen Endgeräten Zur Person Jürgen Menge Themenverantwortlicher der DOAG für Oracle Forms juergen.menge@der-it-macher.de www.der-it-macher.de Königsdorfer Str.

Mehr

REST-API mit Node, Express und MongoDB

REST-API mit Node, Express und MongoDB REST-API mit Node, Express und MongoDB 1 Installation von Node.js, MongoDB Download nodejs.org, mongodb.com Test $ node -v v10.15.0 $ npm -v 6.4.1 $ mongo --version MongoDB shell version v4.0.5 (evtl.

Mehr

Pre-tested commit 2.0 mit Gerrit und Jenkins

Pre-tested commit 2.0 mit Gerrit und Jenkins Pre-tested commit.0 mit und Orientation in Objects GmbH Weinheimer Str. 68 6809 Mannheim Steffen Schäfer Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Pre-tested commit und Pre-tested commit

Mehr

Agile Architektur. Version: 1.1. Orientation in Objects GmbH. Weinheimer Str Mannheim.

Agile Architektur. Version: 1.1. Orientation in Objects GmbH. Weinheimer Str Mannheim. Agile Architektur Version: 1.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihre Sprecher Thorsten Maier, Falk Sippach Trainer, Berater, Entwickler @ThorstenMaier

Mehr

RESTful Web. Representational State Transfer

RESTful Web. Representational State Transfer RESTful Web Representational State Transfer 1 Warum REST? REST ist die Lingua Franca des Webs Heterogene (verschiedenartige) Systeme können mit REST kommunizieren, unabhängig von Technologie der beteiligten

Mehr

GraphQL, das bessere REST?

GraphQL, das bessere REST? Die Beschaffungsplattform für Geschäftskunden GraphQL, das bessere REST? Jörg Adler, Benjamin Otto, 29.9.2017 Wir @ Mercateo Mercateo ist Europas führende Beschaffungsplattform. > 1 Mio. Geschäftskunden

Mehr

ASP.NET Web-API - Grundlagen

ASP.NET Web-API - Grundlagen ASP.NET Web-API - Grundlagen Kompakt-Intensiv-Training In unserer Schulung "ASP.NET Web API - Grundlagen" werden Ihnen die Grundkenntnisse des REST-Modells vermittelt. So können Sie nach Abschluss der

Mehr

Effektiver Einsatz von Code-Reviews

Effektiver Einsatz von Code-Reviews - Schneller, Billiger, Besser - Effektiver Einsatz von Code-Reviews Dev Day in Dresden 27. Mai 2015 Version: 1.3 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr

Mehr

!!!! Mail: Web: juergen-schuster-it.de. ! APEX D-A-CH Facebook Group: bit.ly/apex_on_facebook

!!!! Mail: Web: juergen-schuster-it.de. ! APEX D-A-CH Facebook Group: bit.ly/apex_on_facebook !!!! Mail: j_schuster@me.com! Twitter: @JuergenSchuster Web: juergen-schuster-it.de!! APEX D-A-CH Facebook Group: bit.ly/apex_on_facebook Zu meiner Person Oracle (13 Jahre) Freiberuflich (5 Jahre) APEX

Mehr

Continuous Database Design

Continuous Database Design Continuous Database Design Entwicklertag Karlsruhe Mai 2017 Version: 2.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater,

Mehr

Üben von DDL und DML. Ergebnis:

Üben von DDL und DML.   Ergebnis: SQL DDL Üben von DDL und DML https://www.jdoodle.com/execute-sql-online Ergebnis: Befehlsgruppen in SQL DDL Data Definition Language DML Data Manipulation Language CREATE: Tabellen anlegen DROP: Tabellen

Mehr

NoSQL Datenbanken am Beispiel von CouchDB

NoSQL Datenbanken am Beispiel von CouchDB NoSQL Datenbanken am Beispiel von CouchDB OIO - Hauskonferenz 2011 Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thomas Bayer Programmierer

Mehr

REST Services To-Go Einfacher Einstieg in die REST Programmierung

REST Services To-Go Einfacher Einstieg in die REST Programmierung REST Services To-Go Einfacher Einstieg in die REST Programmierung 04.07.2017 Version 1.0 Seite 1 Zur Person Marcus Blum Oracle Forms seit 1994 (Forms 3 / Oracle 6 aufwärts) Fokus auf Oracle APEX seit 2007

Mehr

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part XI) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

Seminararbeit. Konzept einer Schnittstelle zur Benutzerverwaltung in RiskShield-Server. Christoph Laufs INFORM GmbH INFORM GmbH 1

Seminararbeit. Konzept einer Schnittstelle zur Benutzerverwaltung in RiskShield-Server. Christoph Laufs INFORM GmbH INFORM GmbH 1 Seminararbeit Konzept einer Schnittstelle zur Benutzerverwaltung in RiskShield-Server Christoph Laufs INFORM GmbH 2016 - INFORM GmbH 1 Agenda 1. RiskShield-Server 2. Motivation und Anforderungen 3. Web

Mehr

Spiel, Spaß, Spannung mit ember js

Spiel, Spaß, Spannung mit ember js Spiel, Spaß, Spannung mit ember js ember js 2 Spiel, Spaß, Spannung mit ember js ember js 3 Spiel, Spaß, Spannung mit ember js ember js A framework for creating ambitious web applications 4 Spiel, Spaß,

Mehr

Automatisierung und Integration von Request Tracker Systemen mittels REST-Schnittstelle. Stefan Hornburg. Perlworkshop 2008

Automatisierung und Integration von Request Tracker Systemen mittels REST-Schnittstelle. Stefan Hornburg. Perlworkshop 2008 Automatisierung und Integration von Request Tracker Systemen mittels REST-Schnittstelle Stefan Hornburg Perlworkshop 2008 split() Request Tracker REST-Schnittstelle Automatisierung Integration Kunden Deutschland:

Mehr

RESTful API Grundlagen mit PHP und Payrexx

RESTful API Grundlagen mit PHP und Payrexx RESTful API Grundlagen mit PHP und Payrexx Autor: Michael Räss, michael.raess@payrexx.com Stand: 21.11.2017 Payrexx AG Ziele Begriffe und Definition verstehen Prinzipien / Funktionsweise kennenlernen Grundlagen

Mehr

REST Services in APEX Anwendungen nutzen

REST Services in APEX Anwendungen nutzen REST Services in APEX Anwendungen nutzen Carsten Czarski - @cczarski Consulting Member of technical Staff Oracle Application Express ORACLE Deutschland B.V. & Co KG REST: Representational State Transfer

Mehr

NILS HARTMANN. React MODERNE WEB-ANWENDUNGEN MIT. Slides: BED-CON BERLIN SEPTEMBER

NILS HARTMANN. React MODERNE WEB-ANWENDUNGEN MIT. Slides:   BED-CON BERLIN SEPTEMBER NILS HARTMANN React MODERNE WEB-ANWENDUNGEN MIT Slides: http://bit.ly/bedcon-react BED-CON BERLIN SEPTEMBER 2017 @NILSHARTMANN NILS HARTMANN Programmierer aus Hamburg Java JavaScript, TypeScript Trainings

Mehr

Web-API Design mit Java

Web-API Design mit Java @_openknowledge Web-API Design mit Java API-First Design mit ÜBER OPEN KNOWLEDGE BRANCHENNEUTRALE SOFTWAREENTWICKLUNG UND IT-BERATUNG ÜBER UNS SM STEPHAN MÜLLER Wer bin ich - und wenn ja, wie viele? Enterprise

Mehr

SAP NetWeaver Gateway. Connectivity@SNAP 2013

SAP NetWeaver Gateway. Connectivity@SNAP 2013 SAP NetWeaver Gateway Connectivity@SNAP 2013 Neue Wege im Unternehmen Neue Geräte und Usererfahrungen Technische Innovationen in Unternehmen Wachsende Gemeinschaft an Entwicklern Ausdehnung der Geschäftsdaten

Mehr

ODS 6.0 Schnittstelle

ODS 6.0 Schnittstelle ODS 6.0 Schnittstelle Dieter Müller Server Developer 1 Architektur ODS-Schnittstelle Vergleich ODS 5.x ODS 6.0 ODS 5.x ODS 6.0 ODS Client ODS Server ODS Client ODS Server Stub ORB IIOP Generiert aus

Mehr

MICROSERVICES-SCHNITT JETZT MIT GRAPHQL!

MICROSERVICES-SCHNITT JETZT MIT GRAPHQL! MICROSERVICES-SCHNITT JETZT MIT GRAPHQL! 05.07.2018 Matthias Koch Agenda 1. Überblick über das Framework 2. GraphQL vs. REST 3. GraphQL als API-Gateway? 2 Agenda 1. Überblick über das Framework 2. GraphQL

Mehr

Spiel, Spaß, Spannung mit ember js

Spiel, Spaß, Spannung mit ember js Spiel, Spaß, Spannung mit ember js Spiel, Spaß, Spannung mit ember js ember js A framework for creating ambitious web applications 3 Spiel, Spaß, Spannung mit ember js ember js l Convention over configuration

Mehr

Agile Architektur. Abstract. Version: 1.1. Orientation in Objects GmbH. Weinheimer Str Mannheim.

Agile Architektur. Abstract. Version: 1.1. Orientation in Objects GmbH. Weinheimer Str Mannheim. Agile Version: 1.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Abstract Eine gut geplante Softwarearchitektur stellt das Grundgerüst jeder wartbaren Software dar.

Mehr

Google Collections. Gliederung. Los geht s... Praktische Helferlein Collections Wie geht s weiter? Version: 1.0. Orientation in Objects GmbH

Google Collections. Gliederung. Los geht s... Praktische Helferlein Collections Wie geht s weiter? Version: 1.0. Orientation in Objects GmbH Google Collections Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung Los geht s... Praktische Helferlein Collections Wie geht s weiter? 2009 Orientation

Mehr

Die S.O.L.I.D-Prinzipien für C# Entwickler Thomas Claudius

Die S.O.L.I.D-Prinzipien für C# Entwickler Thomas Claudius Die S.O.L.I.D-Prinzipien für C# Entwickler Thomas Claudius Huber @ThomasClaudiusH BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH

Mehr

IT im Wandel. Der richtige Weg zu modernen Apps und in die Oracle Cloud

IT im Wandel. Der richtige Weg zu modernen Apps und in die Oracle Cloud IT im Wandel Der richtige Weg zu modernen Apps und in die Oracle Cloud Aktuelle Trends der Digitalisierung Mobile Social Big Data Internet of Things Aktivitäten an jedem Ort und zu jeder Zeit Ermöglicht

Mehr

Python VS Perl. Storage Monitoring per API statt SNMP. Björn Müller Marcel Denia. comnet GmbH

Python VS Perl. Storage Monitoring per API statt SNMP. Björn Müller Marcel Denia. comnet GmbH Python VS Perl Storage Monitoring per API statt SNMP comnet GmbH Björn Müller Marcel Denia comnet GmbH 13.09.2017 Agenda Über uns Ausgangssituation Umsetzung Python Umsetzung Perl??? 13.09.2017 comnet

Mehr

Softwaretechnik WS 16/17. Übungsblatt 01

Softwaretechnik WS 16/17. Übungsblatt 01 Softwaretechnik WS 16/17 Übungsblatt 01 Was ist eine Klasse? Definition der Object Management Group: A class describes a set of objects that share the same specifications of features, constraints, and

Mehr

Axis2, CXF und JAX-WS RI im Vergleich

Axis2, CXF und JAX-WS RI im Vergleich Axis2, CXF und JAX-WS RI im Vergleich Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Gliederung Die Standards: JWS, JAXB und JAX-WS Axis2 Apache CXF JAX-WS RI und

Mehr

Asynchrone Anwendungen mit CompletableFuture

Asynchrone Anwendungen mit CompletableFuture Enterprise Java, Services und Systemintegration Asynchrone Anwendungen mit CompletableFuture http://www.frotscher.com @thfro thilo@frotscher.com Vorstellung Software-Architekt, Entwickler und Trainer Fachliche

Mehr

REST in Pieces. Jörn Clausen joern@techfak.uni-bielefeld.de

REST in Pieces. Jörn Clausen joern@techfak.uni-bielefeld.de REST in Pieces Jörn Clausen joern@techfak.uni-bielefeld.de Worum geht es? Dissertation Architectural Styles and the Design of Network-based Software Architectures von Roy T. Fielding, UC Irvine, 2000 [...

Mehr

Datenbanken in der schönen neuen Welt

Datenbanken in der schönen neuen Welt - It's time to rethink - Datenbanken in der schönen neuen Welt W-JAX 5. November 2014 Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Um was geht s? Die

Mehr

Tim Software-Architekt und Entwickler bei.

Tim   Software-Architekt und Entwickler bei. Tim Strehle @tistre www.strehle.de/tim Software-Architekt und Entwickler bei www.digicol.de Wie das Semantic Web Digital Asset Management verändern kann. Wie gut eignen sich Semantic Web- Technologien

Mehr

FEBE Die Frontend-Backend-Lösung für Excel

FEBE Die Frontend-Backend-Lösung für Excel FEBE Die Frontend--Lösung für FEBE Die Frontend--Lösung für FEBE.pptx 8.04.206 0:43 FEBE Die Frontend--Lösung für Nutzer A alle_aufträge neuer_auftrag Auftragsänderung Nutzer B alle_aufträge neuer_auftrag

Mehr

REST in Pieces. Jörn Clausen

REST in Pieces. Jörn Clausen REST in Pieces Jörn Clausen joern@techfak.uni-bielefeld.de Worum geht es? Dissertation Architectural Styles and the Design of Network-based Software Architectures von Roy T. Fielding, UC Irvine, 2000 [...

Mehr

JavaScript ohne Schrecken?

JavaScript ohne Schrecken? NILS HARTMANN Eine Einführung in TypeScript JavaScript ohne Schrecken? Slides: https://bit.ly/jug-saxony-typescript JUG SAXONY DAY DRESDEN SEPTEMBER 2018 @NILSHARTMANN NILS HARTMANN Programmierer aus Hamburg

Mehr

DIBELS TM. German Translations of Administration Directions

DIBELS TM. German Translations of Administration Directions DIBELS TM German Translations of Administration Directions Note: These translations can be used with students having limited English proficiency and who would be able to understand the DIBELS tasks better

Mehr

M2M-Serviceplattformen für das Internet der Dinge

M2M-Serviceplattformen für das Internet der Dinge M2M-Serviceplattformen für das Internet der Dinge Klaus-Dieter Walter SSV Software Systems GmbH, Hannover kdw@ssv-embedded.de 20.11.2013 1 Agenda Wer ist SSV Software Systems? Hintergründiges zu IoT, M2M,

Mehr

Web-Konzepte für das Internet der Dinge Ein Überblick

Web-Konzepte für das Internet der Dinge Ein Überblick Web-Konzepte für das Internet der Dinge Ein Überblick Samuel Wieland sawielan@student.ethz.ch ETH Zürich Seminar Das Internet der Dinge Historisches Tim Berners-Lee Erster Web-Server Bildquelle: Wikimedia

Mehr

als Alternative zu REST Manuel

als Alternative zu REST Manuel als Alternative zu REST Manuel Mauky @manuel_mauky Single-Page-Apps und mobile Apps API Wie kommen die Daten zum Client? API? Klassisch: REST/Hypermedia zahlreiche Ressourcen, jeweils über URIs erreichbar

Mehr

Modul 9: Web APIs (REST, XHR, SSE, WebSockets)

Modul 9: Web APIs (REST, XHR, SSE, WebSockets) Modul 9: Web APIs (REST, XHR, SSE, WebSockets) 10.06.2018 16:31:22 M. Leischner Internetkommunikation Folie 1 Anwendungsnähe Hochschule Browser Networking APIs, Protocols, and Services - Einordnung statisch

Mehr

Deep-Dive Workshop: Virtualisierung der Softwareentwicklung

Deep-Dive Workshop: Virtualisierung der Softwareentwicklung Deep-Dive Workshop: Virtualisierung der Softwareentwicklung Hanna Behnke, Lukas Böhme, Jonas Grunert, Alexander Reichenbach, Andreas Schmietendorf, Steffen Viebrock 1 Impuls Minuten 2 Hintergrund zum Forschungsbereich

Mehr

4. RADAR-WORKSHOP RADAR APPLICATION PROGRAMMING INTERFACE KARLSRUHE, 25./26. JUNI Matthias Razum, FIZ Karlsruhe

4. RADAR-WORKSHOP RADAR APPLICATION PROGRAMMING INTERFACE KARLSRUHE, 25./26. JUNI Matthias Razum, FIZ Karlsruhe 4. RADAR-WORKSHOP KARLSRUHE, 25./26. JUNI 2018 RADAR APPLICATION PROGRAMMING INTERFACE Matthias Razum, FIZ Karlsruhe APPLICATION PROGRAMMING INTERFACE POTENZIAL ANWENDUNG Application Programming Interface

Mehr

Bachelorarbeit. Claus Torben Haug. Konzeptionierung und Umsetzung eines Werkzeugs zum Vergleichen verschiedener Versionen einer Swagger-Definition

Bachelorarbeit. Claus Torben Haug. Konzeptionierung und Umsetzung eines Werkzeugs zum Vergleichen verschiedener Versionen einer Swagger-Definition Bachelorarbeit Claus Torben Haug Konzeptionierung und Umsetzung eines Werkzeugs zum Vergleichen verschiedener Versionen einer Swagger-Definition Fakultät Technik und Informatik Studiendepartment Informatik

Mehr

Stefan Tilkov. REST und HTTP. Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag

Stefan Tilkov. REST und HTTP. Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag Stefan Tilkov REST und HTTP Einsatz der Architektur des Web für Integrationsszenarien dpunkt.verlag ~ы\ 1 Einleitung 1 1.1 Warum REST? 1 1.1.1 Lose Kopplung 2 1.1.2 Interoperabilität 2 1.1.3 Wiederverwendung

Mehr

<Insert Picture Here> Einführung in SOA

<Insert Picture Here> Einführung in SOA Einführung in SOA Markus Lohn Senior Principal Consultant SOA? - Ideen Selling Oracle To All SAP On ABAP Increasing Sales Of Applications 3 Agenda Motivation SOA-Definition SOA-Konzepte

Mehr

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES 2016 Software AG. All rights reserved. For internal use only DIGITAL BUSINESS APPLICATIONS DRIVE THE DIGITAL BUSINESS Partner Lieferanten Kunden SaaS

Mehr

Exercise (Part V) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part V) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part V) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

Informatik II Übung 7 Gruppe 7

Informatik II Übung 7 Gruppe 7 Informatik II Übung 7 Gruppe 7 Leyna Sadamori leyna.sadamori@inf.ethz.ch Informatik II Übung 7 Leyna Sadamori 10. April 2014 1 Administratives Nächste Übung fällt leider aus! Bitte eine andere Übung besuchen.

Mehr

IT S ALL ABOUT THE DOMAIN, HONEY!

IT S ALL ABOUT THE DOMAIN, HONEY! IT S ALL ABOUT THE DOMAIN, HONEY! Fachliche Architektur In hoher Qualitaet durch Domain-Driven design @hschwentner Was ist das für 1 Design? @hschwentner Vong Domain her @hschwentner HENNING SCHWENTNER

Mehr

MULTIPLEXING UND SERVER PUSH

MULTIPLEXING UND SERVER PUSH 1 MULTIPLEXING UND SERVER PUSH HTTP/2 in Java 9 PROFESSIONALS 2 INDIVIDUALS N3RDS Die Holisticon AG ist eine Management- und IT- Beratung aus Hamburg. Wir entwickeln beste Individualsoftware, Webplattformen

Mehr

Aktuelle Technologien zur Entwicklung verteilter Anwendungen RESTful Web Services mit JAX-RS

Aktuelle Technologien zur Entwicklung verteilter Anwendungen RESTful Web Services mit JAX-RS Aktuelle Technologien zur Entwicklung verteilter Anwendungen Überblick, Grundlagen und Entwicklung mit Java Gliederung A. I. Web Services II. RESTful Web Services III. Java API for RESTful Web Services

Mehr

SOA mit.net: Vom Geschäftsprozess zur Lösung

SOA mit.net: Vom Geschäftsprozess zur Lösung SOA mit.net: Vom Geschäftsprozess zur Lösung Manfred Steyer Aktuelles Buch.Net 4.0 Update ISBN 978-3866454439 http://tinyurl.com/net4update 1 Kontakt [www] www.softwarearchitekt.at [mail] Manfred.Steyer@SoftwareArchitekt.at

Mehr

BRÜHL MÄRZ

BRÜHL MÄRZ NILS HARTMANN GraphQL für Java-Entwickler Slides: https://bit.ly/javaland-graphql JAVALAND, BRÜHL MÄRZ 2019 @NILSHARTMANN NILS HARTMANN Freiberuflicher Entwickler, Architekt, Trainer aus Hamburg Java JavaScript,

Mehr

Interface. So werden Interfaces gemacht

Interface. So werden Interfaces gemacht Design Ein Interface (=Schnittstelle / Definition) beschreibt, welche Funktionalität eine Implementation nach Aussen anzubieten hat. Die dahinter liegende Algorithmik wird aber der Implementation überlassen.

Mehr

REST IN PEACE MIT ORACLE

REST IN PEACE MIT ORACLE REST IN PEACE MIT ORACLE ORDS, NODE.JS, ADF, JAVA ODER OSB Ulrich Gerkmann-Bartels und Andreas Koop ÜBER UNS Ulrich Gerkmann-Bartels Geschäftsführung und Consulting Andreas Koop Geschäftsführung und Consultant

Mehr

Die Alternative zum Web-Form Modell

Die Alternative zum Web-Form Modell Marc André Zhou Solution Architect www.dev -sky.net www.just -sp.net Die Alternative zum Web-Form Modell dotnet Cologne 03.05.2013 Agenda Web Forms vs. MVC ASP.NET MVC Features Web API ODATA Eine ASP.NET

Mehr

Google Gears Offline Web?

Google Gears Offline Web? Google Gears ist eine Browsererweiterung, die es in sich hat. Dem Webanwendungsentwickler werden Dienste bereitgestellt, die es ermöglichen, Webanwendungen so zu schreiben, dass eine Offline-Arbeit möglich

Mehr

Creating OpenSocial Gadgets. Bastian Hofmann

Creating OpenSocial Gadgets. Bastian Hofmann Creating OpenSocial Gadgets Bastian Hofmann Agenda Part 1: Theory What is a Gadget? What is OpenSocial? Privacy at VZ-Netzwerke OpenSocial Services OpenSocial without Gadgets - The Rest API Part 2: Practical

Mehr

ROCA im Java-EE-Kontext

ROCA im Java-EE-Kontext ROCA im Java-EE-Kontext Endlich webkonforme Anwendungen bauen!! Holger Kraus Frederik Dohr Wir lösen das persönlich! Java EE - Context 2014 innoq Deutschland GmbH Java EE - Context http://www.flickr.com/photos/maha-online/62627811

Mehr

ColdFusion 8 PDF-Integration

ColdFusion 8 PDF-Integration ColdFusion 8 PDF-Integration Sven Ramuschkat SRamuschkat@herrlich-ramuschkat.de München & Zürich, März 2009 PDF Funktionalitäten 1. Auslesen und Befüllen von PDF-Formularen 2. Umwandlung von HTML-Seiten

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 06: Das Visitor Pattern Prof. Dr. Peter Thiemann (vertreten durch Luminous Fennell) Albert-Ludwigs-Universität Freiburg, Germany SS 2015 Peter Thiemann (Univ. Freiburg)

Mehr

Kai Wähner MaibornWolff et al GmbH

Kai Wähner MaibornWolff et al GmbH Kategorisierung von Web-Frameworks im Java-Umfeld Gobelingewebe Kai Wähner MaibornWolff et al GmbH Unüberschaubare Auswahl im Alltag 16.09.2010 Seite 2 Unüberschaubare Auswahl bei Web-Frameworks 16.09.2010

Mehr

Agile Architektur. Abstract. Version: 1.0. Orientation in Objects GmbH. Weinheimer Str Mannheim.

Agile Architektur. Abstract. Version: 1.0. Orientation in Objects GmbH. Weinheimer Str Mannheim. Agile Architektur Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Abstract Eine gut geplante Softwarearchitektur stellt das Grundgerüst jeder wartbaren

Mehr

There are 10 weeks this summer vacation the weeks beginning: June 23, June 30, July 7, July 14, July 21, Jul 28, Aug 4, Aug 11, Aug 18, Aug 25

There are 10 weeks this summer vacation the weeks beginning: June 23, June 30, July 7, July 14, July 21, Jul 28, Aug 4, Aug 11, Aug 18, Aug 25 Name: AP Deutsch Sommerpaket 2014 The AP German exam is designed to test your language proficiency your ability to use the German language to speak, listen, read and write. All the grammar concepts and

Mehr

Dirk von der Weiden, Olaf Meyer C1 SetCon. REST in the Enterprise

Dirk von der Weiden, Olaf Meyer C1 SetCon. REST in the Enterprise Konferenz Dirk von der Weiden, Olaf Meyer C1 SetCon REST in the Enterprise REST in the Enterprise C1 SetCon GmbH Stand: Januar 2010 Copyright 2010 C1 SetCon GmbH Member of C1 Group Einleitung Worum geht

Mehr

Delphi MVC Framework. Mathias Pannier

Delphi MVC Framework. Mathias Pannier Delphi MVC Framework Mathias Pannier Über mich Name: Mathias Pannier Position: Softwareentwickler/Teamleiter Mehr als 15 Jahre Erfahrung mit Softwareentwicklung in Delphi Blog: DMVCFramework Delphi MVC

Mehr

RESTful API design. Warum REST mehr als HTTP mit XML ist. Dr. Stefan Schlott BeOne Stuttgart GmbH

RESTful API design. Warum REST mehr als HTTP mit XML ist. Dr. Stefan Schlott BeOne Stuttgart GmbH RESTful API design Warum REST mehr als HTTP mit XML ist Don t get pissed by API design! Dr. Stefan Schlott BeOne Stuttgart GmbH Worum es gehen wird Was bestimme ich den Namen der URLs? Was ist Parameter?

Mehr