Skip to content

Latest commit

 

History

History
122 lines (117 loc) · 3.97 KB

lessonplan.md

File metadata and controls

122 lines (117 loc) · 3.97 KB

Node Bootcamp Lesson Plan

  1. Hour 1: Introduction to Node.JS

    • "Hello World" from Azure
      • How to set up an Azure account
      • How to configure Cloud9 to deploy to Azure
      • Deploy a "Hello World!"
    • What is Node and how does it work?
    • The Node Event Loop
    • JavaScript and Node
    • JavaScript primer
      • Objects and variables
      • The JavaScript typing system
      • Functions
      • JavaScript event model and callbacks
      • Closures and passing arguments
      • Node.JS patterns for functions
    • Creating Node projects
      • Hello World
      • What a Node project looks like in the filesystem
    • Node modules
      • Introduction to modules
      • Writing your own module
      • Using Node Package Manager (npm)
      • Package.json
  2. Hour 2: Node and Web Applications

    • HTTP and Node
      • Ports and process.env.PORT
    • Responding to requests
      • Response object
      • Content types
    • Working with the filesystem
      • Reading files
      • Sending files in response objects
      • Caching
      • File watchers
    • A Modern Application Framework
      • Recap on previous lessons
      • Requirements for modern applications
      • Example of a modern app
      • Node.js enables concurrency
    • Socket.io: A Primer
      • Why use Socket.io?
      • Creating a connection between client and server
      • Sending data to the client
      • Example application
  3. Hour 3: Building Real Web Applications with Node

    • Saving Files
      • Overview of Windows Azure Blob Storage
      • Saving files to Blob Storage
      • Getting files from Blob Storage
    • Working with a Database
      • Overview of Windows Azure Table Storage
      • Using Azure Table Storage in Node.JS
        • Saving records
        • Looking up a specific key
        • Queries
        • Updating records
    • Working with Cookies
      • What are cookies?
      • Setting cookie values
      • Getting cookie values
      • Deleting cookies
  4. Optional: Socket.IO Breakout Session

    • What is Socket.IO?
    • Introduction to WebSockets and Server-push
    • Socket.IO scenarios
    • Socket.IO overview
      • Server-side "Hello World"
      • Client-side "Hello World"
    • Socket.IO 101
      • Opening anc closing connections
      • Broadcasting (to everyone)
      • Broadcasting to groups
  5. Optional: Express Breakout Session

    • What is Express?
    • Introduction to MVC
    • Connect Middleware
    • Getting Started with Express
      • Installing Express
      • Scaffolding Express applications
      • Express project structure
    • Routing
      • Introduction to routes
      • Handling HTTP verbs
      • Writing route handlers
      • Passing route variables
      • Creating route modules
    • Creating Views
      • Introduction to Jade
      • Basic rules
      • Working with variables
      • Working with conditionals
      • Iterating over collections
      • Creating a layout
      • Creating a partial
      • Creating a view
      • Referencing a view from inside a route handler
    • Working with the Response object
      • Setting response headers
      • Passing local variables to views
      • Passing objects back to views
      • Creating Redirects
      • Sending downloadable files
    • Working with the Request object
      • Parsing incoming arguments with Request.Param
      • Working with sessions
      • Working with the Request.Flash object
    • Express Extras
      • Dynamic view helpers
      • App.param interceptors
      • Catch-all routes
    • Creating real data models with Azure Table Storage
      • How table storage works
      • How to install the Azure npm module
      • Connecting to your table storage account
      • Writing a real table storage model
      • Integrating your model with route handlers in Express