Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
nest | progressive node.js framework | scalable +
Slide 2
Slide 2 text
@JecelynYeen From Kuala Lumpur, Malaysia • GDE - Web technologies, Angular • Software Architect @ Randstad Organizer:
Slide 3
Slide 3 text
• node is good, but… • nest is here to… • nest core concepts - live coding +
Slide 4
Slide 4 text
Story of building LEGO house
Slide 5
Slide 5 text
simple, intuitive, easy to start
Slide 6
Slide 6 text
structure, details, layout
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
- Design & Plan - Modular - Ecosystem
Slide 9
Slide 9 text
Software Development with
Slide 10
Slide 10 text
JavaScript runtime that built on top of Google Chrome’s V8 engine.
Slide 11
Slide 11 text
is simple… - Setup time: 1 minute - Code: 2 lines
Slide 12
Slide 12 text
const app = require('express')(); app.listen(3000);
Slide 13
Slide 13 text
const app = require('express')(); app.get('/', (req, res) => res.send('hello, simple house!’)); app.listen(3000);
Slide 14
Slide 14 text
Why ? Language Reusability Productivity Community
Slide 15
Slide 15 text
Simplicity Wait, what is the definition of simple?
Slide 16
Slide 16 text
is simple up to a certain point When build medium - large applications, the definition of simple change.
Slide 17
Slide 17 text
Application Issues (Medium to Large) Lack of common architecture Fragile execution Problematic growth Structure Robustness Scalability
Slide 18
Slide 18 text
“We build our computer (systems) the way we build our cities. Over time, without a plan, on top of ruins.” - Ellen Ullman
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
Why ? Application Architecture Dependency Injection Middleware Structure Platform Agnostic
Slide 21
Slide 21 text
$ npm install -g @nestjs/cli $ nest new lego-house CREATE /lego-house/.prettierrc (51 bytes) CREATE /lego-house/README.md (339 bytes) CREATE /lego-house/nodemon.json (147 bytes) CREATE /lego-house/package.json (1633 bytes) CREATE /lego-house/src/app.controller.spec.ts (639 bytes) CREATE /lego-house/src/app.controller.ts (266 bytes) CREATE /lego-house/src/app.module.ts (250 bytes) CREATE /lego-house/src/app.service.ts (138 bytes) CREATE /lego-house/src/main.hmr.ts (329 bytes) CREATE /lego-house/src/main.ts (208 bytes) CREATE /lego-house/test/app.e2e-spec.ts (593 bytes) CREATE /lego-house/test/jest-e2e.json (154 bytes) CREATE /lego-house/tsconfig.json (477 bytes) CREATE /lego-house/tslint.json (895 bytes) CREATE /lego-house/webpack.config.js (695 bytes) Naming
Slide 22
Slide 22 text
lego-house npm start
Slide 23
Slide 23 text
What’s (the good stuffs) in the project? Typescript Jest Nest
Slide 24
Slide 24 text
Core concepts Controllers Providers Modules Middleware Exception filters Pipes Guards Interceptors https://docs.nestjs.com/first-steps Controllers Providers Modules Middleware
Slide 25
Slide 25 text
Let’s code!
Slide 26
Slide 26 text
Platform Agnostic GraphQL Microservices Web Sockets Building apps with several transport layers & contexts
Slide 27
Slide 27 text
is Low entry threshold Fully featured Open source Compatibility
Slide 28
Slide 28 text
“It’s never on how difficult is to write bad code, it’s on how easy is to write good code.”
Slide 29
Slide 29 text
https://speakerdeck.com/chybie/progressive-nest +
Slide 30
Slide 30 text
References: @kammysliwiec - https://speakerdeck.com/kamilmysliwiec/rethinking- enterprise-architectures-with-node-dot-js @Rafael_Casuso - https://www.slideshare.net/RafaelCasusoRomate/ solid-nodejs-with-typescript-jest-nestjs