Top Banner
ANGULAR VS REACT NEWDUG SEPTEMBER 14, 2016
49

ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

May 21, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

ANGULAR VS REACTNEWDUG SEPTEMBER 14, 2016

Page 3: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

AGENDA

History

High Level Compare

Getting Started

Angular Things

React Things

Feelings

Page 4: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

START OF A CONVERSATION

Page 5: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

HISTORY

A quick history of JavaScript from my non­historian eyes

Page 6: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

1995

JavaScript lauched

Created by and at Netscape

Originally called LiveWire

Page 7: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

JUNE 1997

ECMAScript standard approved

Page 8: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

2005

Microsoft introduced in late 90s with XMLHttpRequest

Google adopts for Gmail and Maps in 2004/2005

Jesse James Garret coins Ajax in paper Ajax: A New Approach to WebApplications

Page 9: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

2005/2006

The Libraries and Frameworks are coming...

­ Cross platform widgets

­ Emerged as Rails tool for HTTP

­ The One That Changed Everything

Dojo

ProtoType

jQuery

Page 10: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

JUNE 2009

ECMAScript 5 approved Introduced JSON support

JSON is its own standard

Page 11: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

2010

Initial Release of AngularJS 1.0 by Miško Hevery and Adam Abrons at Brat Tech

Released as Open Source Hevery moved to Google, still develops and maintains

Page 12: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

2011

React Created by Jordan Walke

First deployed to drive FaceBooks's News feed

Page 13: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

MAY 2013

React at React ConfOpen Sourced

Page 14: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

SEPT 2014

AngularJS 2.0 at NG­Europe

Begin the freak out

announced

Page 15: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

JUNE 2015

ECMAScript 2015 (ES6) is launched

ECMAScript 2016 (ES7) just came out this June

Page 16: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

WHY HISTORY?

Things are changing MUCH quicker than before!

Page 17: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

ANGULARJS LEVEL SET

From the fine folks at Google

AngularJS 1.x – Google JavaScript library for development

AngularJS 2.x – Called Angular

Angular is a Framework

Angular is opinionated

Angular has code in your markup

Angular is HTML centric

Page 18: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

REACT LEVEL SET

From the fine folks at Facebook

React is a Library (View)

React is not opinionated

React has markup in your code

React is JavaScript centric

Page 19: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

NOT THE SAME

ANGULAR IS A FRAMEWORK. REACT IS A LIBRARY

Page 21: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

PROJECT SETUP

GOOD NEWS!

Angular Command Line ­

React Command Line

https://github.com/angular/angular­cli

ng new FOO

https://github.com/facebookincubator/create­react­app

create-react-app FOO

Page 22: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

WHY UPGRADE FROM ANGULARJS?

Mobile First

Standards focused

Performance (Virtual DOM!)

Web Components

Page 23: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

NOT THE SAME

ANGULAR IS A FRAMEWORK. REACT IS A LIBRARY

Page 24: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

PERIODIC TABLE APP

Angular Version

React Version

Page 25: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

COMPONENTS

React and Angular based on components

Angular Gateway to HTML components

Page 26: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

ANGULAR COMPONENT

import Component from 'angular2/core'; @Component( selector: 'foo-Div', templateUrl: 'app/foo.html', styleUrls: [ 'app/foo.css' ] ) export class Foo public message = 'Foo!';

Page 27: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

REACT COMPONENT

import React from 'react'; export default class Foo extends React.Component constructor(props) super(props); this.state = message: 'foo!' ; render() return ( <div> <p>this.state.message</p> </div> );

Page 28: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

TEMPLATES AND DATABINDING

Templates and Databinding

React HTML is in render method

JSX allows for HTML like

Page 29: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

ANGULAR DATA BINDING

Angular has one way

Angular has two way data binding

element.name

<input type="text" [(ngmodel)]="inputFieldName" id="id1">

Page 30: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

REACT DATA BINDING

React is stateless, no two way binding

This.state.inputFieldName

Page 31: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

WHY ANGULAR

AngularJS populartiy

Framework means less JavaScript fatigue

TypeScript

Less Churn

Web Component

You like JavaScript in your HTML

Page 32: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

WHY REACT

JSX

Fails Better

You LOVE JavaScript

You like HTML in your JavaScript

Page 33: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

FEELINGS

Page 35: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

Angular is a framework = bigger

React allows you to choose 566K Angular vs 139K for React+Redux

Page 36: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

React is a library, best of breed

St weet Christmas! JavaScript churn is killing me

Page 37: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

Angular has forced consistency

Page 38: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

Angular2 is a path to web components

Page 39: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

React/JSX allows you to fail early

Page 40: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

React is JavaScript

Page 41: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

Angular is more HTML, but not HTML

Angular

React

(click) = "onSelect(myOject)"

onClick = this.onSelect.bind(this,myObject)

Page 42: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

What is Google Doing!?!!?

PolymerWeb Components

DoubleClick uses Angular

YouTube Gaming, Google Patents (and SalesForce) uses Polymer

Page 43: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

JSX can trail in tooling on Microsoft stack

Page 44: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

Typescript, blessing or curse

Page 45: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

Mobile performance with Angular file size

React mix and match approach

Page 46: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

To learn React, learn JavaScript; to learn Angular, learn Angular

Angular starts quick, can get finicky soon after

Page 47: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

RECOMMENDATIONS

Wait/Do Nothing

Angular for Enterprises

Reactfor JavaScript strong organizations/devs

Page 48: ANGULAR VS REACT - JPtacek.com · 2019-06-04 · ANGULAR VS REACT NEWDUG SEPTEMBER ... Skyline Technologies @SkylineTweets. AGENDA History High Level Compare Getting Started Angular

QUESTIONS?