SlideShare a Scribd company logo
1 of 44
© OPITZ CONSULTING 2017
© OPITZ CONSULTING 2017
Stephan Rauh
Dr. Marius Hofmeister
OPITZ CONSULTING Deutschland GmbH
Angular 5 vs. React
When to Choose Which?
© OPITZ CONSULTING 2017
Mission
Mit unserer Leidenschaft für neue Technologien
und unserem Anspruch an herausragende
Beratung sind wir bei unseren Kunden der Motor
der digitalen Transformation.
Wir entwickeln überraschend mehr
Möglichkeiten!» Seite 2
© OPITZ CONSULTING 2017 Seite 3
Setting the Stage
https://upload.wikimedia.org/wikipedia/commons/5/52/Summer_Solstice_Sunrise_over_Stonehenge_2005.jpg
Angular vs. React - When to Choose Which?
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 4
What People Say About Angular
update
hell
great
tooling
But it's
TypeScript!
opinionated
Angular is
slow
great
productivity
mediocre
productivity
complicated
dependency
injection is
broken
Angular is
fast
two-way
binding
considered
bad
dependency
hell
too
enterprisy
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 5
What People Say About React.js
fast
great
tooling
It's simple
JavaScript!
flexible
small
footprint great
productivity
mediocre
productivity
easy to
learn
I can use
any library I
want
integrates
everywhere
unidirectional
data flow
difficult to
set up
limited
editor
support
requires
TDD
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 6
Image source: https://pixabay.com/de/hier-entlang-verwirren-718660/,
https://angular.io/presskit, https://en.wikipedia.org/wiki/File:React-icon.svg
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 7
What's Going On?
 Different target audiences
 Web developers vs. enterprise developers
 Different use cases
 Interactive web pages
 Web shops
 Back-office processing
 Internet vs intranet
Image source: https://pixabay.com/de/online-speicher-gesch%C3%A4ft-kaufen-1905889/
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 8
History 101: AngularJS 1.x
 Combined ideas from Backbone, Knockout, Web Components spec
 Made MVVM popular in the browser
 Declarative programming style
 Got rid of DOM manipulations
 Added dependency injection to JavaScript
 Brought custom components
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 9
History 101: Migration to Angular 2+
 AngularJS had a couple of issues
 Painful migration to Angular 2+
 Many breaking changes of ng2
 In the beta versions!
 Frustrated developers left
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 10
Angular 5?
 Angular 2+ comes with strong improvements
 Angular 3 has been skipped because there's already version 3 of the router
 Angular 4 contains two minor breaking changes
 Angular 5 (23.10.) contains changes concerning performance and usability
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 11
History 101: React.js
 Features
 Virtual DOM
 Unidirectional data flow and transactional state (Redux)
 JSX
 Powerful toolchain
"React was transformational because it singlehandedly made MVC seem like
obsolete tech & unleashed unidirectional flow on the masses.“ – Eric Elliot
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 12
Contemporary History
 React has been re-written from Scratch (Fiber)
 Suitability for animation, layout, and gestures
 Main feature incremental rendering
 Less resources required
 Fully downward compatible
 New contender: Vue.js
 “less opinionated”
http://isfiberreadyyet.com/
© OPITZ CONSULTING 2017 Seite 13
2
Angular vs. React - When to Choose Which?
Image source: https://pixabay.com/de/%C3%A4pfel-kiwi-orangen-obst-vitamine-428075/
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 14
What About Your Needs?
React.js:
 "Just a library"
 Concentrates on the "V" of MVC
 Freedom concerning "M" and "C"
 React is all about components and
composition
 Ideal for complex user interactions
Angular:
 Full-blown framework
 Covers all of the MVVM paradigm
(or MVC, or MVW)
 Angular is all about structuring your
application
 Allows for large-scale business
applications
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 15
Framework vs. Library
React.js:
 Uses 3rd party libraries
 Can be combined straightforwardly
with libraries
 No two-way binding
 deliberate decision
Angular:
 Forms and validation
 Modules
 Shadow DOM / local CSS
 Built-in support for AJAX, HTTP,
and Observables
 Routing
 (Optional) two-way binding
© OPITZ CONSULTING 2017 Seite 16Angular vs. React - When to Choose Which?
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 17
Market Share
 No unbiased figures
available
 Educated guess
 React.js and Angular
dominate the
browser market
Image source: https://pixabay.com/de/sieger-siegertreppe-1013979/
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 18
License
React:
 Since version 16.0.0 (09/2017):
MIT License
 Before: Adapted from 3-Clause BSD,
 With patent grant voided if licensor
engages in any patent litigation with
Facebook or its subsidiaries.
Angular:
 MIT License
© OPITZ CONSULTING 2017
But it's TypeScript!
Image source: https://www.pexels.com/photo/adult-black-and-white-body-dark-271418/
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 20
TypeScript Myths
 Strong types reduce my productivity
 TDD detects more errors than strong types
 Finding type definitions for everything is painful
 Before long, everybody uses any or starts ignoring error messages
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 21
TypeScript Mythbusting
 Strong types reduce my productivity
 True. But only for small programs.
 Some teams report tremendous productivity boost
 TDD detects more errors than strong types
 Strong types allow you to omit trivial tests
 Finding type definitions for everything is painful
 True. But things have improved a lot.
 Before long, everybody uses any or starts ignoring error messages
 The Angular compiler has become very strict
 Enterprise teams have learned not to ignore error messages
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 22
Another TypeScript Myth
 React uses JavaScript.
 There's also TSX!
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 23
TypeScript Highlights
 Angular classes look clean and tidy
 Autocompletion
 Errors detected by compiler
 Optional null-safety
 Type inference
 Powerful refactorings
 Hides prototypes from you
 Easy-to-grasp semantics
TypeScript JavaScript (ES5)
class function
decorator function
private scope function
closure function
interface n/a
constructor function
method function
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 24
Core Concepts
React:
 Language: JSX or TSX
 HTML and code are deliberately put
in the same file
 Unconventional programming
paradigm
Angular:
 Language: TypeScript + HTML +
LESS (or CSS)
 HTML, CSS and code may or may
not be in the same file
 Supports both traditional and
reactive programming paradigms
 Complex lifecycle (doesn’t match
with jQuery)
© OPITZ CONSULTING 2017 Seite 25
Hot Technical Topics
 Virtual DOM vs. change detection
 Unidirectional data flow
 Components
 Local CSS (shadow DOM) (Angular)
 JSX vs. TypeScript
 Lifecycle (Angular)
 Dependency injection (Angular)
Angular vs. React - When to Choose Which?
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 26
Components
React:
 All about components
 Each component has
 Mutable state
 Immutable properties
Angular:
 All about structuring your application
 Behavior is implemented in
components
 State is managed in services
 Modules allow for lazy loading
 Plus clean architecture
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 27
Components
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 28
Components
<app-
root>
<board><history> <settings>
<field><piece>
<statistics>
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 29
Example Component - React
 (The TSX source code
doesn't compile, but it
shows the general
idea)
class ChessPiece extends React.Component {
public state : IPieceState;
defaultProps = { piece: "pawn", color: "black" };
constructor() {
this.state = {
pos: {
x: 5,
y: 6
}
};
}
public render() {
return (
<img src="{this.props.piece} {this.props.color}.png"/>
);
}
}
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 30
Example Component - React
 (The TSX source code
doesn't compile, but it
shows the general
idea)
class ChessPiece extends React.Component {
defaultProps = { piece: "pawn" };
constructor() {
this.state = { x:5, y:6 }
}
public render() {
return (
<img src="{this.props.piece}.png"/>
);
}
}
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 31
Example Component - Angular
@Component({
selector: 'app-chess-piece',
template: '<img src="{state.piece}.png"/>',
styleUrls: ['./chess-piece.component.css']
})
export class ChessPieceComponent
implements OnInit {
private state: IPieceState;
constructor(private engine: Engine) { }
ngOnInit() { }
}
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 32
Components – Data Flow (both React and Angular)
<app-
root>
<board><history> <settings>
<field><piece>
<statistics>
Legend:
"Pawn at E6
has moved"
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 33
Components – Data Flow (Angular only)
<app-
root>
<board><history> <settings>
<field><piece>
<statistics>
GameBoard-
Service
Legend:
"Change
detected"
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 34
Components – Redux (simplified picture)
Optional with Angular and React
<app-
root>
<board><history> <settings>
<field><piece>
<statistics
>
Central state
store
Legend:
"Change
detected"
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 35
Rendering
React:
 Virtual DOM
 Components initially are rendered
virtually, reified later and only when
necessary
 Separation between immutable
properties and mutable state
Angular:
 Efficient change detection strategy
 Each and every change is triggered
by a change of a component's state
 Shared state should be moved to
services
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 36
Local CSS (Shadow DOM)
 Angular encapsulates components in the shadow DOM
  CSS rules defined in a component only apply for this component
 There's also a global CSS file
 By default, React does not use the shadow DOM
 Here‘s a project for that: https://github.com/Wildhoney/ReactShadow
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 37
Dependency Injection (Angular Only)
 Central building block of Angular
 Allows both
 Decoupling and
 Exchanging services for testing purposes
 Example usecases
 Testing and mocking
 FakeHttpService instead of the standard http service
 Alternative renderer (i.e. targeting IOs natively)
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 38
Tests (Angular Only)
 Tests are first class citizens of Angular
 Angular has been built with automated tests in mind
 The Angular CLI automatically generates test stubs for each entity
 Note that the strict type checks of TypeScript make many tests superfluous
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 39
Going Native
 React Native
 NativeScript (Angular)
 Ionic (Angular)
Image source: https://pixabay.com/get/eb31b70f2af7063ed1584d05fb0938c9bd22ffd41cb1144595f9c770a7/sign-2460237_1280.png
© OPITZ CONSULTING 2017 Seite 40
When to Use Which?
Angular vs. React - When to Choose Which?
Image source: https://pixabay.com/de/richtung-weg-entscheidung-ziel-2320124/
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 41
When to Use React.js?
 Web applications with complex user interactions
 Multiple events triggering multiple view updates
 You're worried about application state
 Teams familiar with JavaScript and/or action based frameworks
 React can be added to existing apps
 Code size matters more than developer productivity
 Learning curve is reported to be high
© OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 42
When to Use Angular?
 Enterprise applications (large-scale)
 Easy for teams familiar with Java and component-based frameworks
 Angular is a framework to build your application with
 Unit and e2e tests are first class citizens of Angular applications
 You agree with the technical choices of the Angular team
 You're ready to spend some time learning
© OPITZ CONSULTING 2017 Seite 43Angular vs. React - When to Choose Which?
Any questions?
 It‘s your turn!
© OPITZ CONSULTING 2017
 überraschend mehr Möglichkeiten!
@OC_WIRE OPITZCONSULTING opitzconsultingWWW.OPITZ-CONSULTING.COM
Seite 44
Let‘s make the web a place to be!
Stephan Rauh
Leiter CC „moderne Clients und agile
Architekturen“
Stephan.Rauh@opitz-consulting.com
@beyondjava
http://www.beyondjava.net
Dr. Marius Hofmeister
Senior Consultant
marius.hofmeister@opitz-consulting.com
Angular vs. React - When to Choose Which?

More Related Content

What's hot

Microservices
MicroservicesMicroservices
MicroservicesSmartBear
 
Introduction to MERN Stack
Introduction to MERN StackIntroduction to MERN Stack
Introduction to MERN StackSurya937648
 
Asp.Net Core MVC with Entity Framework
Asp.Net Core MVC with Entity FrameworkAsp.Net Core MVC with Entity Framework
Asp.Net Core MVC with Entity FrameworkShravan A
 
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JSArno Lordkronos
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootKashif Ali Siddiqui
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation洪 鹏发
 
AngularJS for Beginners
AngularJS for BeginnersAngularJS for Beginners
AngularJS for BeginnersEdureka!
 
ReactJS presentation
ReactJS presentationReactJS presentation
ReactJS presentationThanh Tuong
 
React JS - A quick introduction tutorial
React JS - A quick introduction tutorialReact JS - A quick introduction tutorial
React JS - A quick introduction tutorialMohammed Fazuluddin
 
Microservices with Spring Boot Tutorial | Edureka
Microservices with Spring Boot Tutorial | EdurekaMicroservices with Spring Boot Tutorial | Edureka
Microservices with Spring Boot Tutorial | EdurekaEdureka!
 
Design patterns for microservice architecture
Design patterns for microservice architectureDesign patterns for microservice architecture
Design patterns for microservice architectureThe Software House
 
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxGetting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxIlesh Mistry
 
NextJS, A JavaScript Framework for building next generation SPA
NextJS, A JavaScript Framework for building next generation SPA  NextJS, A JavaScript Framework for building next generation SPA
NextJS, A JavaScript Framework for building next generation SPA Pramendra Gupta
 

What's hot (20)

Mern stack developement
Mern stack developementMern stack developement
Mern stack developement
 
Microservices
MicroservicesMicroservices
Microservices
 
Introduction to MERN Stack
Introduction to MERN StackIntroduction to MERN Stack
Introduction to MERN Stack
 
Asp.Net Core MVC with Entity Framework
Asp.Net Core MVC with Entity FrameworkAsp.Net Core MVC with Entity Framework
Asp.Net Core MVC with Entity Framework
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation
 
AngularJS for Beginners
AngularJS for BeginnersAngularJS for Beginners
AngularJS for Beginners
 
ReactJS presentation
ReactJS presentationReactJS presentation
ReactJS presentation
 
React JS - A quick introduction tutorial
React JS - A quick introduction tutorialReact JS - A quick introduction tutorial
React JS - A quick introduction tutorial
 
Microservices with Spring Boot Tutorial | Edureka
Microservices with Spring Boot Tutorial | EdurekaMicroservices with Spring Boot Tutorial | Edureka
Microservices with Spring Boot Tutorial | Edureka
 
React JS
React JSReact JS
React JS
 
Design patterns for microservice architecture
Design patterns for microservice architectureDesign patterns for microservice architecture
Design patterns for microservice architecture
 
Intro to React
Intro to ReactIntro to React
Intro to React
 
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxGetting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
 
NextJS, A JavaScript Framework for building next generation SPA
NextJS, A JavaScript Framework for building next generation SPA  NextJS, A JavaScript Framework for building next generation SPA
NextJS, A JavaScript Framework for building next generation SPA
 
.Net Core
.Net Core.Net Core
.Net Core
 

Viewers also liked

Angular Seminar [한빛미디어 리얼타임 세미나]
Angular Seminar [한빛미디어 리얼타임 세미나]Angular Seminar [한빛미디어 리얼타임 세미나]
Angular Seminar [한빛미디어 리얼타임 세미나]Woojin Joe
 
Angular Extreme Performance
Angular  Extreme PerformanceAngular  Extreme Performance
Angular Extreme PerformanceGustavo Costa
 
Building Universal Applications with Angular 2
Building Universal Applications with Angular 2Building Universal Applications with Angular 2
Building Universal Applications with Angular 2Minko Gechev
 
Getting Started with Angular 2
Getting Started with Angular 2Getting Started with Angular 2
Getting Started with Angular 2FITC
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2Knoldus Inc.
 

Viewers also liked (6)

Introduction to Angularjs
Introduction to AngularjsIntroduction to Angularjs
Introduction to Angularjs
 
Angular Seminar [한빛미디어 리얼타임 세미나]
Angular Seminar [한빛미디어 리얼타임 세미나]Angular Seminar [한빛미디어 리얼타임 세미나]
Angular Seminar [한빛미디어 리얼타임 세미나]
 
Angular Extreme Performance
Angular  Extreme PerformanceAngular  Extreme Performance
Angular Extreme Performance
 
Building Universal Applications with Angular 2
Building Universal Applications with Angular 2Building Universal Applications with Angular 2
Building Universal Applications with Angular 2
 
Getting Started with Angular 2
Getting Started with Angular 2Getting Started with Angular 2
Getting Started with Angular 2
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 

Similar to Angular vs. React

Evolution of API-driven architectures
Evolution of API-driven architecturesEvolution of API-driven architectures
Evolution of API-driven architecturesSven Bernhardt
 
React VS Angular- Which is Best for You in 2023?
 React VS Angular- Which is Best for You in 2023? React VS Angular- Which is Best for You in 2023?
React VS Angular- Which is Best for You in 2023?CMARIX TechnoLabs
 
Angular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdfAngular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdfWPWeb Infotech
 
Latest frontend development technology trends of 2018
Latest frontend development technology trends of 2018Latest frontend development technology trends of 2018
Latest frontend development technology trends of 2018Marie Weaver
 
Is React The Best Thing Since Sliced Bread?
Is React The Best Thing Since Sliced Bread?Is React The Best Thing Since Sliced Bread?
Is React The Best Thing Since Sliced Bread?Synerzip
 
Angular VS React The Battle of Best Front End Frameworks.pdf
Angular VS React The Battle of Best Front End Frameworks.pdfAngular VS React The Battle of Best Front End Frameworks.pdf
Angular VS React The Battle of Best Front End Frameworks.pdfJS Panther Pvt. Ltd.
 
React vs. angular a comprehensive guideline for choosing right front-end fr...
React vs. angular   a comprehensive guideline for choosing right front-end fr...React vs. angular   a comprehensive guideline for choosing right front-end fr...
React vs. angular a comprehensive guideline for choosing right front-end fr...Katy Slemon
 
Advantages of React over Angular
Advantages of React over AngularAdvantages of React over Angular
Advantages of React over AngularAnju21552
 
Angular vs React 2019 [UPDATED] - tecHindustan
Angular vs React 2019 [UPDATED] - tecHindustanAngular vs React 2019 [UPDATED] - tecHindustan
Angular vs React 2019 [UPDATED] - tecHindustantecHIndustan Solutions
 
Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...
Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...
Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...JPLoft Solutions
 
Reactjs vs angularjs vs vuejs a guide to select the best front end technolog...
Reactjs vs angularjs vs vuejs  a guide to select the best front end technolog...Reactjs vs angularjs vs vuejs  a guide to select the best front end technolog...
Reactjs vs angularjs vs vuejs a guide to select the best front end technolog...Sphinx Solution
 
Comparison Between React Vs Angular.pdf
Comparison Between React Vs Angular.pdfComparison Between React Vs Angular.pdf
Comparison Between React Vs Angular.pdfStephieJohn
 
React vs angular which front end framework should you choose and why
React vs angular which front end framework should you choose and whyReact vs angular which front end framework should you choose and why
React vs angular which front end framework should you choose and whyKaty Slemon
 
Javascript Framework: React JS VS Vue.js | Bosc Tech Labs
Javascript Framework: React JS VS Vue.js | Bosc Tech LabsJavascript Framework: React JS VS Vue.js | Bosc Tech Labs
Javascript Framework: React JS VS Vue.js | Bosc Tech LabsBOSC Tech Labs
 
Which technology has a better future_ AngularJS or ReactJS_.pdf
Which technology has a better future_ AngularJS or ReactJS_.pdfWhich technology has a better future_ AngularJS or ReactJS_.pdf
Which technology has a better future_ AngularJS or ReactJS_.pdfMoon Technolabs Pvt. Ltd.
 
Comparison Between React & Angular JS Frameworks
Comparison Between React & Angular JS FrameworksComparison Between React & Angular JS Frameworks
Comparison Between React & Angular JS FrameworksSNAKINDIA CONSULTANCY
 

Similar to Angular vs. React (20)

Its time to React.js
Its time to React.jsIts time to React.js
Its time to React.js
 
Evolution of API-driven architectures
Evolution of API-driven architecturesEvolution of API-driven architectures
Evolution of API-driven architectures
 
Evolution of API-driven Architectures
Evolution of API-driven ArchitecturesEvolution of API-driven Architectures
Evolution of API-driven Architectures
 
React VS Angular- Which is Best for You in 2023?
 React VS Angular- Which is Best for You in 2023? React VS Angular- Which is Best for You in 2023?
React VS Angular- Which is Best for You in 2023?
 
Angular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdfAngular vs React vs Vue – The Right Framework For You.pdf
Angular vs React vs Vue – The Right Framework For You.pdf
 
Latest frontend development technology trends of 2018
Latest frontend development technology trends of 2018Latest frontend development technology trends of 2018
Latest frontend development technology trends of 2018
 
Is React The Best Thing Since Sliced Bread?
Is React The Best Thing Since Sliced Bread?Is React The Best Thing Since Sliced Bread?
Is React The Best Thing Since Sliced Bread?
 
Angular VS React The Battle of Best Front End Frameworks.pdf
Angular VS React The Battle of Best Front End Frameworks.pdfAngular VS React The Battle of Best Front End Frameworks.pdf
Angular VS React The Battle of Best Front End Frameworks.pdf
 
React vs. angular a comprehensive guideline for choosing right front-end fr...
React vs. angular   a comprehensive guideline for choosing right front-end fr...React vs. angular   a comprehensive guideline for choosing right front-end fr...
React vs. angular a comprehensive guideline for choosing right front-end fr...
 
Advantages of React over Angular
Advantages of React over AngularAdvantages of React over Angular
Advantages of React over Angular
 
Angular Vs React Vs Vue.pptx
Angular Vs React Vs Vue.pptxAngular Vs React Vs Vue.pptx
Angular Vs React Vs Vue.pptx
 
Angular vs React 2019 [UPDATED] - tecHindustan
Angular vs React 2019 [UPDATED] - tecHindustanAngular vs React 2019 [UPDATED] - tecHindustan
Angular vs React 2019 [UPDATED] - tecHindustan
 
Next JS vs React.pptx
Next JS vs React.pptxNext JS vs React.pptx
Next JS vs React.pptx
 
Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...
Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...
Comparing AngularJS and ReactJS_ Finding the Best Framework for your Next Pro...
 
Reactjs vs angularjs vs vuejs a guide to select the best front end technolog...
Reactjs vs angularjs vs vuejs  a guide to select the best front end technolog...Reactjs vs angularjs vs vuejs  a guide to select the best front end technolog...
Reactjs vs angularjs vs vuejs a guide to select the best front end technolog...
 
Comparison Between React Vs Angular.pdf
Comparison Between React Vs Angular.pdfComparison Between React Vs Angular.pdf
Comparison Between React Vs Angular.pdf
 
React vs angular which front end framework should you choose and why
React vs angular which front end framework should you choose and whyReact vs angular which front end framework should you choose and why
React vs angular which front end framework should you choose and why
 
Javascript Framework: React JS VS Vue.js | Bosc Tech Labs
Javascript Framework: React JS VS Vue.js | Bosc Tech LabsJavascript Framework: React JS VS Vue.js | Bosc Tech Labs
Javascript Framework: React JS VS Vue.js | Bosc Tech Labs
 
Which technology has a better future_ AngularJS or ReactJS_.pdf
Which technology has a better future_ AngularJS or ReactJS_.pdfWhich technology has a better future_ AngularJS or ReactJS_.pdf
Which technology has a better future_ AngularJS or ReactJS_.pdf
 
Comparison Between React & Angular JS Frameworks
Comparison Between React & Angular JS FrameworksComparison Between React & Angular JS Frameworks
Comparison Between React & Angular JS Frameworks
 

More from OPITZ CONSULTING Deutschland

Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"OPITZ CONSULTING Deutschland
 
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der PraxisOC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der PraxisOPITZ CONSULTING Deutschland
 
OC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und CloudOC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und CloudOPITZ CONSULTING Deutschland
 
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!OPITZ CONSULTING Deutschland
 
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...OPITZ CONSULTING Deutschland
 
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...OPITZ CONSULTING Deutschland
 
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?OPITZ CONSULTING Deutschland
 
OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring OPITZ CONSULTING Deutschland
 
Effiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud NutzungEffiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud NutzungOPITZ CONSULTING Deutschland
 

More from OPITZ CONSULTING Deutschland (20)

OC|Webcast: Grundlagen der Oracle Lizenzierung
OC|Webcast: Grundlagen der Oracle LizenzierungOC|Webcast: Grundlagen der Oracle Lizenzierung
OC|Webcast: Grundlagen der Oracle Lizenzierung
 
OC|Webcast "Java heute" vom 28.09.2021
OC|Webcast "Java heute" vom 28.09.2021OC|Webcast "Java heute" vom 28.09.2021
OC|Webcast "Java heute" vom 28.09.2021
 
OC|Webcast "Java heute" vom 24.08.2021
OC|Webcast "Java heute" vom 24.08.2021OC|Webcast "Java heute" vom 24.08.2021
OC|Webcast "Java heute" vom 24.08.2021
 
OC|Webcast "Daten wirklich nutzen"
OC|Webcast "Daten wirklich nutzen"OC|Webcast "Daten wirklich nutzen"
OC|Webcast "Daten wirklich nutzen"
 
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
 
OC|Webcast "Willkommen in der Cloud!"
OC|Webcast "Willkommen in der Cloud!"OC|Webcast "Willkommen in der Cloud!"
OC|Webcast "Willkommen in der Cloud!"
 
OC|Webcast "Die neue Welt der Virtualisierung"
OC|Webcast "Die neue Welt der Virtualisierung"OC|Webcast "Die neue Welt der Virtualisierung"
OC|Webcast "Die neue Welt der Virtualisierung"
 
10 Thesen zur professionellen Softwareentwicklung
10 Thesen zur professionellen Softwareentwicklung10 Thesen zur professionellen Softwareentwicklung
10 Thesen zur professionellen Softwareentwicklung
 
OC|Webcast: Oracle Lizenzierung - Lizenznews 2021
OC|Webcast: Oracle Lizenzierung - Lizenznews 2021OC|Webcast: Oracle Lizenzierung - Lizenznews 2021
OC|Webcast: Oracle Lizenzierung - Lizenznews 2021
 
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der PraxisOC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
 
OC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und CloudOC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
 
OC|Webcast: Grundlagen der Oracle-Lizenzierung
OC|Webcast: Grundlagen der Oracle-LizenzierungOC|Webcast: Grundlagen der Oracle-Lizenzierung
OC|Webcast: Grundlagen der Oracle-Lizenzierung
 
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
 
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
 
OC|Weekly Talk The Power of DevOps…
OC|Weekly Talk  The Power of DevOps…OC|Weekly Talk  The Power of DevOps…
OC|Weekly Talk The Power of DevOps…
 
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
 
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
 
OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring
 
OC|Weekly Talk - Beratung remote
OC|Weekly Talk - Beratung remoteOC|Weekly Talk - Beratung remote
OC|Weekly Talk - Beratung remote
 
Effiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud NutzungEffiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud Nutzung
 

Recently uploaded

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Recently uploaded (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Angular vs. React

  • 1. © OPITZ CONSULTING 2017 © OPITZ CONSULTING 2017 Stephan Rauh Dr. Marius Hofmeister OPITZ CONSULTING Deutschland GmbH Angular 5 vs. React When to Choose Which?
  • 2. © OPITZ CONSULTING 2017 Mission Mit unserer Leidenschaft für neue Technologien und unserem Anspruch an herausragende Beratung sind wir bei unseren Kunden der Motor der digitalen Transformation. Wir entwickeln überraschend mehr Möglichkeiten!» Seite 2
  • 3. © OPITZ CONSULTING 2017 Seite 3 Setting the Stage https://upload.wikimedia.org/wikipedia/commons/5/52/Summer_Solstice_Sunrise_over_Stonehenge_2005.jpg Angular vs. React - When to Choose Which?
  • 4. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 4 What People Say About Angular update hell great tooling But it's TypeScript! opinionated Angular is slow great productivity mediocre productivity complicated dependency injection is broken Angular is fast two-way binding considered bad dependency hell too enterprisy
  • 5. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 5 What People Say About React.js fast great tooling It's simple JavaScript! flexible small footprint great productivity mediocre productivity easy to learn I can use any library I want integrates everywhere unidirectional data flow difficult to set up limited editor support requires TDD
  • 6. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 6 Image source: https://pixabay.com/de/hier-entlang-verwirren-718660/, https://angular.io/presskit, https://en.wikipedia.org/wiki/File:React-icon.svg
  • 7. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 7 What's Going On?  Different target audiences  Web developers vs. enterprise developers  Different use cases  Interactive web pages  Web shops  Back-office processing  Internet vs intranet Image source: https://pixabay.com/de/online-speicher-gesch%C3%A4ft-kaufen-1905889/
  • 8. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 8 History 101: AngularJS 1.x  Combined ideas from Backbone, Knockout, Web Components spec  Made MVVM popular in the browser  Declarative programming style  Got rid of DOM manipulations  Added dependency injection to JavaScript  Brought custom components
  • 9. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 9 History 101: Migration to Angular 2+  AngularJS had a couple of issues  Painful migration to Angular 2+  Many breaking changes of ng2  In the beta versions!  Frustrated developers left
  • 10. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 10 Angular 5?  Angular 2+ comes with strong improvements  Angular 3 has been skipped because there's already version 3 of the router  Angular 4 contains two minor breaking changes  Angular 5 (23.10.) contains changes concerning performance and usability
  • 11. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 11 History 101: React.js  Features  Virtual DOM  Unidirectional data flow and transactional state (Redux)  JSX  Powerful toolchain "React was transformational because it singlehandedly made MVC seem like obsolete tech & unleashed unidirectional flow on the masses.“ – Eric Elliot
  • 12. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 12 Contemporary History  React has been re-written from Scratch (Fiber)  Suitability for animation, layout, and gestures  Main feature incremental rendering  Less resources required  Fully downward compatible  New contender: Vue.js  “less opinionated” http://isfiberreadyyet.com/
  • 13. © OPITZ CONSULTING 2017 Seite 13 2 Angular vs. React - When to Choose Which? Image source: https://pixabay.com/de/%C3%A4pfel-kiwi-orangen-obst-vitamine-428075/
  • 14. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 14 What About Your Needs? React.js:  "Just a library"  Concentrates on the "V" of MVC  Freedom concerning "M" and "C"  React is all about components and composition  Ideal for complex user interactions Angular:  Full-blown framework  Covers all of the MVVM paradigm (or MVC, or MVW)  Angular is all about structuring your application  Allows for large-scale business applications
  • 15. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 15 Framework vs. Library React.js:  Uses 3rd party libraries  Can be combined straightforwardly with libraries  No two-way binding  deliberate decision Angular:  Forms and validation  Modules  Shadow DOM / local CSS  Built-in support for AJAX, HTTP, and Observables  Routing  (Optional) two-way binding
  • 16. © OPITZ CONSULTING 2017 Seite 16Angular vs. React - When to Choose Which?
  • 17. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 17 Market Share  No unbiased figures available  Educated guess  React.js and Angular dominate the browser market Image source: https://pixabay.com/de/sieger-siegertreppe-1013979/
  • 18. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 18 License React:  Since version 16.0.0 (09/2017): MIT License  Before: Adapted from 3-Clause BSD,  With patent grant voided if licensor engages in any patent litigation with Facebook or its subsidiaries. Angular:  MIT License
  • 19. © OPITZ CONSULTING 2017 But it's TypeScript! Image source: https://www.pexels.com/photo/adult-black-and-white-body-dark-271418/
  • 20. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 20 TypeScript Myths  Strong types reduce my productivity  TDD detects more errors than strong types  Finding type definitions for everything is painful  Before long, everybody uses any or starts ignoring error messages
  • 21. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 21 TypeScript Mythbusting  Strong types reduce my productivity  True. But only for small programs.  Some teams report tremendous productivity boost  TDD detects more errors than strong types  Strong types allow you to omit trivial tests  Finding type definitions for everything is painful  True. But things have improved a lot.  Before long, everybody uses any or starts ignoring error messages  The Angular compiler has become very strict  Enterprise teams have learned not to ignore error messages
  • 22. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 22 Another TypeScript Myth  React uses JavaScript.  There's also TSX!
  • 23. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 23 TypeScript Highlights  Angular classes look clean and tidy  Autocompletion  Errors detected by compiler  Optional null-safety  Type inference  Powerful refactorings  Hides prototypes from you  Easy-to-grasp semantics TypeScript JavaScript (ES5) class function decorator function private scope function closure function interface n/a constructor function method function
  • 24. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 24 Core Concepts React:  Language: JSX or TSX  HTML and code are deliberately put in the same file  Unconventional programming paradigm Angular:  Language: TypeScript + HTML + LESS (or CSS)  HTML, CSS and code may or may not be in the same file  Supports both traditional and reactive programming paradigms  Complex lifecycle (doesn’t match with jQuery)
  • 25. © OPITZ CONSULTING 2017 Seite 25 Hot Technical Topics  Virtual DOM vs. change detection  Unidirectional data flow  Components  Local CSS (shadow DOM) (Angular)  JSX vs. TypeScript  Lifecycle (Angular)  Dependency injection (Angular) Angular vs. React - When to Choose Which?
  • 26. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 26 Components React:  All about components  Each component has  Mutable state  Immutable properties Angular:  All about structuring your application  Behavior is implemented in components  State is managed in services  Modules allow for lazy loading  Plus clean architecture
  • 27. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 27 Components
  • 28. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 28 Components <app- root> <board><history> <settings> <field><piece> <statistics>
  • 29. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 29 Example Component - React  (The TSX source code doesn't compile, but it shows the general idea) class ChessPiece extends React.Component { public state : IPieceState; defaultProps = { piece: "pawn", color: "black" }; constructor() { this.state = { pos: { x: 5, y: 6 } }; } public render() { return ( <img src="{this.props.piece} {this.props.color}.png"/> ); } }
  • 30. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 30 Example Component - React  (The TSX source code doesn't compile, but it shows the general idea) class ChessPiece extends React.Component { defaultProps = { piece: "pawn" }; constructor() { this.state = { x:5, y:6 } } public render() { return ( <img src="{this.props.piece}.png"/> ); } }
  • 31. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 31 Example Component - Angular @Component({ selector: 'app-chess-piece', template: '<img src="{state.piece}.png"/>', styleUrls: ['./chess-piece.component.css'] }) export class ChessPieceComponent implements OnInit { private state: IPieceState; constructor(private engine: Engine) { } ngOnInit() { } }
  • 32. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 32 Components – Data Flow (both React and Angular) <app- root> <board><history> <settings> <field><piece> <statistics> Legend: "Pawn at E6 has moved"
  • 33. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 33 Components – Data Flow (Angular only) <app- root> <board><history> <settings> <field><piece> <statistics> GameBoard- Service Legend: "Change detected"
  • 34. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 34 Components – Redux (simplified picture) Optional with Angular and React <app- root> <board><history> <settings> <field><piece> <statistics > Central state store Legend: "Change detected"
  • 35. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 35 Rendering React:  Virtual DOM  Components initially are rendered virtually, reified later and only when necessary  Separation between immutable properties and mutable state Angular:  Efficient change detection strategy  Each and every change is triggered by a change of a component's state  Shared state should be moved to services
  • 36. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 36 Local CSS (Shadow DOM)  Angular encapsulates components in the shadow DOM   CSS rules defined in a component only apply for this component  There's also a global CSS file  By default, React does not use the shadow DOM  Here‘s a project for that: https://github.com/Wildhoney/ReactShadow
  • 37. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 37 Dependency Injection (Angular Only)  Central building block of Angular  Allows both  Decoupling and  Exchanging services for testing purposes  Example usecases  Testing and mocking  FakeHttpService instead of the standard http service  Alternative renderer (i.e. targeting IOs natively)
  • 38. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 38 Tests (Angular Only)  Tests are first class citizens of Angular  Angular has been built with automated tests in mind  The Angular CLI automatically generates test stubs for each entity  Note that the strict type checks of TypeScript make many tests superfluous
  • 39. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 39 Going Native  React Native  NativeScript (Angular)  Ionic (Angular) Image source: https://pixabay.com/get/eb31b70f2af7063ed1584d05fb0938c9bd22ffd41cb1144595f9c770a7/sign-2460237_1280.png
  • 40. © OPITZ CONSULTING 2017 Seite 40 When to Use Which? Angular vs. React - When to Choose Which? Image source: https://pixabay.com/de/richtung-weg-entscheidung-ziel-2320124/
  • 41. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 41 When to Use React.js?  Web applications with complex user interactions  Multiple events triggering multiple view updates  You're worried about application state  Teams familiar with JavaScript and/or action based frameworks  React can be added to existing apps  Code size matters more than developer productivity  Learning curve is reported to be high
  • 42. © OPITZ CONSULTING 2017 Angular vs. React - When to Choose Which? Seite 42 When to Use Angular?  Enterprise applications (large-scale)  Easy for teams familiar with Java and component-based frameworks  Angular is a framework to build your application with  Unit and e2e tests are first class citizens of Angular applications  You agree with the technical choices of the Angular team  You're ready to spend some time learning
  • 43. © OPITZ CONSULTING 2017 Seite 43Angular vs. React - When to Choose Which? Any questions?  It‘s your turn!
  • 44. © OPITZ CONSULTING 2017  überraschend mehr Möglichkeiten! @OC_WIRE OPITZCONSULTING opitzconsultingWWW.OPITZ-CONSULTING.COM Seite 44 Let‘s make the web a place to be! Stephan Rauh Leiter CC „moderne Clients und agile Architekturen“ Stephan.Rauh@opitz-consulting.com @beyondjava http://www.beyondjava.net Dr. Marius Hofmeister Senior Consultant marius.hofmeister@opitz-consulting.com Angular vs. React - When to Choose Which?

Editor's Notes

  1.  Stephan
  2. Stephan
  3.  Stephan
  4.  Stephan
  5.  Stephan
  6.  Stephan
  7.  Stephan
  8. Marius   Backbone.JS-Bibliothek mit REST-Schnittstelle, geringe Größe (MVC) Knockout.JS-Bibliothek (MVVM) Web Components waren neu -> Viele Browser unterstützen sie nicht -> Angular hat sie früh verwendet Shadow DOM: Bei älteren Browsern emuliert   AngularJS: MVVM -> Einsparung von Code Deklarativer Programmierstil:  ng-model  2-way data binding   Keine DOM-Manipulation mittels JQuery notwendig Vielleicht wichtigste Neuerung: Komponentenbasiertheit eingeführt!
  9. Marius Angular Team hat mit zahlreichen Ideen experimentiert Angular 2 von Grund auf neu geschrieben Innerhalb Alpha- und Beta-Phase von NG2: Viele Breaking Changes -> sogar mit Release Kandidaten! Seitdem Angular2 final released wurde, gab es weniger Breaking Changes  
  10. Marius Version 1 auf 2: Kein Upgrade, eher Rewrite Verbesserungen von Angular 2: In TS geschrieben, und TS empfohlen Vollständig komponentenbasiert (Keine Controller, Scopes) Komponente = Direktive mit Template Bessere Performance (Kernfunktionalität in Module gewandert) Explizite DI (Konstruktor) Mächtiges Tooling (Angular CLI-> Generierung von Komponenten, Tests, IDEs) Optional Verwendung von Redux: Ngrx/store Library für State Management Unidirektionaler Datenfluss (von React) Gut für Testbarkeit Version 2 auf 3: Angular Router hatte bereits Version 3   Version 3 auf 4: Router-Erweiterung Ausgliederung Animationen in eigenes Projekt NGIF wurde erweitert um ELSE Deklarativ dynamisch Komponenten zur Laufzeit erzeugen Upgrade auf neue Typescript-Version Neue View-Engine für kürzere Ladezeiten   Version 4 auf 5: März 2017 Angular 4 Angular 5 für Oktober 2017 angekündigt (23.10.) Bugfixes, Performance-Verbesserungen mit Fokus auf Compiler   Nutzung des Semantic Versioning für verständliche, planbare Releases Major: alle 6 Monate Minor: jeden Monat Patch: jede Woche
  11. Marius Virtueller DOM: Dom-Diffing: Nur benötigte Komponenten werden neu geladen Kein 2-Way-Binding inkludiert: Flux Architektur empfohlen Unidirektionaler Datenfluss: Vereinfachung Aufbau und Wechselwirkungen zwischen Komponenten (Callback-Funktionen) Vielleicht wichtigste Neuerung! JSX: JavaScript syntax extension: Integration von HTML in JS Toolchain (npm, webpack -> Module bundler, babel -> ES-Transpiler)
  12. Marius Version 16 Zweck: Flüssiges Darstellen von Animationen, Layout Fiber als neues “Fundament” -> Veränderungen betreffen nur Kernbereiche von React selbst (für Scheduling) Public API unverändert Inkrementelles (selteneres) Rendering -> weniger Ressourcen notwendig Verständlichere Stacktraces   Vue.js Weniger “rechthaberisch” Einfacher zu lernen als Angular MVVM  
  13. Marius Vergleich zwischen Angular und React ist Äpfel mit Birnen zu vergleichen Kaum zu vergleichen Aber, jedes Projekt muss sich entscheiden, daher tun wir das trotzdem Die Kiwis sind Vue.js 
  14. Marius React Wurde verkauft von Facebook als “V” von MVC Tatsächlich wurde MVC abgelöst durch Unidirektionalen Datenfluss und Flux Angular als Komponentenbasiertes MVC-Framework -> Jede Komponenten enthält individuelles MVC-Set Offizielle Aussage von Google: Template = View, Component= Controller, ViewModel
  15. --> Marius > Shadow DOM bietet Kapselung von DOM-Teilen und CSS in einer Web Component
  16. --> Marius React UND Angular sind lebendig und machen Spaß Werden von großen Unternehmen gehostet Werden von großen Teams weiterentwickelt Besitzen große, hilfsbereite Community Bugs werden schnell gefixed Große Toolprovider unterstützten React und Angular in IDE  
  17. --> Marius jQuery hat wesentlich größeren Marktanteil -> wenig Aktualität und greift auf anderes Konzept zurück Millionen anderer JS-Frameworks -> Vortrag ist keine Marktübersicht
  18. --> Marius BSD-Lizenz mit zusätzlicher Patentlizenz, welche den Widerruf der Lizenz bei Klagen oder bei Patentstreitigkeiten mit Facebook vorbehält
  19. --> Stephan
  20. --> Stephan some bloggers claim "TypeScript code shows always errors because of incompatibilities with existing JavaScript code" if that's true, it's normal to see red squiggly lines in your code you stop noticing the errors doesn't match my experience Typings / Definitely Typed etc. do a good job
  21. --> Stephan
  22. Stephan We show TSX code in a minute
  23. --> Stephan classes: use both prototypes and functions in JavaScript private scope: IIFE pattern (immediately invoked function expression)
  24. Marius JSX (JavaScript), JavaScript Syntax eXtension für Kompilierung nach JS (type checking etc.) TSX, Typescript Library für React-Code   LESS als Stylesheet-Sprache, um das Schreiben von CSS effizienter zu machen
  25. --> Marius
  26. Marius OFFEN: All about components Each component has mutable state immutable properties
  27. --> Stephan
  28. --> Stephan
  29. --> Stephan
  30. --> Stephan
  31. --> Stephan
  32. --> Stephan
  33. --> Stephan
  34. --> Stephan
  35. Marius Virtueller DOM Manipulation des realen DOM ist teuer, daher wird dieser simuliert -> Re-Rendering der Unterschiede
  36. Marius Shadow DOM als Teil der Web-Components (Nutzung von Google-Polyfills, wenn Browser nicht unterstützt) Lösung, um CSS-Urwald zu umgehen
  37. Marius FakeHttpService: seit Angular 5 geht es einfacher ( Interceptor). Trotzdem ein schönes Beispiel für DI.
  38. --> Marius
  39. --> Marius
  40. --> Stephan
  41. --> Stephan
  42. Stephan Angular is good for teams with Enterprise background it's hard for experience JavaScript teams