Practical Aspects of Enterprise Application Developmentrest api: graphql, json api, grpc ReactJS: ZK...

Post on 05-Oct-2020

7 views 0 download

Transcript of Practical Aspects of Enterprise Application Developmentrest api: graphql, json api, grpc ReactJS: ZK...

Practical Aspects of Enterprise ApplicationDevelopment

EAR

Winter Term 2017

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 1 / 21

Contents

1 Speakers

2 Topics

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 2 / 21

Speakers

Speakers

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 3 / 21

Speakers

Petr Aubrecht

Lead developer at StringData,

15+ years of experience in server-side application development,

Technologies

C/C++, Java, Java EEJSP, JSFRelational databasesAgile MethodologiesWeb Services

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 4 / 21

Speakers

Roman Kunovsky

Lead Java developer at Baader Computer,

15+ years of experience in Java development,

Technologies

JavaSpring, HibernateRelational databasesApplication servers (Tomcat, IBM WebSphere)Sencha ExtJS

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 5 / 21

Speakers

Baader Computer

Member of the international group”Kirchhoff Datensysteme Group“

120 employees (30 developers in CR)

6 locations (Mainz, Erfurt, Praha, Ceske Budejovice, Sumperk,Bangalore)

Two areas:Java (mostly automotive/individual development)

Web applicationsJava, Spring, Hibernate, Sencha ExtJS, Tomcat/TomEE, Oracle,MSSQL, PostgreSQLWe participate on projects for: Skoda Auto, SEAT, PSA,Jaguar/Land-Rover

.Net

Own product Poly.ERP

www.bcpraha.cz

Trainee program for students

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 6 / 21

Speakers

Rudolf Vlk

Software developer at DataVision,

10+ years of development experience,

Technologies

C/C++, Java, Java EEC# and .NetRelational databasesTest driven developmentZK Framework, Angular

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 7 / 21

Speakers

DataVision

Small company (25 employees, mostly programmers)

Two areas of expertiseVision systems – quality assurance & robot guidance applications

C#, HALCON, Microsoft stack, Visual StudioWe participate on projects for: Volkswagen, Skoda, Michelin, SICK

Information systems / web applications

Java, Java EE, Spring, Angular, ZK Framework, IntelliJ IdeaWe participate on projects for: Creditas, SICK

www.datavision.cz

We’re hiring!

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 8 / 21

Topics

Topics

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 9 / 21

Topics

Practical Experience with Application Development

SCRUM

Agile Methodologies

Continuous Integration

Deployment

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 10 / 21

Topics

Roman Kunovsky

Agile Methodologies

SCRUM

Extreme Programming

Test Driven Development (TDD)

Continuous Integration

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 11 / 21

Topics

Roman KunovskyDeployment (SEAT Germany – application servers environment)

Windows Server 2012

TomEE configuration repository (including WAR artifacts)

TomEE “deploy” Agent (SEAT proprietary solution)

Deployment → automatic update of Windows TomEE services

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 12 / 21

Topics

Rudolf Vlk

On trying to be Agile

Be ready to compromise (when the customer is not interested)Set up feedback loopsAutomate everythingHave a planDon’t neglect maintainability

Refactoring to a good design is integral part of TDD

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 13 / 21

Topics

Java EE vs. Spring

Standardization vs Dynamic evolution

Security, caching, scalability

Full Java EE vs Java EE Web Profile

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 14 / 21

Topics

Roman Kunovsky

Used Spring modules

Core Container

AOP and Instrumentation

Data Access/Integration

Web

Test

Security

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 15 / 21

Topics

Rudolf Vlk

Seems mostly like a choice of personal preference

Both are leaky abstractions

Java EE customized security is a pain

Java EE (theoretical) portability vs Spring’s lock-in

Spring Boot and Microservices

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 16 / 21

Topics

Alternative Technologies

Alternatives to

PostgreSQL

Eclipselink (JPA)

Spring

REST API

ReactJS

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 17 / 21

Topics

Roman Kunovsky

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 18 / 21

Topics

Rudolf Vlk

PostgreSQL: Oracle, MySQL, MongoDB (NoSQL)

JPA: JOOQ

REST API: GraphQL, JSON API, gRPC

ReactJS: ZK Framework, Angular, WebAssembly

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 19 / 21

Topics

Open Discussion

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 20 / 21

Topics

Java in the age of NodeJS

EAR Practical Aspects of Enterprise Application Development Winter Term 2017 21 / 21