Modern JavaScript Applications

An example-driven guide that explores the world of modern web development with JavaScript

Modern JavaScript Applications

This ebook is included in a Mapt subscription
Narayan Prusty

1 customer reviews
An example-driven guide that explores the world of modern web development with JavaScript
$0.00
$20.00
$49.99
$29.99p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781785881442
Paperback330 pages

Book Description

Over the years, JavaScript has become vital to the development of a wide range of applications with different architectures. But JS moves lightning fast, and it’s easy to fall behind. Modern JavaScript Applications is designed to get you exploring the latest features of JavaScript and how they can be applied to develop high-quality applications with different architectures.

Begin by creating a single page application that builds on the innovative MVC approach using AngularJS, then move forward to develop an enterprise-level application with the microservices architecture using Node to build web services. After that, shift your focus to network programming concepts as you build a real-time web application with websockets. Learn to build responsive, declarative UIs with React and Bootstrap, and see how the performance of web applications can be enhanced using Functional Reactive Programming (FRP). Along the way, explore how the power of JavaScript can be increased multi-fold with high performance techniques.

By the end of the book, you’ll be a skilled JavaScript developer with a solid knowledge of the latest JavaScript techniques, tools, and architecture to build modern web apps.

Table of Contents

Chapter 1: Breaking into Microservices Architecture
What is monolithic architecture?
Microservices architecture to the rescue
Implementing microservices using Seneca
Summary
Chapter 2: Building a Coupon Site
Getting started
Architecture of our site
Creating the services
Creating the image upload server
Creating the monolithic core
Website walkthrough
Further improvements to the site
Summary
Chapter 3: Communication between Browsers in Real Time
Terminologies
Introduction to WebRTC
WebRTC applications using PeerJS
Miscellaneous
Summary
Chapter 4: Building a Chatroulette
Creating your own PeerServer
Creating a chatroulette
Summary
Chapter 5: Bidirectional Communication in Real Time
Introducing WebSocket
Introduction to Socket.IO
Summary
Chapter 6: Building a Live Score Site
Building the backend
Building the frontend
Testing the website
Summary
Chapter 7: Functional Reactive Programming
Introduction to reactive programming
Functional programming in a nutshell
Getting started with FRP
FRP using Bacon.js
Summary
Chapter 8: Building an Advanced Profile Search Widget
Errors in Bacon.js
Handling exceptions
Constant properties
An overview of buses
Subscribing to the end of EventStreams and properties
Unplugging subscribers
Combining and zipping
Lazy evaluation
Building the profile search widget
Summary
Chapter 9: New Features of Bootstrap 4
Downloading Bootstrap 4
Browser and device support
Understanding the rem and em CSS units
The grid system
Global margin reset
Spacing utility classes
Display headings
Inverse tables
The card component
Outline buttons
Moving from Less to Sass
Text alignment and float utility classes
Reboot
Flexbox support
JavaScript improvements
Adding Tether
The 21:9 aspect ratio class
Customizing Bootstrap 4
Glyphicons dropped
Summary
Chapter 10: Building User Interfaces Using React
Introducing React
Getting started with JSX
Digging into components
Reconciliation
Default component property values
Component life cycle methods
Mixins
Using Refs
ReactDOMServer.renderToStaticMarkup
Summary
Chapter 11: Building an RSS Reader Using React and Flux
Understanding Flux
Using Flux.js
Using MicroEvent.js
Introduction to React Router
Creating the RSS feed reader
Summary
Chapter 12: New Features of Angular 2
The Angular 2 architecture
Introducing web components
Setting up an Angular 2 project
Angular 2 fundamentals
Styling components and shadow DOM
Angular 2 change detection
Understanding view children and content children
Component lifecycle methods
Writing templates
Outputs
Understanding providers
The difference between providers and the viewProviders property
Summary
Chapter 13: Building a Search Engine Template Using AngularJS 2
Setting up the project
Configuring routes and bootstrapping the app
Generating random search results
Creating route components
Testing the template
Routing life cycle methods
Production mode versus development mode
Summary
Chapter 14: Securing and Scaling Node.js Applications
Common vulnerabilities in applications
Non-vulnerability based attacks
Using secure packages
Scaling Node.js servers
Summary

What You Will Learn

  • Learn to create single page websites
  • Gain expertise in responsive and dynamic website design
  • Enable Real-time communications between client-client and client-server/server-client
  • Create APIs for large-scale applications
  • Write complete applications using functional reactive programming

Authors

Table of Contents

Chapter 1: Breaking into Microservices Architecture
What is monolithic architecture?
Microservices architecture to the rescue
Implementing microservices using Seneca
Summary
Chapter 2: Building a Coupon Site
Getting started
Architecture of our site
Creating the services
Creating the image upload server
Creating the monolithic core
Website walkthrough
Further improvements to the site
Summary
Chapter 3: Communication between Browsers in Real Time
Terminologies
Introduction to WebRTC
WebRTC applications using PeerJS
Miscellaneous
Summary
Chapter 4: Building a Chatroulette
Creating your own PeerServer
Creating a chatroulette
Summary
Chapter 5: Bidirectional Communication in Real Time
Introducing WebSocket
Introduction to Socket.IO
Summary
Chapter 6: Building a Live Score Site
Building the backend
Building the frontend
Testing the website
Summary
Chapter 7: Functional Reactive Programming
Introduction to reactive programming
Functional programming in a nutshell
Getting started with FRP
FRP using Bacon.js
Summary
Chapter 8: Building an Advanced Profile Search Widget
Errors in Bacon.js
Handling exceptions
Constant properties
An overview of buses
Subscribing to the end of EventStreams and properties
Unplugging subscribers
Combining and zipping
Lazy evaluation
Building the profile search widget
Summary
Chapter 9: New Features of Bootstrap 4
Downloading Bootstrap 4
Browser and device support
Understanding the rem and em CSS units
The grid system
Global margin reset
Spacing utility classes
Display headings
Inverse tables
The card component
Outline buttons
Moving from Less to Sass
Text alignment and float utility classes
Reboot
Flexbox support
JavaScript improvements
Adding Tether
The 21:9 aspect ratio class
Customizing Bootstrap 4
Glyphicons dropped
Summary
Chapter 10: Building User Interfaces Using React
Introducing React
Getting started with JSX
Digging into components
Reconciliation
Default component property values
Component life cycle methods
Mixins
Using Refs
ReactDOMServer.renderToStaticMarkup
Summary
Chapter 11: Building an RSS Reader Using React and Flux
Understanding Flux
Using Flux.js
Using MicroEvent.js
Introduction to React Router
Creating the RSS feed reader
Summary
Chapter 12: New Features of Angular 2
The Angular 2 architecture
Introducing web components
Setting up an Angular 2 project
Angular 2 fundamentals
Styling components and shadow DOM
Angular 2 change detection
Understanding view children and content children
Component lifecycle methods
Writing templates
Outputs
Understanding providers
The difference between providers and the viewProviders property
Summary
Chapter 13: Building a Search Engine Template Using AngularJS 2
Setting up the project
Configuring routes and bootstrapping the app
Generating random search results
Creating route components
Testing the template
Routing life cycle methods
Production mode versus development mode
Summary
Chapter 14: Securing and Scaling Node.js Applications
Common vulnerabilities in applications
Non-vulnerability based attacks
Using secure packages
Scaling Node.js servers
Summary

Book Details

ISBN 139781785881442
Paperback330 pages
Read More
From 1 reviews

Read More Reviews