Node.js

Beyond npm

Eve Porcello

eve@moonhighway.com

@eveporcello

Tahoe City, CA

 

Agenda

  • Unions and Interfaces
  • Authentication and Authorization
  • Understanding Apollo Federation and Federated Architecture
  • Graph Monitoring with Apollo Studio
  • Maintaining a Schema as a Team
  • Error Handling Best Practices
  • GraphQL Performance Enhancements (pagination, data loaders, and more)
  • Node.js Design Patterns
  • Asynchronous Node.js
  • Promises
  • Streams
  • HTTP Streams

Topics

Setup

  • Code Editor (I'll be using VSCode)
  • Make sure you have Node installed (node -v)

When you use Node, you get:

  • A standard library of tools
  • npm for other packages

Node.js Design Patterns

Creational

  • Abstract Factory

  • Builder

  • Factory Method

  • Prototype

  • Singleton

Structural

  • Adapter

  • Bridge

  • Composite

  • Decorator

  • Facade

  • Flyweight

  • Proxy

Behavioral

  • Chain of Responsibility

  • Command

  • Interpreter

  • Iterator

  • Mediator

  • Memento

  • Observer

  • State

  • Strategy

  • Template method

  • Visitor

Specify objects to create using a prototypical instance, then create new instances of this prototype

The Prototype Pattern

Ensure a class only has one instance and provide a global access point to it.

The Singleton Pattern

Define an interface for creating an object, but let subclasses decide which to instantiate.

The Factory Pattern

Separate the construction of a complex object from its representation so that the same process can create different representations.

The Builder Pattern