Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Peter Hecker, HECKER CONSULTING
Was darf’s denn sein
Angular, React, Vue.js – Das "beste" Frontend für Java!
© HECKER CONSULTING | ☞ https://www.hco.de |
✉︎
info@hco.de | ☏ 0211 / 542 480 40
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Angular, React, Vue.js - Frontend-Entwicklung 2022
Die Themen
Einführung

Popularität

Leistung

Architektur + Technologien

Ökosystem

Lernkurve

Zukunft
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Einführung
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://github.com/mraible/history-of-web-frameworks-timeline
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://webdevelopmenthistory.com/1995-the-birth-of-javascript/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://dev.to/macargnelutti/server-side-javascript-a-decade-before-node-js-with-netscape-livewire-l72
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://www.youtube.com/watch?v=ztspvPYybIY
JSCONF BERLIN, NOVEMBER 7 & 8, 2009
THE EUROPEAN JAVASCRIPT CONFERENCE
Node.js by Ryan Dahl
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
- 2013 -
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
- 2014 -
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
- 2016 -
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://www.ecma-international.org/publications-and-standards/standards/ecma-262/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://github.com/getify/You-Dont-Know-JS
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://de.wikipedia.org/
Angular
"The modern web developer’s platform"
React
"A JavaScript library for building user
interfaces"
Vue.js
"The Progressive JavaScript Framework"
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://de.wikipedia.org/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Popularität
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://www.npmtrends.com/angular-vs-react-vs-vue
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://2021.stateofjs.com/en-US/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://insights.stackover
fl
ow.com/survey/2021
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://builtwith.com/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://builtwith.com/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Leistung
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://krausest.github.io/js-framework-benchmark/current.html
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_99.0.4844.51.html
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://perf-track.web.app/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://todomvc.com/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://github.com/gothinkster/realworld
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Architektur + Technologien
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
MVC, MVP, MVVM, MV* (*=what-ever)
"Separate ALL the Concerns!"
Quelle: https://khalilstemmler.com/articles/client-side-architecture/architecture
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://angular.io/guide/glossary, https://reactjs.org/docs/glossary.html, https://vuejs.org/api/
Die Welt von Angular Die Welt von React Die Welt von Vue.js
Bindings
Components
Dependency Injection

Directives
Input

Lifecycle
Modules

Observables

Output

Pipes

Projection

Provider

Router

Services

Slots
Template
Children

Class Component
Elements

Functional Component
Hooks

JSX

Lifecycle
Props
State
Bindings
Components
Composables

Computed Properties

Directives
Events

Lifecycle Hooks
Props
Single File Component

Slots
Watchers
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Was ist eigentlich eine "Component"?
Quelle: https://dev.to/kevtiq/how-to-create-a-scalable-and-maintainable-front-end-architecture-4f47
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
UI/UX + Logic in Components
Quelle: https://dev.to/kevtiq/how-to-create-a-scalable-and-maintainable-front-end-architecture-4f47
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
UI/UX - Styling, Libraries, Frameworks
Moderne Ober
fl
ächen mit Angular, React, Vue.js
1. DIY (Do-It-Yourself) 

CSS, SASS/SCSS, Less

2. CSS-Frameworks

Bootstrap, Tailwind, Material Design...

3. UI/UX-Components

Bootstrap, Material Design, Primefaces...
https://dev.to/haycuoilennao19/34-ui-libraries-for-react-vue-and-angular-525l
https://dev.to/alexmercedcoder/ultimate-2021-list-of-css-frameworks-and-component-
libraries-for-angular-react-vue-and-svelte-18p
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
State - Management in Components
Quelle: https://dev.to/kevtiq/how-to-create-a-scalable-and-maintainable-front-end-architecture-4f47
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
State Container - Redux und Co.
Moderne Zustandsverwaltung
Quelle: https://redux.js.org/tutorials/essentials/part-1-overview-concepts
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://redux.js.org/tutorials/essentials/part-1-overview-concepts
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
State-Container für Angular State-Container für React State-Container für Vue.js
NgRx

https://ngrx.io/

NGXS

https://www.ngxs.io/
Redux Tookit

https://redux-toolkit.js.org/
Recoil

https://recoiljs.org/

Akita

Jotai

MobX

React Hooks

Rematch

Zustand

...
VueX

https://vuex.vuejs.org/

Pinia

https://pinia.vuejs.org/
https://openbase.com/categories/js/best-react-state-management-libraries

https://github.com/olegrjumin/awesome-react-state-management
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
API in Components
Quelle: https://dev.to/kevtiq/how-to-create-a-scalable-and-maintainable-front-end-architecture-4f47
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
REST-API und Angular REST-API und React REST-API und Vue.js
HttpClient
https://angular.io/guide/http

XHR, Fetch

https://reactjs.org/docs/faq-ajax.html

Axios
https://axios-http.com/

React Query
https://react-query.tanstack.com/

XHR, Fetch

Axios
https://axios-http.com/

Vue Query

https://github.com/DamianOsipiuk/vue-
query
- GraphQL und Angular - - GraphQL und React - - GraphQL und Vue.js -
Apollo Angular
https://apollo-angular.com/
Apollo Client for React
https://www.apollographql.com/docs/react/
Vue Apollo
https://apollo.vuejs.org/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Routing und Modularisierung
Quelle: https://dev.to/kevtiq/how-to-create-a-scalable-and-maintainable-front-end-architecture-4f47
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Routing in Angular Routing in React Routing in Vue.js
Angular Router

https://angular.io/guide/routing-overview

Imperativ (Prozeduren) => Code
React Router
https://reactrouter.com/

Deklarativ => Tags
Vue Router
https://router.vuejs.org/

Imperativ (Prozeduren) => Code
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Was ist eigentlich ein "Modul"?
Quelle: https://dev.to/kevtiq/how-to-create-a-scalable-and-maintainable-front-end-architecture-4f47
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Modularisierung in Angular Modularisierung in React Modularisierung in Vue.js
JavaScript-Module
= Dateien mit Code
Angular-Module
= Klassen mit Metadaten
"Feature"-Module
= Ordner als Container
Lazy-Loading über Router
Angular nutzt Dependency Injection(DI)
JavaScript-Module
= Dateien mit Code
"Feature"-Module
= Ordner als Container
Lazy-Loading über React.lazy
JavaScript-Module
= Dateien mit Code
"Feature"-Module
= Ordner als Container
Lazy-Loading über Router
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Ökosystem
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Backend - Projekte
Angular, React, Vue.js als Basis für Backend-Apps
NestJS
https://nestjs.com/
Next.js

https://nextjs.org/
Nuxt
https://nuxtjs.org/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Hybrid Apps
Angular, React, Vue.js als Basis für Hybrid-Apps
Ionic
https://ionicframework.com/
Ionic
https://ionicframework.com/
Ionic
https://ionicframework.com/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Hybrid Apps
Angular, React, Vue.js als Basis für Hybrid-Apps
Ionic
https://ionicframework.com/
Ionic
https://ionicframework.com/
Quasar
https://quasar.dev/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Native Apps
Angular, React, Vue.js als Basis für Native-Apps
NativeScript
https://nativescript.org/
NativeScript
https://nativescript.org/
NativeScript
https://nativescript.org/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Native Apps
Angular, React, Vue.js als Basis für Native-Apps
Nativescript
https://nativescript.org/
React Native
https://reactnative.dev/
NativeScript
https://nativescript.org/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Mobile Apps - Empfehlung
Angular, React, Vue.js als Basis für Mobile-Apps
Ionic
https://ionicframework.com/
React Native
https://reactnative.dev/
Ionic
https://ionicframework.com/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://nx.dev/getting-started/nx-and-angular
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://nx.dev/getting-started/nx-and-react
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Lernkurve
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Zukunft
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Von einem objektorientierten
Programmierhintergrund kommend
Starker Fokus auf Verwendung von TypeScript
Betonung von Richtlinien und Struktur in Projekten
Starker Fokus auf Verwendung von JavaScript
Großes Ökosystem
Hohe Bedeutung von Flexibilität
Geringer anfänglicher Lernprozess
Schwerpunkt auf der Verwendung der neuesten,
beliebtesten Technologien
Trennung von Belangen in einer Datei
Designer müssen mit HTML-Code arbeiten
Enterprise-Anwendungen
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://svelte.dev/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://www.solidjs.com/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://qwik.builder.io/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Quelle: https://webassembly.org/
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://github.com/mbasso/awesome-wasm
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
https://www.youtube.com/playlist?list=PLj6h78yzYM2Ni0u-ONljTkv4uOutyjwq9
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Keep learning!
Vielen Dank, das war's!
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Kontakt
© HECKER CONSULTING | ☞ https://www.hco.de | info@hco.de | ☏ 0211 / 542 480 40
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.
Peter Hecker
• Informatik seit der 7. Klasse

• >30 Jahre Unternehmer +
Führungskraft in IT-, Online- und
Weiterbildungsunternehmen

• >20 Jahre Dozent + Trainer für IT-
Themen
• 1989 – 1994: ICT GmbH
• Gründer/GF, medizinische Software

• ab 1995: HECKER CONSULTING
• Gründer/GF, Coaching, Workshop, Training

• ab 1999: MARTINSFELD GmbH & Co. KG
• Gründer/GF, Online- und Digitale Lösungen

• Online-Pro
fi
le
• XING, LinkedIn, Twitter (@phecker65)
Alle
Rechte
liegen
bei
Peter
Hecker.
Vervielfältigung
ist
nicht
erlaubt.

Was darf’s denn sein: Angular, React, Vue.js – Das "beste" Frontend für Java!