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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 Microservices - Integration der Benutzeroberfläche - Version: 18.1 Orientation in Objects GmbH Weinheimer Str Mannheim info@oio.de

2 Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Sollen wir Microservices Kunde Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 2

3 Warum Microservices? 3

4 Java Magazin Driven Architecture 4

5 Scale team Scale architecture 5

6 Anforderungen Unabhängige Teams Unabhängige Releases Unabhängige Technologie-Stacks A/B Testing 6

7 Backend-Microservices sind einfach wirklich? 7

8 8 Irrtümer der verteilten Datenverarbeitung Netzwerk ist ausfallsicher Latenzzeit = 0 Datendurchsatz Netzwerk ist sicher Netzwerktopologie ist stabil 1 Netzwerkadministrator Kosten des Datentransports = 0 Netzwerk ist homogen Bill Joy, Tom Lyon, L Peter Deutsch und James Gosling 8

9 public class Microservice { public static void main(string[] args) { SpringApplication.run(Microservice.class, args); } public String sayhello() { return "Hello World"; } 9

10 Was ist mit dem Frontend? 10

11 Frontend- Monolith Backend Microservice 1 Backend Microservice 2 Backend Microservice 3 11

12 Vorteile Frontend-Monolith UI-Experten Saubere Backend-Schnittstellen Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 12

13 Nachteile Frontend-Monolith Frontend-Team braucht Wissen über alle Services Teams müssen synchronisiert werden Frontend-Team als Flaschenhals 13

14 Frontend- Monolith Backend Microservice 1 Backend Microservice 2 Backend Microservice 3 14

15 Nochmal die Anforderungen Unabhängige Teams Unabhängige Releases Unabhängige Technologie-Stacks A/B Testing 15

16 50% Backend / 50% Frontend? Dann machen wir auch nur 50% Microservices! 16

17 Herausforderungen: Konsistentes Aussehen?! Integration in eine UI?! Frontend 1 Frontend 2 Frontend 3 Backend 1 Backend 2 Backend 3 17

18 18

19 Sind das noch Microservices? 19

20 Router Service Search Service Product Service Meta Info Service 20

21 Integration Browser HTML Clientside Integration JSON Serverside Integration Microservice 1 Microservice 2 Microservice 1 Microservice 2 21

22 Vorteil Browser HTML Serverside Integration SEO Microservice 1 Microservice 2 22

23 Nachteil Browser HTML Serverside Integration Microservice 1 Microservice 2 First Page Impression 23

24 Facebook verbessert First Page Impression durch Big Pipe 24

25 BigPipe I <html> <head> </head> <body> <div id="content1">-</div> <div id="content2">-</div> <div id="content3">-</div> Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 25

26 BigPipe II <html> <head> <script type="text/javascript"> function arrived(id, text) { document.getelementbyid(id).innerhtml = text; } </script> </head> <body> <div id="content1">-</div> <div id="content2">-</div> <div id="content3">-</div> Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 26

27 BigPipe III <html> <head> <script type="text/javascript"> function arrived(id, text) { document.getelementbyid(id).innerhtml = text; } </script> </head> <body> <div id="content1">-</div> <div id="content2">-</div> <div id="content3">-</div> <script>arrived("content3", "Wohooo 3");</script> <script>arrived("content1", "Wohooo 1");</script> <script>arrived("content2", "Wohooo 2");</script> </body> </html> Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 27

28 BigPipe Server private void pagelet(printwriter writer, String id, String content) { writer.write("<script>" + "arrived(\"" + id + "\", '" + content + "');" + "</script>\n"); writer.flush(); } Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 28

29 Zalando setzt noch einen drauf Project Mosaic 29

30 Serverside Integration <html> <head> <script type="fragment" src=" </head> <body> <fragment src=" <fragment src=" primary></fragment> <fragment src=" async></fragment> </body> </html> Content Service Footer Service 30

31 service1: Path("/service1/*_") -> " service2: Path("/service2/*_") -> auth() -> " Router (Skipper) Template 1 Template 2 Template 3 31

32 Shaker einheitliche UI Komponenten Bibliothek 32

33 Browser Fragments Fragments Fragments Microservice 1 Microservice 2 Microservice

34 Compoxure Composition Middleware <div cx-url='{{server:local}}/application/widget/{{cookie:userid}}' cx-cache-ttl='10s' cx-cache-key='widget:user:{{cookie:userid}}' cx-timeout='1s' cx-statsd-key="widget_user"> This content will be replaced on the way through </div> Orientation in Objects GmbH Microservices Integration der Benutzeroberfläche 34

35 Integration Browser HTML Clientside Integration JSON Serverside Integration Microservice 1 Microservice 2 Microservice 1 Microservice 2 35

36 Alle wollen 36

37 keine direkte Unterstützung für Microservices 37

38 38 META FRAMEWORK

39 Micro Frontends The DOM is the API 39

40 <router-navigation></router-navigation> <product-details></product-details> <meta-footer></meta-footer> 40

41 class SearchProduct extends HTMLElement { constructor() { super(); this.innerhtml = '<input type="text"><button>search</button>'; } } window.customelements.define('search-product', SearchProduct); class RouterNavigation extends HTMLElement { constructor() { super(); this.innerhtml = 'Navigation <search-product></search-product>'; } } window.customelements.define('router-navigation', RouterNavigation); 41

42 Browser Support Custom Elements v1 42

43 Browser Support Custom Elements v1 Mit Polyfill (~5 KB) 43

44 connectedcallback() { window.addeventlistener('router:navigation:changed', this.refresh); } window.dispatchevent(new CustomEvent('router:navigation:changed, {'detail': 'Support'} )); 44

45 Zuviel Handarbeit? 45

46 Single SPA 46

47 Root application Single SPA Child application Child application 47

48 Root application Single SPA import * as singlespa from 'single-spa'; singlespa.declarechildapplication('app-1', () => import('../app1/app1.js')); singlespa.declarechildapplication('app-2', () => import('../app2/app2.js')); singlespa.start(); 48

49 export function bootstrap(props) { // app1 initialisieren } export function mount(props) { // app1 im DOM Baum einhängen } export function unmount(props) { // app2 aus dem DOM Baum aushängen } Child application Child application 49

50 import React from 'react'; import ReactDOM from 'react-dom'; import singlespareact from 'single-spa-react'; import Root from './root.component.js'; const reactlifecycles = singlespareact({ React, ReactDOM, rootcomponent: Root, domelementgetter, }); export function bootstrap(props) { return reactlifecycles.bootstrap(props); } export function mount(props) { return reactlifecycles.mount(props); } export function unmount(props) { return reactlifecycles.unmount(props); } function domelementgetter() { // Make sure there is a div for us to render into let el = document.getelementbyid('app1'); if (!el) { el = document.createelement('div'); el.id = 'app1'; document.body.appendchild(el); } Child application } return el; 50

51 Scale team Scale architecture 51

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

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

54 Universal Rendering? Serverside Rendering 54

55 SSI Ja Server Side Includes $ curl <input type="text"><button>search</button> <search-product> <!--#include virtual="/search-product" --> </search-product> 55

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

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

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

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

ResilientSoftware Design Patterns

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

Mehr

NILS HARTMANN OLIVER ZEIGERMANN EINSTIEG IN. React.

NILS HARTMANN OLIVER ZEIGERMANN EINSTIEG IN. React. NILS HARTMANN OLIVER ZEIGERMANN EINSTIEG IN React http://bit.ly/react-lehmanns LEHMANNS MEDIA HAMBURG SEPTEMBER 2016 NILS HARTMANN @NILSHARTMANN OLIVER ZEIGERMANN @DJCORDHOSE HTTP://REACTBUCH.DE SINGLE

Mehr

Resilient Software Design Patterns

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

Mehr

Resilient Software Design Patterns

Resilient Software Design Patterns Resilient Software Design Patterns Version: 18.2 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Zwei OIO Marken http://www.oio.de Ihr Expertenhaus für Softwareentwicklung

Mehr

React.js flottes Front-End für Domino. Knut Herrmann

React.js flottes Front-End für Domino. Knut Herrmann React.js flottes Front-End für Domino Knut Herrmann Knut Herrmann Senior Software Architekt Leonso GmbH Notes Domino Entwickler seit Version 2 Web-App-Entwickler aktiv auf StackOverflow E-Mail: knut.herrmann@leonso.de

Mehr

Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien

Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer,

Mehr

Resilient Software Design - die Grundlagen einer robusten Softwarearchitektur -

Resilient Software Design - die Grundlagen einer robusten Softwarearchitektur - Resilient Software Design - die Grundlagen einer robusten Softwarearchitektur - Version: 18.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten

Mehr

Struts 2 Das Imperium schlägt zurück?

Struts 2 Das Imperium schlägt zurück? Struts 2 Das Imperium schlägt zurück? Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Tobias Kieninger www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software

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

Mobile Apps mit. React-Native. Manuel

Mobile Apps mit. React-Native. Manuel Mobile Apps mit React-Native Manuel Mauky @manuel_mauky Mobile Apps? Mobile Apps? - Welche Möglichkeiten existieren? Native Android ios Mobile Apps? - Welche Möglichkeiten existieren? Native Android ios

Mehr

Mobile Apps mit. React-Native. Manuel

Mobile Apps mit. React-Native. Manuel Mobile Apps mit React-Native Manuel Mauky @manuel_mauky Mobile Apps? Mobile Apps? - Welche Möglichkeiten existieren? Native Android ios Mobile Apps? - Welche Möglichkeiten existieren? Native Android ios

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

Web-Anwendungen mit Arquillian testen

Web-Anwendungen mit Arquillian testen Michael Kotten open knowledge @michaelkotten @_openknowledge Wozu denn testen? Ich mach doch keine Fehler! Wozu denn testen? > Notwendig bei komplexen Systemen > Sicherung von > Qualität > Funktionalität

Mehr

UI Composition. An agile Alternative to Server Side Includes. Arkadiusz Czarnik - Software Engineer Alwin Mark - Software Engineer

UI Composition. An agile Alternative to Server Side Includes. Arkadiusz Czarnik - Software Engineer Alwin Mark - Software Engineer UI Composition An agile Alternative to Server Side Includes Arkadiusz Czarnik - Software Engineer Alwin Mark - Software Engineer REWE digital Vision Mitarbeiterentwicklung Wir steigern die Lebensqualität

Mehr

EINFÜHRUNG IN REACT.JS UND REDUX

EINFÜHRUNG IN REACT.JS UND REDUX EINFÜHRUNG IN REACT.JS UND REDUX REACT.JS EINE JAVASCRIPT LIBRARY ZUM ERSTELLEN VON USER INTERFACES Nur die UI Virtual DOM Data Flow DATA FLOW Unidirektional ohne Event-Chaos https://www. ickr.com/photos/spilt-milk/5829575950

Mehr

Schnell performante Web-Applikationen entwickeln. Markus Zapke-Gründemann LinuxTag 2012

Schnell performante Web-Applikationen entwickeln. Markus Zapke-Gründemann LinuxTag 2012 Schnell performante Web-Applikationen entwickeln Markus Zapke-Gründemann LinuxTag 2012 Übersicht Vorstellung Was ist Django? Architektur Code Django Roadmap Entwicklungsprozess Django in Zahlen Django

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

MIT REACT UI-KOMPONENTEN ENTWICKELN

MIT REACT UI-KOMPONENTEN ENTWICKELN MIT REACT UI-KOMPONENTEN ENTWICKELN NILS HARTMANN W-JAX 2015 NILS@NILSHARTMANN.NET GitHub Twitter E-Mail A JAVASCRIPT LIBRARY FOR BUILDING USER INTERFACES React SINGLE PAGE APPLICATIONS React OPEN SOURCE

Mehr

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components

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

Tragfähige Frontend-Architekturen

Tragfähige Frontend-Architekturen Tragfähige Frontend-Architekturen Till Schulte-Coerne JavaLand 2014 Wir lösen das persönlich! Frontend-Architektur? Software-Architektur! Frontend Backend Fertig! DB Was wo hin? Frontend Backend DB Rest

Mehr

Eclipse Scout Heute und Morgen. Jérémie Bresson BSI Business Systems Integration AG

Eclipse Scout Heute und Morgen. Jérémie Bresson BSI Business Systems Integration AG Eclipse Scout Heute und Morgen @ZimMatthias @j2r2b Matthias Zimmermann Jérémie Bresson BSI Business Systems Integration AG Scout Heute Neon Release Eclipse Scout Neon Release Neue Java Platform Neon Release

Mehr

Teil 3 - Java. Grundlagen Klassen, Attribute Methoden

Teil 3 - Java. Grundlagen Klassen, Attribute Methoden Teil 3 - Java Grundlagen Klassen, Attribute Methoden 1 Java 2 - Geschichte Ursprung: Green -Project bei der Firma Sun Microsystems 1991 Entwicklung eines Systems mit folgenden Eigenschaften: hardwareunabhängig

Mehr

{ Light up the Web } Oliver Scheer. Evangelist Microsoft Deutschland

{ Light up the Web } Oliver Scheer. Evangelist Microsoft Deutschland { Light up the Web } Oliver Scheer Evangelist Microsoft Deutschland { Light up the Web } Oliver Scheer Evangelist Microsoft Deutschland Was ist Silverlight? Tools für Silverlight Designer-Developer-Workflow

Mehr

Angular & TypeScript. Grundlagen

Angular & TypeScript. Grundlagen Angular & TypeScript Grundlagen Überblick TypeScript Typen & Grundlagen Klassen & Interfaces Dekoratoren Module Tooling Modul Systeme & Module Loader TypeScript Compiler & Linting BuildSystem:

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

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

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

Das Zend Framework. Hält der Name, was er verspricht?

Das Zend Framework. Hält der Name, was er verspricht? Hält der Name, was er verspricht? Sprecher: Carsten Lucke Sofware-Ingenieur bei der sd&m AG, München Aktives Mitglied der sd&m Client- Community PEAR und PECL Entwickler Schreibt für Fachzeitschriften/-bücher

Mehr

informatik ag IT mit klarer Linie S i e b e l O p e n U I

informatik ag IT mit klarer Linie S i e b e l O p e n U I informatik ag IT mit klarer Linie S i e b e l O p e n U I und Siebel auf mobilen Geräten www.ilume.de Siebel Open UI und Siebel auf mobilen Geräten Die Anforderungen an unternehmensweite Softwarelösungen

Mehr

REACT.JS UND REDUX WORKSHOP. Maximilian Schempp (schempp.xyz) Entwicklertag Karlsruhe - Tutorial Day

REACT.JS UND REDUX WORKSHOP. Maximilian Schempp (schempp.xyz) Entwicklertag Karlsruhe - Tutorial Day REACT.JS UND REDUX WORKSHOP Maximilian Schempp (schempp.xyz) 24.05.2017 - Entwicklertag Karlsruhe - Tutorial Day ZEITPLAN 09:00 Uhr: Beginn Bis 11:00 Uhr: React.js Präsentation + Übung 11:00-12:00 Uhr:

Mehr

ue.js on Steroids Wie man aus einem guten Framework noch mehr herausholt

ue.js on Steroids Wie man aus einem guten Framework noch mehr herausholt ue.js on Steroids Wie man aus einem guten Framework noch mehr herausholt Wer sind wir? Christian Hunger @frozencoffee David Müller @dav1d55 David als Nuxt.js-Contributor Projekterfahrung mit Vue.js aus

Mehr

API-Gateway bringt Ordnung in Microservices-Wildwuchs. Frank Pientka, Dortmund

API-Gateway bringt Ordnung in Microservices-Wildwuchs. Frank Pientka, Dortmund API-Gateway bringt Ordnung in Microservices-Wildwuchs Frank Pientka, Dortmund Warum sind Verbindungen wichtig? 3 Agenda APIs regieren die Welt Schnittstellenprobleme Microservices und Qualitätsmerkmale

Mehr

Internet-basierendes Autorensystem zur Erschließung historischen Kulturguts. Thorsten Ludewig. Juni 2004

Internet-basierendes Autorensystem zur Erschließung historischen Kulturguts. Thorsten Ludewig. Juni 2004 METEOR Internet-basierendes Autorensystem zur Erschließung historischen Kulturguts Thorsten Ludewig Juni 2004 1 Übersicht Was ist METEOR Architektur Technische Realisierung Zusammenfassung Zukünftige Entwicklungen

Mehr

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase.

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase. Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG www.agentbase.de 1 Agenda Grundlagen Modernisierung Möglichkeiten mit Domino

Mehr

JavaFX im UI-Technologiedschungel

JavaFX im UI-Technologiedschungel JavaFX im UI-Technologiedschungel Guten Tag, Hallo, Servus! Björn Müller Seit 2007 SAP, AJAX, Swing, JavaFX CaptainCasa Community Swing für Unternehmensanwendungen Seit 2012: JavaFX für Unternehmensanwendungen

Mehr

Webengineering. jquery

Webengineering. jquery Webengineering jquery Marcel Vilas 1 DHBW - Stuttgart jquery - Allgemein jquery ist eine JavaScript-Bibliothek (API) jquery ist eine Funktion (Funktionen sind Objekte) Vorteile: einfacher als vanilla JavaScript

Mehr

ENTERPRISEY ANGULAR.JS

ENTERPRISEY ANGULAR.JS ENTERPRISEY ANGULAR.JS THE GOOD, THE BAD, AND THE UGLY EnterJS 2015 - Ralph Guderlei Technology Advisor @ @rguderlei ENTERPRISE APPLICATIONS? komplexe Datenmodelle (100+ Entities) komplexe Geschäftsprozesse

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

Schritt 4: Hallo Enterprise Bean

Schritt 4: Hallo Enterprise Bean Prof. Dr. Th. Letschert FB MNI JEE Schritt 4: Hallo Enterprise Bean Einstieg: EJBs erzeugen und nutzen Meine erstes EJB Projekt Enterprise Beans sind eine Backend Technologie, die mit unterschiedlichen

Mehr

Web-Anwendungen, SS17 - Fragentypen

Web-Anwendungen, SS17 - Fragentypen Web-Anwendungen, SS17 - Fragentypen Hinweis: Dieses Dokument ist keine Klausur, sondern eine lose (und nicht notwendigerweise vollständige) Sammlung an Fragen wie sie auch in einer Klausur vorkommen könnten.

Mehr

Informatik Sommercamp 2012

Informatik Sommercamp 2012 Informatik Sommercamp 2012 App Entwicklung mit dem Android SDK Dominik W., Stefan S., Jan L. Fakultät für Informatik und Mathematik Universität Passau 23.07.2012 Gliederung 1 2 3 4 Warum? an Schule und

Mehr

Entwicklung mit JavaFX

Entwicklung mit JavaFX Entwicklung mit JavaFX Für die Entwicklung von Client-Web-Anwendungen wurde JavaFX von Oracle als strategische Technologie innerhalb der Java Plattform für den Desktop vorgestellt. JavaFX 2 erfährt eine

Mehr

Java Tools JDK. IDEs. Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation

Java Tools JDK. IDEs.  Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation Java Tools JDK http://www.oracle.com/technetwork/java/javase/ Downloads IDEs Java SE 8 Java SE 8 Documentation Eclipse http://www.eclipse.org IntelliJ http://www.jetbrains.com/idea/ NetBeans https://netbeans.org/

Mehr

11. Webautomatisierung HTTP Protokoll Tabellen Formulare und Parameter Templates, Graphik Ajax Zustandsinformationen

11. Webautomatisierung HTTP Protokoll Tabellen Formulare und Parameter Templates, Graphik Ajax Zustandsinformationen perldoc CGI use CGI; $q=new CGI; print $q->start_html; use CGI qw( :standard );# :html3 for tables print start_html; # same as object call => h1(); => ul( ); Ul(), UL() tr Tr() use

Mehr

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov Java Server Pages 2 und Benutzerdefinierte Tags Strahil Yordanov Überblick Einleitung JSP im Kontext von J2EE JSP2 Benutzerdefinierte Tags Zusammenfassung Einleitung Java Server Pages ist eine Technik

Mehr

Innere Klassen. Innere Klassen. Page 1. Lernziele: innere Klassen, statische geschachtelte Klassen, anonyme Klassen.

Innere Klassen. Innere Klassen. Page 1. Lernziele: innere Klassen, statische geschachtelte Klassen, anonyme Klassen. Innere Klassen Innere Klassen Lernziele: innere Klassen, statische geschachtelte Klassen, anonyme Klassen. Literatur: Java Tutorial & Arnold, K., Gosling, J. und Holmes,D... Page 1 Innere Klassen Der erste

Mehr

Demo Kino: Der Herr der Wolken Die Gefährten

Demo Kino: Der Herr der Wolken Die Gefährten Demo Kino: Der Herr der Wolken Die Gefährten Gemeinsame orchestriert: Database und Java Cloud Service Marcus Schröder Manuel Hoßfeld Oracle Deutschland B.V. & Co KG Copyright 2016, Oracle and/or its affiliates.

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

Objektorientierte PL/SQL-Entwicklung Ein Erfahrungsbericht aus Sicht von JAVA-Entwicklern

Objektorientierte PL/SQL-Entwicklung Ein Erfahrungsbericht aus Sicht von JAVA-Entwicklern Thema Objektorientierte PL/SQL-Entwicklung Ein Erfahrungsbericht aus Sicht von JAVA-Entwicklern Referent: Frank Sanders Seite 1 Inhalt Der Vortrag hat einen sehr kurzen Einleitungsteil der sich mit Objektorientierung

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

Vaadin ein Erfahrungsbericht

Vaadin ein Erfahrungsbericht Vaadin ein Erfahrungsbericht JUG SWITZERLAND 5. Februar 2013 Benjamin Schupp / Markus Kinzler mp technology consulting GmbH Speakers Benjamin Schupp Lead Architect, konzipiert und entwickelt Java-basierte

Mehr

PWA: Portable Webanwendungen statt nativer Apps

PWA: Portable Webanwendungen statt nativer Apps PWA: Portable Webanwendungen statt nativer Apps Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Abstract Mobile First war gestern, Offline First heißt

Mehr

Frontend Migration from JSP to Eclipse Scout

Frontend Migration from JSP to Eclipse Scout Frontend Migration from JSP to Eclipse Scout Peter Nüdling Raiffeisen Schweiz Jérémie Bresson, Peter Barthazy BSI Business Systems Integration AG Eclipse Finance Day, Zürich, 31. Oktober 2014 Seite 1 WebKat:

Mehr

UI / UX Designer (m/w)

UI / UX Designer (m/w) UI / UX Designer (m/w) Konzeption und Design für Webportale, Shopsysteme und mobile Anwendungen Erstellen von Wireframes und Prototypen für neue Projekte und Features Resposive Design von Benutzeroberflächen

Mehr

Java - Programmierung - Objektorientierte Programmierung 1

Java - Programmierung - Objektorientierte Programmierung 1 Java - Programmierung - Objektorientierte Programmierung 1 // Klassen und Objekte public class KlaObj public static void main(string args []) Klasse1 a; a = new Klasse1("heute", 47); Klasse1 b = new Klasse1

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

versus Christian Grobmeier http://www.grobmeier.de @grobmeier

versus Christian Grobmeier http://www.grobmeier.de @grobmeier versus Christian Grobmeier http://www.grobmeier.de @grobmeier Programmiersprache von Google Kann JS ersetzen Läuft in einer VM Für ernsthafte Anwendungen Jung und rockt Heavy Metal Band aus England Ersetzt

Mehr

Java Server Pages (JSP)

Java Server Pages (JSP) Überblick über Internet-Technologien Server-Technologien Datenbankkopplung Servlets JSP PHP CGI XML+XSL Dokumentsprachen Client-PGM ruft DB-Server Web-Server ruft Datenbankserver HTML+Javascript HTML+Applets

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin

Mehr

Autocomplete Mutiple http://www.smarttutorials.net/jquery-autocomplete-multiple-fields-using-ajax-php-mysql-example/ Datenbank: Importiere die SQL-Datei mit phpmyadmin. Diese beinhaltet die Länder (countries)

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

Legacy Web-Apps mit AngularJS pimpen

Legacy Web-Apps mit AngularJS pimpen Legacy Web-Apps mit AngularJS pimpen Über uns Jan Blankenhorn und Philipp Burgmer Software Developers w11k.com / thecodecampus.de > Esslingen / Stuttgart Schulungen, Projekt-Kickoff Consulting, Softwareentwicklung

Mehr

TypeScript JavaScript mit ohne Kopfschmerzen. Veit Weber 3. JUG Saxony Day Radebeul

TypeScript JavaScript mit ohne Kopfschmerzen. Veit Weber 3. JUG Saxony Day Radebeul TypeScript JavaScript mit ohne Kopfschmerzen Veit Weber 3. JUG Saxony Day 30.09.2016 Radebeul Über mich blog.pikodat.com veit_weber Workshops Apps AngularJS Java EE Agenda 01 02 03 Die Krankheit JavaScript

Mehr

DOAG Regionaltreffen Trier/Saarland/Luxemburg "Oracle Forms: Integration einer Formsanwendung in eine SOA-Architektur"

DOAG Regionaltreffen Trier/Saarland/Luxemburg Oracle Forms: Integration einer Formsanwendung in eine SOA-Architektur DOAG Regionaltreffen Trier/Saarland/Luxemburg 07.07.2009 "Oracle Forms: Integration einer Formsanwendung in eine SOA-Architektur" 1. Perspektiven für Oracle Forms Rainer Arnold (rarnold@wolf-consult.net)

Mehr

Der Beginn einer wunderbaren Freundschaft von Stefan Schnell

Der Beginn einer wunderbaren Freundschaft von Stefan Schnell Der Beginn einer wunderbaren Freundschaft von Stefan Schnell Polyglottes programmieren, also programmieren in mehreren Sprachen, ist ein eher ungewöhnliches Szenario. Programmiersprachen bieten im Regelfall

Mehr

Übungen zu Softwaretechnik

Übungen zu Softwaretechnik Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte

Mehr

Neues von Grid Control. Ralf Durben Oracle Deutschland B.V. & Co. KG Business Unit Datenbank DBTec

Neues von Grid Control. Ralf Durben Oracle Deutschland B.V. & Co. KG Business Unit Datenbank DBTec Neues von Grid Control Ralf Durben Oracle Deutschland B.V. & Co. KG Business Unit Datenbank DBTec Agenda Grid Control 11g Neue Infrastruktur Installation Integration mit MyOracle Support Unterstützung

Mehr

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand IntelliJ IDEA Blick über den Eclipse-Tellerrand Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung 2007 Orientation in Objects GmbH IntelliJ IDEA:

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

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs.

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs. JavaServer Faces E-Commerce (WS 2011/12) Fachhochschule Münster FB02 Elektrotechnik und Informatik Referenten: Matthias Wellmeyer, Sven Wermers, Malte Wesker Agenda Einleitung Was ist JSF Aufbau und Techniken

Mehr

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1 HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1 AGENDA Einführung Apps - Einführung Apps Architektur SharePoint-Hosted Apps Cloud-Hosted Apps Ausblick 11.09.2012 IOZ AG 2 ÜBER

Mehr

Christian Meder inovex. Sauberes Grün QS für Android

Christian Meder inovex. Sauberes Grün QS für Android Konferenz Christian Meder inovex Sauberes Grün QS für Android Sauberes Grün: QS für Android W-JAX, 2011 Christian Meder inovex GmbH Chief Technology Officer 09.11.2011 1 Speaker Christian Meder Schwerpunkte

Mehr

Java Einführung Abstrakte Klassen und Interfaces

Java Einführung Abstrakte Klassen und Interfaces Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer

Mehr

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1 Komponenten 1 2. Die Anfänge 3 Peter Sturm, Universität Trier 1 Selbstzufrieden Anwendung Hardware 4 Oh? Da gibt es noch jemanden? Anwendung Anwendung TCP/IP Hardware Hardware 5 Peter Sturm, Universität

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

Testgetriebenes Ajax. Johannes Link unabhängiger Softwarecoach http://johanneslink.net. Marco Klemm andrena objects ag http://andrena.

Testgetriebenes Ajax. Johannes Link unabhängiger Softwarecoach http://johanneslink.net. Marco Klemm andrena objects ag http://andrena. Johannes Link unabhängiger Softwarecoach http://johanneslink.net Marco Klemm andrena objects ag http://andrena.de Agenda Was ist Testgetriebene Entwicklung (TDD)? Herausforderungen bei Ajax-Applikationen

Mehr

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder Java: Kapitel 1 Überblick Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Was ist Java? Die Java-Technologie umfasst die Programmiersprache Java sowie die Java-Plattform

Mehr

Grundlagen der Informatik für Ingenieure I

Grundlagen der Informatik für Ingenieure I 2 Java: Java-Einführung 2 Java: Java-Einführung 2.1 Java-Entwicklungsgeschichte 2.2 Java Eigenschaften 2.3 Java-Entwicklungsumgebung 2.4 Application vs. Applet 2.5 Ein erstes Programm 2.1 2.1 Java - Entwicklungsgeschichte

Mehr

Evolution der Web-Entwicklung nach AJAX

Evolution der Web-Entwicklung nach AJAX Evolution der Web-Entwicklung nach AJAX Vortrag BMW Messe, Oktober 2007 Rudolf Lindner, Projektleiter Technologie F&F GmbH Was ist eine WEB-Anwendung? Datenbank Datenbank Server Logik Prozesse Datenbank

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

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

Klausur Rechnernetze

Klausur Rechnernetze Klausur Rechnernetze Studiengang MI Sommersemester 2007, 30. Mai FH Giessen-Friedberg Prof. Dr. Euler Name Vorname Matrikelnummer Studiengang MI / TI / WK Aufgabe 1 2 3 4 5 Punkte Gesamtpunkte Ich bin

Mehr

DDNEAv Release Notes

DDNEAv Release Notes OWNER: DG TAXUD ISSUE DATE: 19/03/2015 VERSION: 1.00 TAXATION AND CUSTOMS UNION DG FITSDEV3 PROJECT CORRECTIVE DDNEA FOR PHASE 3.2 RELEASE V1.76 SUBJECT: DDNEAv1.76 - Release Notes (FITSDEV3-DDNEAv1.76-RLN)

Mehr

JUnit. Unit testing unter Java

JUnit. Unit testing unter Java JUnit Unit testing unter Java Was ist Junit? einfaches Framework zum Schreiben von wiederholbaren Tests Besonders geeignet für unit testing Erlaubt Hierarchie von Testsuites Schreiben eines Test Case 1.

Mehr

Mobile hybride Applikationen Investment-App der BW-Bank

Mobile hybride Applikationen Investment-App der BW-Bank Mobile hybride Applikationen Investment-App der BW-Bank avono Aktiengesellschaft Breite Straße 2 70173 Stuttgart www.avono.de Fon (0711) 28 07 57 0 Fax (0711) 28 07 57-28 Ihr Referent Manfred Heiland Senior

Mehr

Interaktion Java und JavaScript

Interaktion Java und JavaScript Interaktion Java und JavaScript Eliane Müller Inhalt JavaScript LiveConnect Aufruf von Java aus JavaScript via client-side LiveConnect Aufruf von JavaScript aus Java via client-side LiveConnect Anwendung:

Mehr

Ant + Ivy Building with dependencies

Ant + Ivy Building with dependencies Ant + Ivy Building with dependencies Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Björn Feustel Version: 1.0 www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software Factory

Mehr

Angewandte IT-Sicherheit

Angewandte IT-Sicherheit Angewandte IT-Sicherheit Johannes Stüttgen Lehrstuhl für praktische Informatik I 30.11.2010 Lehrstuhl für praktische Informatik I Angewandte IT-Sicherheit 1 / 28 Aufgabe 1 Betrachten sie folgendes Programm:

Mehr

RAP vs. GWT vs. GAE/J + jquery. Web Technologien im Verlgeich

RAP vs. GWT vs. GAE/J + jquery. Web Technologien im Verlgeich RAP vs. GWT vs. GAE/J + jquery Web Technologien im Verlgeich RAP vs GWT vs jquery Dominik Wißkirchen 30. Oktober 2010 Abkürzungen RAP AJAX RWT Rich AJAX Platform Asynchronous JavaScript and XML RAP Widget

Mehr

Browserbasiertes, kollaboratives Whiteboard

Browserbasiertes, kollaboratives Whiteboard WS 2011/12 Bachelorarbeit Browserbasiertes, kollaboratives Whiteboard Sebastian Dorn 1 von 21 Inhalt 1. Motivation 2. Analyse 3. Design 4. Evaluation 5. Fazit Inhalt 2 von 21 Motivation Zusammenarbeit

Mehr

Programmieren I. Dokumentation mit javadoc Heusch 10.4 Ratz Institut für Angewandte Informatik

Programmieren I. Dokumentation mit javadoc Heusch 10.4 Ratz Institut für Angewandte Informatik Programmieren I Dokumentation mit javadoc Heusch 10.4 Ratz 4.1.1 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Automatische Dokumentation Java bietet standardmäßig das Dokumentationssystem

Mehr