Node ts1
Upcoming SlideShare
Loading in...5

Node ts1






Total Views
Views on SlideShare
Embed Views



12 Embeds 290 236 19 15
http://summary 5 5 3 2 1 1 HTTP 1 1 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Node ts1 Node ts1 Presentation Transcript

  • Get Your Node.js Under Control with TypeScript Yaniv Rodenski Senior Architect Level: Intermediate - Advanced
  • About me: • Senior Architect – Sela Group • Windows Azure MVP • Coauthor of Developing Windows Azure and Web Services (MOC 20487) • Developing software professionally since 1997
  • About 1997:
  • About 1997: Script-based server side Shared hosting environment Browser wars New HTML standard that will “Change the World” This guy was the PM of Israel
  • Agenda: • Introduction to Node.js • Introduction to TypeScript • Getting Node.js under control
  • Back to the future – Node.js • A JavaScript runtime that is designed for asynchronous IO operations • Very lightweight and fast • Used by a growing number of companies:
  • The Node.js ecosystem • Web frameworks – Express.js – • Database support – MongoDB – SQL Server • Hosting and Cloud environments – IIS, Azure – Forever, PM2
  • Demo Hello Node.js
  • Wait! JavaScript on the server side? • JavaScript is considered a second-class language: • "JavaScript is Assembly Language for the Web“ - Erik Meijer • “You can write large programs in JavaScript. You just can’t maintain them.” - Anders Hejlsberg
  • Hmmm
  • JavaScript benefits • But JavaScript is a powerful language: • Functional • Object Oriented • Dynamic • Great runtimes • Huge community • Tools
  • Demo Fun with dynamic typing
  • So what is TypeScript? • TypeScript is one of many new JavaScript front ends: – DART – CoffeeScript – ClojureScript • A JavaScript superset • Introduces static typing for JavaScript • Some ECMAScript 6 features
  • Key Features: Support standard JavaScript code Provides static typing Encapsulatio n through classes and modules Support for constructors, properties and functions Interfaces and enums support Lambda support => Intellisense and syntax checking
  • Demo Getting TypeScript
  • Demo Fun with static typing
  • How good is the TypeScript output?
  • Demo TypeScript and Node.js
  • Synchronous server operations Client DBServer Client
  • Asynchronous server operations Client DBServer Client
  • Express • ExpressJS is a web application framework inspired by Sinatra • Minimal and flexible • Provide a quasi-MVC server side development
  • Demo Doing cool things with Express
  • Summary • Node.js is a powerful and lightweight out- of-browser JavaScript environment • JavaScript is a powerful language by itself • TypeScript provides optional static typing and cleaner syntax and tools, which can be handy while developing large applications and exposing APIs
  • Resources • Node.js: • TypeScript: • Slides and Demos: • Definitely Typed: yped • Twitter: @YRodenski