React + React Native. Based on material by Danilo Filgueira

Size: px
Start display at page:

Download "React + React Native. Based on material by Danilo Filgueira"

Transcription

1 React + React Native Based on material by Danilo Filgueira

2 Prerequisites JS and ES6 HTML and CSS NPM/YARN and NODE

3 React A Javascript library for creating reactive and composable UI components Whenever some specified data change, React components re-render their associated UI React components are chainable or composable in a tree-like fashion <Cmp1> <Cmp2> <Cmp4> </Cmp4> </Cmp2> <Cmp3> </Cmp3> </Cmp1>

4 Anatomy of a React Component State Those data whose manipulation defines the business logic of your application Props (properties) Those data provided to a component by its parent ReactiveUI The reactive UI associated with the component

5 Components as JS classes We can define React components by using an ES6 class that extends React.Component import React from react ; class MyComponent extends React.Component { constructor() { super(); // This constructor defines the state of the component render() { return(// This defines the reactive UI associated with the component) my_method() { //This is a custom method

6 State this.state holds the state of the component and must be initialized in the constructor using a JS object literal State must be changed using method this.setstate that accepts a new state this.setstate merges the current state with the given one It intersects the states and if something is in common, it changes properly the current state constructor() { super(); this.state = {notes : [] my_method() { const mynotes = /*Here you construct the notes you want to set*/ this.setstate({notes : mynotes);

7 State this.setstate is not synchronous React may batch multiple state changes to guarantee better performance this.setstate performs a shallow object comparison to set the new state: this.state = { notes : [note1, note2], filter : NONE this.setstate({notes : [note3]) { notes : [note3], filer: NONE

8 Props Named values that a parent component makes available to one or more of its children Syntax in the parent component Props are accessible in children components using: this.props.prop_name React reserves certain props for special purposes

9 Reactive UI Whenever the state of a component or its props change, the UI associated with the component should be re-rendered React maintains a virtual representation of the UI (Virtual DOM) of all the components and uses it to understand what pieces of UI need to be re-rendered These pieces of UI are those defined using the state or the props of the application <div> <h1>{this.state.title</h1> <p>{this.props.paragraph</p> </div>

10 JSX Every piece of UI should be defined properly JSX helps solve the problem An in-js HTML-like syntax to represent pieces of UI Since JSX is translated into JS method calls, it can be freely interpolated with JS and so we can define pieces of UI that depend on components state and props, using the { syntax

11 First example import React from 'react'; class App extends React.Component { render() { var mystyle = { fontsize: 100, color: '#FF0000' return ( <div> <h1 style = {mystyle>header</h1> </div> );

12 Composite components and JSX A React component can embed several subcomponents and its UI is also the UI of its child components To define the UI of a composite component, we can use JSX and the name of the child components There exist special built-in atomic components that map directly to HTML DOM elements They have the same name as their HTML counter parts and their props USUALLY map to HTML attributes HTML mapped components come with special props used for signalling DOM events like click, etc These props expect a reference to a function or method to be executed to handle the event

13 import React from 'react'; class App extends React.Component { constructor(props) { super(props); this.state = { header: "Header from state...", content: "Content from state..." render() { return ( <div> <h1>{this.state.header</h1> <h2>{this.state.content</h2> </div> ); export default App; import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.jsx'; ReactDOM.render(<App />, document.getelementbyid('app'));

14 Decorator components and JSX We may want to define a component that takes other components and decorates them or extend their functionality For example, a component (BorderCmp) that adds a border to input components We can use JSX and we can then access inside BorderCmp the input components using this.props.children

15 Example render() { const ui_fragment = <p classname= htmlclassprop >{this.state.text</p> return ( <div> <h1>{this.state.title</h1> <SubComponent aprop={4+5/> {ui_fragment <button onclick={this.handler></button> </div> ) handler(e) { console.log( Horay! );

16 Things to be careful about JS expressions can only be interpolated in JSX When we pass a reference to a function/method as a prop, it will be executed in the context of the component that receives it If we need a different behaviour <button onclick= {this.handler.bind(this)> </button> bind should be used for atomic HTML-mapped elements, as they do not retain any context

17 Again import React from react ; class MyComponent extends React.Component { constructor() { super(); //This constructor defines the state of the component render() { return(//this defines the reactive UI associated with the component) my_method(){ //This is a custom method

18 Stateless components React components that do not maintain a state but render certain UIs based on input props const MyComp = (props)=> { return ( //My reactive UI )

19 Controlled components React imposes a pattern for manipulating certain atomic components that map to certain HTML DOM elements like <input><select><textarea> etc... constructor() { super(); this.state = {value : render() { <input value={this.state.value onchange={this.changevalue.bind(this) /> changevalue(event) { this.setstate({value: event.target.value)

20 Inter-components communication <Root> <Cmp1> <Cmp2/> <Cmp3/> </Cmp1> </Root> We must use props We can pass functions or methods as props and specify in which context these functions must be executed We must use the parent component and props to implement sibling to sibling communication

21 PropTypes and DefaultProps We can set run time type checkings for props using the prop-types library We can also set default values for props classmycomponent extends React.Component {... MyComponent.propTypes = { prop1 : PropTypes.string, prop2 : PropTypes.func MyComponent.defaultProps = { prop1 : This is a default value

22 Component Lifecycle methods A React component inherits methods triggered during certain events of its lifecycle We can implement these for our own purposes componentdidmount() { //Triggered when the reactive UI has been outputted for the first time componentwillunmount() { //Triggered when the component is going to be destroyed shouldcomponentupdate(nextprops, nextstate){ //Can be implemented to describe custom state analysis for instructing react when it is necessary to update the UI

23 React Native React + atomic components that map directly to native UI elements for IOS or Android You write your business logic in JS and React, but the UI components are rendered natively on IOS or Android

24 React Native architecture Native (Java/C++/Swift) Native Bridge (Java/C++/Swift) JS VM

25 React Native A library Binds JSX to ios Cocoa Touch Android UI Custom Layout system Comprises a suite of technologies Architecture is scalable Extensible

26 React Native Components They have the same characteristics of React ones, but atomic components are different: they map to Native UI elements <View> is a generic container of other UI elements <Text> is a piece of text <Image> is an image <Button> is a button <FlatList> is a list that renders only visible elements <Switch> is a switch

27 React Native Comes with a bunch of atomic components, nevertheless They do not cover all the desidered functionality (e.g, a component for a MapView is not available) To solve this problem leverage the community! Most of the atomic components are platform agnostic, but some are not We can implement our own atomic components by leveraging React Native helpers for Java and Swift

28 Styling React Native components export default class App extends React.Component { constructor(){ super(); render() { return ( <View style={styles.container> </View>); const styles = StyleSheet.create({ container: { flex : 1, backgroundcolor: '#fff',, ); React Native offers a Stylesheet API that works in a way similar to CSS React Native adopts the flexbox specification for layouts

29 import React, { Component from 'react'; import { AppRegistry, Text, View from 'react-native'; class Blink extends Component { constructor(props) { super(props); this.state = {showtext: true; // Toggle the state every second setinterval(() => { this.setstate(previousstate => { return { showtext:!previousstate.showtext ; );, 1000); render() { let display = this.state.showtext? this.props.text : ' '; return ( <Text>{display</Text> );

30 export default class BlinkApp extends Component { render() { return ( <View> <Blink text='i love to blink' /> <Blink text='yes blinking is so great' /> <Blink text='why did they ever take this out of HTML' /> <Blink text='look at me look at me look at me' /> </View> ); // skip this line if using Create React Native AppAppRegistry.registerComponent('AwesomeProject', () => BlinkApp);

31 Networking React Native lets you do HTTP requests and WebSockets using the fetch (Promise based) and WebSocket APIs fetch(' => response.json()).then((responsejson) => { return responsejson.movies; ).catch((error) => { console.error(error); ); var ws = new WebSocket('ws://host.com/path' ); ws.onopen = () => { // connection opened ws.send('something'); // send a message ; ws.onmessage = (e) => { // a message was received console.log(e.data); ;

32 React Native APIs React Native makes available a series of APIs for using native functionalities Vibration API Keyboard API Geolocation API...

React native. State An overview. See the tutorials at

React native. State An overview. See the tutorials at See the tutorials at https://facebook.github.io/react-native/docs/tutorial React native State An overview We ll at each of these in much more detail later. 1 App To build a static app just need Props Text

More information

Frontend Frameworks Part 2. SWE 432, Fall 2017 Design and Implementation of Software for the Web

Frontend Frameworks Part 2. SWE 432, Fall 2017 Design and Implementation of Software for the Web Frontend Frameworks Part 2 SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How to make React apps interactive Handling events, state, nesting components, reconciliation, controlled

More information

React. HTML code is made up of tags. In the example below, <head> is an opening tag and </head> is the matching closing tag.

React. HTML code is made up of tags. In the example below, <head> is an opening tag and </head> is the matching closing tag. Document Object Model (DOM) HTML code is made up of tags. In the example below, is an opening tag and is the matching closing tag. hello The tags have a tree-like

More information

React. SWE 432, Fall Web Application Development

React. SWE 432, Fall Web Application Development React SWE 432, Fall 2018 Web Application Development Review: What is state? All internal component data that, when changed, should trigger UI update Stored as single JSON object this.state What isn t state?

More information

React.js. a crash course. Jake Zimmerman January 29th, 2016

React.js. a crash course. Jake Zimmerman January 29th, 2016 React.js a crash course Jake Zimmerman January 29th, 2016 Key Features of React.js Easily express user interfaces Richly express the visual elements of a design, as well as the interactions users can

More information

React Loadable: Code Splitting with Server Side Rendering

React Loadable: Code Splitting with Server Side Rendering React Loadable: Code Splitting with Server Side Rendering About me Former Senior Frontend Developer at Oppex Tech Lead at Toughbyte Ltd React github.com/northerneyes medium.com/@northerneyes twitter.com/nordfinn

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. ReactJS

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. ReactJS About the Tutorial React is a front-end library developed by Facebook. It is used for handling the view layer for web and mobile apps. ReactJS allows us to create reusable UI components. It is currently

More information

React(.js) the Domino Way High-Performance Client for Domino. Knut Herrmann

React(.js) the Domino Way High-Performance Client for Domino. Knut Herrmann React(.js) the Domino Way High-Performance Client for Domino Knut Herrmann CollabSphere 2018 Sponsors Knut Herrmann Senior Software Architect Leonso GmbH Notes Domino developer since version 2 Web application

More information

Building with React Native. Simon Ayzman Mobile Apps Bloomberg

Building with React Native. Simon Ayzman Mobile Apps Bloomberg Building with React Native Simon Ayzman Mobile Apps Developer @ Bloomberg Run-Down 1. Introductions 5. Advanced Usage 2. What is RN? 6. Bloomberg Toolset 3. Pros/Cons 7. Awesome Links! 4. Basic Principles

More information

MEAP Edition Manning Early Access Program React Native in Action Developing ios and Android Apps with JavaScript Version 13

MEAP Edition Manning Early Access Program React Native in Action Developing ios and Android Apps with JavaScript Version 13 MEAP Edition Manning Early Access Program React Native in Action Developing ios and Android Apps with JavaScript Version 13 Copyright 2017 Manning Publications For more information on this and other Manning

More information

Lesson: Web Programming(6) Omid Jafarinezhad Sharif University of Technology

Lesson: Web Programming(6) Omid Jafarinezhad Sharif University of Technology Lesson: Web Programming(6) Omid Jafarinezhad Sharif University of Technology React QUICK START QUICK START ADVANCED GUIDES React QUICK START Installation Hello World Introducing JSX Components and Props

More information

React Native. Shan-Hung Wu & DataLab CS, NTHU

React Native. Shan-Hung Wu & DataLab CS, NTHU React Native Shan-Hung Wu & DataLab CS, NTHU Outline Hello React Native How it works? Components, props, and states Styling Event handling Images and icons Data access WeatherMoodMobile NativeBase ScrollView

More information

Advanced React JS + Redux Development

Advanced React JS + Redux Development Advanced React JS + Redux Development Course code: IJ - 27 Course domain: Software Engineering Number of modules: 1 Duration of the course: 40 astr. hours / 54 study 1 hours Sofia, 2016 Copyright 2003-2016

More information

Approaches to wrapping React. Thursday 3 September 15

Approaches to wrapping React. Thursday 3 September 15 Approaches to wrapping React Om Reagent Quiescent etc. Call it when anything changes One big update method App Logic In-memory DB Advantages Doesn t touch the network i.e. fast Doesn t touch disk Disadvantages

More information

Xtern BOOTCAMP. Week 2 Day 1 May 22, 2017

Xtern BOOTCAMP. Week 2 Day 1 May 22, 2017 Xtern BOOTCAMP Week 2 Day 1 May 22, 2017 Intro to React What is React? A declarative, efficient, and flexible JavaScript library for building user interfaces. It encourages the creation of reusable UI

More information

React & Redux in Hulu. (Morgan Cheng)

React & Redux in Hulu. (Morgan Cheng) React & Redux in Hulu (Morgan Cheng) About Me @morgancheng About Hulu Challenges System Complexity Legacy code in jquery & Backbone UI non-predictable Lack of component isolation Performance Bottleneck

More information

Building Your own Widget with ArcGIS API for JavaScript

Building Your own Widget with ArcGIS API for JavaScript Building Your own Widget with ArcGIS API for JavaScript Matt Driscoll @driskull JC Franco @arfncode Agenda About Widgets Prerequisites Widget framework Theming DO IT! Tips & tricks About Widgets What?

More information

React Not Just Hype!

React Not Just Hype! React Not Just Hype! @mjackson Thriller. @ReactJSTraining reactjs-training.com rackt github.com/rackt - 14 members - 5 teams (owners, routing, redux, a11y, docs) - Not exclusive! This is not a core team.

More information

widgetjs Documentation

widgetjs Documentation widgetjs Documentation Release 1.2.3 Nicolas Vanhoren Dec 22, 2017 Contents 1 Tutorial 3 1.1 Presentation of widgetjs......................................... 3 1.2 Quickstart................................................

More information

Frontend UI Training. Whats App :

Frontend UI Training. Whats App : Frontend UI Training Whats App : + 916 667 2961 trainer.subbu@gmail.com What Includes? 1. HTML 5 2. CSS 3 3. SASS 4. JavaScript 5. ES 6/7 6. jquery 7. Bootstrap 8. AJAX / JSON 9. Angular JS 1x 10. Node

More information

Getting Started with ReactJS

Getting Started with ReactJS Getting Started with ReactJS By Juned Laliwala About this ReactJS e-book. Basic Understanding of ReactJS Concept of JSX Use of Refs and Keys Practical Demonstrations Animation in ReactJS @2016 Attune World

More information

Templates and Databinding. SWE 432, Fall 2017 Design and Implementation of Software for the Web

Templates and Databinding. SWE 432, Fall 2017 Design and Implementation of Software for the Web Templates and Databinding SWE 432, Fall 2017 Design and Implementation of Software for the Web Today What are templates? What are frontend components? How can I use these with React? 2 What s wrong with

More information

Down With JavaScript!

Down With JavaScript! Down With JavaScript! September 2018 training@instil.co Instil Software 2018 Develop Consult Train Where Things Were Better Did you know that the original 4GL s were designed to be an ideal coding environment

More information

Front End Nanodegree Syllabus

Front End Nanodegree Syllabus Front End Nanodegree Syllabus Build Stunning User Experiences Before You Start You've taken the first step toward becoming a web developer by choosing the Front End Nanodegree program. In order to succeed,

More information

Gearing Up for Development CS130(0)

Gearing Up for Development CS130(0) Gearing Up for Development CS130(0) Development Development is a coding heavy assignment! You will need to create application using React.js (a Javascript Library). This application will display a list

More information

High Performance Single Page Application with Vue.js

High Performance Single Page Application with Vue.js High Performance Single Page Application with Vue.js Premise Static HTML and simple web-pages are already a history now. The novel web applications are advanced and do a lots of functionalities. Also,

More information

Course 20480: Programming in HTML5 with JavaScript and CSS3

Course 20480: Programming in HTML5 with JavaScript and CSS3 Course 20480: Programming in HTML5 with JavaScript and CSS3 Overview About this course This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic HTML5/CSS3/JavaScript

More information

COURSE 20480B: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

COURSE 20480B: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 ABOUT THIS COURSE This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic HTML5/CSS3/JavaScript programming skills. This course is an entry point into

More information

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 Programming in HTML5 with JavaScript and CSS3 20480B; 5 days, Instructor-led Course Description This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic

More information

React Native. Animation

React Native. Animation React Native Animation Overview Goals of animation Stationary objects must overcome inertia as they start moving. Objects in motion have momentum and rarely come to a stop immediately. Animations allow

More information

Table of Contents

Table of Contents Table of Contents You are here What?! A book on forms? How does React handle forms? Why not start with a form library? Forms 101 Making the simplest form How are edits handled? Validations Providing feedback

More information

React tips. while building facebook-scale application

React tips. while building facebook-scale application React tips while building facebook-scale application ShihChi Huang Container Component Container Component Flux ReduceStore Container Component Flux ReduceStore Functional * what is Container Component

More information

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML UI Course (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) HTML: Introduction The World Wide Web (WWW) and history of HTML Hypertext and Hypertext Markup Language Why HTML Prerequisites Objective

More information

Deep Dive on How ArcGIS API for JavaScript Widgets Were Built

Deep Dive on How ArcGIS API for JavaScript Widgets Were Built Deep Dive on How ArcGIS API for JavaScript Widgets Were Built Matt Driscoll @driskull JC Franco @arfncode Agenda Prerequisites How we got here Our development lifecycle Widget development tips Tools we

More information

Future Web App Technologies

Future Web App Technologies Future Web App Technologies Mendel Rosenblum MEAN software stack Stack works but not the final say in web app technologies Angular.js Browser-side JavaScript framework HTML Templates with two-way binding

More information

Full Stack Developer with Java

Full Stack Developer with Java Full Stack Developer with Java Full Stack Developer (Java) MVC, Databases and ORMs, API Backend Frontend Fundamentals - HTML, CSS, JS Unit Testing Advanced Full Stack Developer (Java) UML, Distributed

More information

Creating Content with iad JS

Creating Content with iad JS Creating Content with iad JS Part 2 The iad JS Framework Antoine Quint iad JS Software Engineer ios Apps and Frameworks 2 Agenda Motivations and Features of iad JS Core JavaScript Enhancements Working

More information

Stencil: The Time for Vanilla Web Components has Arrived

Stencil: The Time for Vanilla Web Components has Arrived Stencil: The Time for Vanilla Web Components has Arrived Gil Fink sparxys CEO @gilfink / www.gilfink.net Typical Application Web Page Design From Design to Implementation Session List Day tabs Component

More information

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 MODULE 1: OVERVIEW OF HTML AND CSS This module provides an overview of HTML and CSS, and describes how to use Visual Studio 2012

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

Full Stack Web Developer

Full Stack Web Developer Full Stack Web Developer S.NO Technologies 1 HTML5 &CSS3 2 JavaScript, Object Oriented JavaScript& jquery 3 PHP&MYSQL Objective: Understand the importance of the web as a medium of communication. Understand

More information

Vue.js Framework. Internet Engineering. Spring Pooya Parsa Professor: Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

Vue.js Framework. Internet Engineering. Spring Pooya Parsa Professor: Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Vue.js Framework Internet Engineering Spring 2018 Pooya Parsa Professor: Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Outline Introduction to Vue.js The Vue instance Declarative

More information

This course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery.

This course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery. HTML5/CSS3/JavaScript Programming Course Summary Description This class is designed for students that have experience with basic HTML concepts that wish to learn about HTML Version 5, Cascading Style Sheets

More information

Learn Web Development CodersTrust Polska course outline. Hello CodersTrust! Unit 1. HTML Structuring the Web Prerequisites Learning pathway.

Learn Web Development CodersTrust Polska course outline. Hello CodersTrust! Unit 1. HTML Structuring the Web Prerequisites Learning pathway. Learn Web Development CodersTrust Polska course outline Hello CodersTrust! Syllabus Communication Publishing your work Course timeframe Kick off Unit 1 Getting started with the Web Installing basic software

More information

PHP WITH ANGULAR CURRICULUM. What you will Be Able to Achieve During This Course

PHP WITH ANGULAR CURRICULUM. What you will Be Able to Achieve During This Course PHP WITH ANGULAR CURRICULUM What you will Be Able to Achieve During This Course This course will enable you to build real-world, dynamic web sites. If you've built websites using plain HTML, you realize

More information

20480B: Programming in HTML5 with JavaScript and CSS3

20480B: Programming in HTML5 with JavaScript and CSS3 20480B: Programming in HTML5 with JavaScript and CSS3 Course Details Course Code: Duration: Notes: 20480B 5 days This course syllabus should be used to determine whether the course is appropriate for the

More information

6 JAVASCRIPT PROJECTS

6 JAVASCRIPT PROJECTS 6 JAVASCRIPT PROJECTS COMPLETE PROJECT TUTORIALS ii 6 JavaScript Projects 6 JavaScript Projects Copyright 2018 SitePoint Pty. Ltd. Product Manager: Simon Mackie English Editor: Ralph Mason Project Editor:

More information

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 20480 - Programming in HTML5 with JavaScript and CSS3 Duration: 5 days Course Price: $2,975 Software Assurance Eligible Course Description Course Overview This training course provides an introduction

More information

ANGULAR 2.X,4.X + TYPESRCIPT by Sindhu

ANGULAR 2.X,4.X + TYPESRCIPT by Sindhu ANGULAR 2.X,4.X + TYPESRCIPT by Sindhu GETTING STARTED WITH TYPESCRIPT Installing TypeScript Compiling the code Building a simple demo. UNDERSTANDING CLASSES Building a class Adding properties Demo of

More information

INTRODUCTION TO JAVASCRIPT

INTRODUCTION TO JAVASCRIPT INTRODUCTION TO JAVASCRIPT Overview This course is designed to accommodate website designers who have some experience in building web pages. Lessons familiarize students with the ins and outs of basic

More information

The tech behind a design system that scales

The tech behind a design system that scales The tech behind a design system that scales BrazilJS 2018 Monica Lent Lead Frontend Engineer - SumUp @monicalent Where we re going today What is a design system? What we built Our challenges & solutions

More information

Best Practices Chapter 5

Best Practices Chapter 5 Best Practices Chapter 5 Chapter 5 CHRIS HOY 12/11/2015 COMW-283 Chapter 5 The DOM and BOM The BOM stand for the Browser Object Model, it s also the client-side of the web hierarchy. It is made up of a

More information

P a g e 1. Danish Technological Institute. Scripting and Web Languages Online Course k Scripting and Web Languages

P a g e 1. Danish Technological Institute. Scripting and Web Languages   Online Course k Scripting and Web Languages P a g e 1 Online Course k72853 Scripting and Web Languages P a g e 2 Title Estimated Duration (hrs) JsRender Fundamentals 2 Advanced JsRender Features 3 JavaScript SPA: Getting Started with SPA in Visual

More information

20480B - Version: 1. Programming in HTML5 with JavaScript and CSS3

20480B - Version: 1. Programming in HTML5 with JavaScript and CSS3 20480B - Version: 1 Programming in HTML5 with JavaScript and CSS3 Programming in HTML5 with JavaScript and CSS3 20480B - Version: 1 5 days Course Description: This course provides an introduction to HTML5,

More information

fabric-docs Documentation

fabric-docs Documentation fabric-docs Documentation Release 0.0.1 Brian Garland Mar 19, 2018 Getting Started: 1 Configuring Your Environment 1 1.1 Verify your environment works..................................... 1 2 Create a

More information

Lecture 8. ReactJS 1 / 24

Lecture 8. ReactJS 1 / 24 Lecture 8 ReactJS 1 / 24 Agenda 1. JSX 2. React 3. Redux 2 / 24 JSX 3 / 24 JavaScript + HTML = JSX JSX is a language extension that allows you to write HTML directly into your JavaScript files. Behind

More information

Course 1: Microsoft Professional Orientation: Front-End Web Developer

Course 1: Microsoft Professional Orientation: Front-End Web Developer Course 1: Microsoft Professional Orientation: Front-End Web Developer This orientation course is the first course in the Web Front-End Developer, Microsoft Professional Program curriculum. The orientation

More information

Here is the design that I created in response to the user feedback.

Here is the design that I created in response to the user feedback. Mobile Creative Application Development Assignment 2 Report Design When designing my application, I used my original proposal as a rough guide as to how to arrange each element. The original idea was to

More information

#06 RPC & REST CLIENT/SERVER COMPUTING AND WEB TECHNOLOGIES

#06 RPC & REST CLIENT/SERVER COMPUTING AND WEB TECHNOLOGIES 1 Introduction 2 Remote Procedure Call (RPC) is a high-level model for #06 RPC & REST CLIENT/SERVER COMPUTING AND WEB TECHNOLOGIES client-sever communication. It provides the programmers with a familiar

More information

Building an OpenLayers 3 map viewer with React

Building an OpenLayers 3 map viewer with React FOSS4G 2015 Building an OpenLayers 3 map viewer with React @PirminKalberer Sourcepole AG, Switzerland www.sourcepole.com About Sourcepole > QGIS > > > > Core dev. & Project Steering Commitee QGIS Server,

More information

CS142 Winter 2017 Midterm Grading Solutions and Rubric

CS142 Winter 2017 Midterm Grading Solutions and Rubric CS142 Winter 2017 Midterm Grading Solutions and Rubric See http://web.stanford.edu/class/cs142/info.html#regrades for instructions on correcting grading mistakes. Problem 1 (Whitney) a) agesclass b) myrowclass

More information

Front End Nanodegree Syllabus

Front End Nanodegree Syllabus Front End Nanodegree Syllabus Build Stunning User Experiences Before You Start You've taken the first step toward becoming a web developer by choosing the Front End Nanodegree program. In order to succeed,

More information

Angular 4 Syllabus. Module 1: Introduction. Module 2: AngularJS to Angular 4. Module 3: Introduction to Typescript

Angular 4 Syllabus. Module 1: Introduction. Module 2: AngularJS to Angular 4. Module 3: Introduction to Typescript Angular 4 Syllabus Module 1: Introduction Course Objectives Course Outline What is Angular Why use Angular Module 2: AngularJS to Angular 4 What s Changed Semantic Versioning Module 3: Introduction to

More information

Front-End Web Developer Nanodegree Syllabus

Front-End Web Developer Nanodegree Syllabus Front-End Web Developer Nanodegree Syllabus Build Stunning User Experiences Before You Start You've taken the first step toward becoming a web developer by choosing the Front End Web Developer Nanodegree

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

JavaScript and XHTML. Prof. D. Krupesha, PESIT, Bangalore

JavaScript and XHTML. Prof. D. Krupesha, PESIT, Bangalore JavaScript and XHTML Prof. D. Krupesha, PESIT, Bangalore Why is JavaScript Important? It is simple and lots of scripts available in public domain and easy to use. It is used for client-side scripting.

More information

Theme System. Wisej Themes 1 OVERVIEW

Theme System. Wisej Themes 1 OVERVIEW Theme System 1 OVERVIEW Wisej theme system is quite sophisticated and goes beyond simple CSS or SASS. This document is only a short overview to get you started. The full documentation will be ready at

More information

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD Visual HTML5 1 Overview HTML5 Building apps with HTML5 Visual HTML5 Canvas SVG Scalable Vector Graphics WebGL 2D + 3D libraries 2 HTML5 HTML5 to Mobile + Cloud = Java to desktop computing: cross-platform

More information

"Charting the Course... Comprehensive Angular. Course Summary

Charting the Course... Comprehensive Angular. Course Summary Description Course Summary Angular is a powerful client-side JavaScript framework from Google that supports simple, maintainable, responsive, and modular applications. It uses modern web platform capabilities

More information

Vue.js Developer friendly, Fast and Versatile

Vue.js Developer friendly, Fast and Versatile .consulting.solutions.partnership Vue.js Developer friendly, Fast and Versatile Alexander Schwartz, Principal IT Consultant Javaland 2018 Brühl (DE) March 2018 Vue.js developer friendly, fast and versatile

More information

Microsoft Programming in HTML5 with JavaScript and CSS3

Microsoft Programming in HTML5 with JavaScript and CSS3 1800 ULEARN (853 276) www.ddls.com.au Microsoft 20480 - Programming in HTML5 with JavaScript and CSS3 Length 5 days Price $4510.00 (inc GST) Version B Overview This course provides an introduction to HTML5,

More information

React Native BUILDING NATIVE MOBILE APPS WITH JAVASCRIPT

React Native BUILDING NATIVE MOBILE APPS WITH JAVASCRIPT 2nd Edition Learning React Native BUILDING NATIVE MOBILE APPS WITH JAVASCRIPT Bonnie Eisenman SECOND EDITION Learning React Native Building Native Mobile Apps with JavaScript Bonnie Eisenman Beijing Boston

More information

תוכנית יומית לכנס התכנסות וארוחת בוקר

תוכנית יומית לכנס התכנסות וארוחת בוקר תוכנית יומית לכנס התכנסות וארוחת בוקר 08:00-09:00 הרצאה הפסקה ראשונה הרצאה ארוחת צהריים הרצאה הפסקה מתוקה -09:00-10:30-10:30-10:45-10:45-12:30-12:30-13:30-13:30-15:00-15:00-15:15 הרצאה 15:15-16:30 לפרטים

More information

Angular 5 vs. React When to Choose Which?

Angular 5 vs. React When to Choose Which? Angular 5 vs. React When to Choose Which? Stephan Rauh Dr. Marius Hofmeister OPITZ CONSULTING Deutschland GmbH OPITZ CONSULTING 2017 OPITZ CONSULTING 2017 Setting the Stage https://upload.wikimedia.org/wikipedia/commons/5/52/summer_solstice_sunrise_over_stonehenge_2005.jpg

More information

Advance Mobile& Web Application development using Angular and Native Script

Advance Mobile& Web Application development using Angular and Native Script Advance Mobile& Web Application development using Angular and Native Script Objective:- As the popularity of Node.js continues to grow each day, it is highly likely that you will use it when you are building

More information

Full Stack Web Developer

Full Stack Web Developer Full Stack Web Developer Course Contents: Introduction to Web Development HTML5 and CSS3 Introduction to HTML5 Why HTML5 Benefits Of HTML5 over HTML HTML 5 for Making Dynamic Page HTML5 for making Graphics

More information

Say No to Complexity!

Say No to Complexity! Say No to Complexity! Mark Volkmann, Object Computing, Inc. Email: mark@ociweb.com Twitter: @mark_volkmann GitHub: mvolkmann Website: http://ociweb.com/mark https://github.com/mvolkmann/react-examples

More information

FUNCTIONAL PROGRAMMING IN REACT.

FUNCTIONAL PROGRAMMING IN REACT. FUNCTIONAL PROGRAMMING IN REACT 工业聚 @Ctrip A WAY TO IMPROVE REACT SKILL Step 1: Learn some JavaScript Step 2: Learn some React Step 3: Learn some Haskell Step 4: Learn some Category Theory Step 5: Go to

More information

Visual Web Next Design Concepts. Winston Prakash Feb 12, 2008

Visual Web Next Design Concepts. Winston Prakash Feb 12, 2008 Visual Web Next Design Concepts Winston Prakash Feb 12, 2008 Some Notations Used Page - A web page being designed such as HTML, JSP, JSF, PHP etc. Page definition Language (PDL) - Language that used to

More information

JavaScript: the language of browser interactions. Claudia Hauff TI1506: Web and Database Technology

JavaScript: the language of browser interactions. Claudia Hauff TI1506: Web and Database Technology JavaScript: the language of browser interactions Claudia Hauff TI1506: Web and Database Technology ti1506-ewi@tudelft.nl Densest Web lecture of this course. Coding takes time. Be friendly with Codecademy

More information

Web Development 20480: Programming in HTML5 with JavaScript and CSS3. Upcoming Dates. Course Description. Course Outline

Web Development 20480: Programming in HTML5 with JavaScript and CSS3. Upcoming Dates. Course Description. Course Outline Web Development 20480: Programming in HTML5 with JavaScript and CSS3 Learn how to code fully functional web sites from the ground up using best practices and web standards with or without an IDE! This

More information

Native Mobile Apps in JavaScript

Native Mobile Apps in JavaScript Native Mobile Apps in JavaScript Using Exponent and React Native Charlie Cheever CS50 Seminar October 28, 2016 About Me Harvard Amazon Facebook Quora Exponent A Brief History of Mobile Development Mobile

More information

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 05 Issue: 06 June p-issn:

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 05 Issue: 06 June p-issn: Polymer JavaScript Shabnam Shaikh 1, Lavina Jadhav 2 1Student, Dept. of Institute of Computer Science, MET College, Maharashtra, India 2Professor, Dept. of Institute of Computer Science, MET College, Maharashtra,

More information

Modern and Responsive Mobile-enabled Web Applications

Modern and Responsive Mobile-enabled Web Applications Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 110 (2017) 410 415 The 12th International Conference on Future Networks and Communications (FNC-2017) Modern and Responsive

More information

JSX in Depth. Why JSX? The Transform. JSX is a JavaScript XML syntax transform recommended for use with React.

JSX in Depth. Why JSX? The Transform. JSX is a JavaScript XML syntax transform recommended for use with React. 1 of 7 QUICK START Getting Started Tutorial GUIDES Why? Displaying Data JSX in Depth JSX Gotchas Interactivity and Dynamic UIs Multiple Components Reusable Components Forms Working With the Browser More

More information

Modern SharePoint and Office 365 Development

Modern SharePoint and Office 365 Development Modern SharePoint and Office 365 Development Mastering Today s Best Practices in Web and Mobile Development Course Code Audience Format Length Course Description Student Prerequisites MSD365 Professional

More information

ReactJS and Webpack for Rails

ReactJS and Webpack for Rails Modern Web Conf 2015 ReactJS and Webpack for Rails Tse-Ching Ho 2015-05-16 @tsechingho 何澤清 紅寶 石商 人 Rubiest 鐵道 工 人 Rails worker 黃碼科技創辦 人 Goldenio founder 生物資訊 Bioinformatics 資料視覺化 Infographics Javascript

More information

Sample CS 142 Midterm Examination

Sample CS 142 Midterm Examination Sample CS 142 Midterm Examination Spring Quarter 2016 You have 1.5 hours (90 minutes) for this examination; the number of points for each question indicates roughly how many minutes you should spend on

More information

ANGULAR2 OVERVIEW. The Big Picture. Getting Started. Modules and Components. Declarative Template Syntax. Forms

ANGULAR2 OVERVIEW. The Big Picture. Getting Started. Modules and Components. Declarative Template Syntax. Forms FORMS IN ANGULAR Hello Cluj. I m Alex Lakatos, a Mozilla volunteer which helps other people volunteer. I want to talk to you today about Angular forms. What s a form you ask? A form creates a cohesive,

More information

Index. Ray Nicholus 2016 R. Nicholus, Beyond jquery, DOI /

Index. Ray Nicholus 2016 R. Nicholus, Beyond jquery, DOI / Index A addclass() method, 2 addeventlistener, 154, 156 AJAX communication, 20 asynchronous operations, 110 expected and unexpected responses, 111 HTTP, 110 web sockets, 111 AJAX requests DELETE requests,

More information

THE PRAGMATIC INTRO TO REACT. Clayton Anderson thebhwgroup.com WEB AND MOBILE APP DEVELOPMENT AUSTIN, TX

THE PRAGMATIC INTRO TO REACT. Clayton Anderson thebhwgroup.com WEB AND MOBILE APP DEVELOPMENT AUSTIN, TX THE PRAGMATIC INTRO TO REACT Clayton Anderson thebhwgroup.com WEB AND MOBILE APP DEVELOPMENT AUSTIN, TX REACT "A JavaScript library for building user interfaces" But first... HOW WE GOT HERE OR: A BRIEF

More information

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code.

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code. 20480C: Programming in HTML5 with JavaScript and CSS3 Course Code: 20480C; Duration: 5 days; Instructor-led WHAT YOU WILL LEARN This course provides an introduction to HTML5, CSS3, and JavaScript. This

More information

DATABASE SYSTEMS. Introduction to web programming. Database Systems Course, 2016

DATABASE SYSTEMS. Introduction to web programming. Database Systems Course, 2016 DATABASE SYSTEMS Introduction to web programming Database Systems Course, 2016 AGENDA FOR TODAY Client side programming HTML CSS Javascript Server side programming: PHP Installing a local web-server Basic

More information

CodeValue. C ollege. Prerequisites: Basic knowledge of web development and especially JavaScript.

CodeValue. C ollege. Prerequisites: Basic knowledge of web development and especially JavaScript. Course Syllabuses Introduction to AngularJS Length: 3 days Prerequisites: Basic knowledge of web development and especially JavaScript. Objectives: Students will learn to take advantage of AngularJS and

More information

CSC Website Design, Spring CSS Flexible Box

CSC Website Design, Spring CSS Flexible Box CSC 122 - Website Design, Spring 2017 CSS Flexible Box CSS Flexible Box Layout Module The CSS flexbox can be used to ensure that elements behave predictably when the page layout must accommodate different

More information

1 CS480W Quiz 6 Solution

1 CS480W Quiz 6 Solution 1 CS480W Quiz 6 Solution Date: Fri Dec 07 2018 Max Points: 15 Important Reminder As per the course Academic Honesty Statement, cheating of any kind will minimally result in receiving an F letter grade

More information

Getting Started with React Native

Getting Started with React Native Getting Started with React Native Learn to build modern native ios and Android applications using JavaScript and the incredible power of React Ethan Holmes Tom Bray BIRMINGHAM - MUMBAI Getting Started

More information

Interactor Tree. Edith Law & Mike Terry

Interactor Tree. Edith Law & Mike Terry Interactor Tree Edith Law & Mike Terry Today s YouTube Break https://www.youtube.com/watch?v=mqqo-iog4qw Routing Events to Widgets Say I click on the CS349 button, which produces a mouse event that is

More information

Manual Html A Href Onclick Submit Form

Manual Html A Href Onclick Submit Form Manual Html A Href Onclick Submit Form JS HTML DOM. DOM Intro DOM Methods HTML form validation can be done by a JavaScript. If a form field _input type="submit" value="submit" /form_. As shown in a previous

More information

Index LICENSED PRODUCT NOT FOR RESALE

Index LICENSED PRODUCT NOT FOR RESALE Index LICENSED PRODUCT NOT FOR RESALE A Absolute positioning, 100 102 with multi-columns, 101 Accelerometer, 263 Access data, 225 227 Adding elements, 209 211 to display, 210 Animated boxes creation using

More information