XÂY DỰNG ỨNG DỤNG WEB ENTERPRISE VỚI NESTJS (NODE)



GIỚI THIỆU CHƯƠNG TRÌNH

- NestJS (Node.js) là một bộ framework dành cho phát triển back-end được xây dựng dựa trên thư viện Express, cũng như tận dụng sức mạnh của TypeScript.

- NestJS tận dụng sự phổ biến và mạnh mẽ của Node.js, lấy cảm hứng từ các thư viện và những bộ frameworks phổ biến như Angular, React và Vue giúp cải thiện năng suất và tăng trình độ phát triển ứng dụng cho các lập trình viên.

- Với số lượng thư viện nhiều và phong phú kết hợp với các thư viện có sẵn của Node.js dành cho phía máy chủ, giúp cho các lập trình viên giải quyết các vấn đề chính một cách hiệu quả.

- NestJS cung cấp nền phát triển ứng dụng với kiến trúc chuyên nghiệp và hiện đại cho phép các lập trình viên tạo ra các ứng dụng có độ lớn cao với hàng chục ngàn người truy cập, dễ dàng kiểm thử, dễ dàng mở rộng, tích hợp và cũng như thuận lợi cho việc bảo trì và nâng cấp.

Hiện nay, the NestJS framework đang trở nên cực kỳ phổ biến do các tính năng vượt trội của nó:
+ Tận dụng TypeScript – một typed language mạnh mẽ.
+ Sử dụng đơn giản, dễ học và dễ làm chủ công nghệ.
+ Có sẵn công cụ giao diện dòng lệnh (CLI) mạnh mẽ giúp tăng năng suất và dễ dàng phát triển.
+ Tài liệu đầy đủ và luôn được cập nhật.
+ Dễ dàng phát triển và bảo trì, nâng cấp.
+ Mã nguồn mở.
+ Hỗ trợ hàng chục mô-đun giúp bạn dễ dàng tích hợp các công nghệ thông dụng và những khái niệm phổ biến như TypeORM, Mongoose, GraphQL, Logging, Validation, Caching, WebSocket, Queue, Task và hơn thế nữa.
+ Dễ dàng kiểm thử từng đơn vị của ứng dụng.
+ Được thiết kế cho các mô hình phát triển kiểu Monoliths và Micro-services.

MỤC TIÊU KHOÁ HỌC

+ Becoming familiar with the NestJS framework and its components.
+ Designing and developing REST APIs performing CRUD operations.
+ Authentication and Authorization for back-end applications.
+ Using TypeORM for database interaction.
+ Security best practices, password hashing and storing sensitive information.
+ Persisting data using a database.
+ Deploying back-end applications at a production-ready state to Amazon Web Services.
+ Writing clean, maintainable code in-line with industry standards.
+ Utilising the NestJS Command Line Interface (CLI).
+ Using Postman for testing back-end services.
+ Using pgAdmin as an interface tool to manage PostgreSQL databases.
+ Implement efficient logging in a back-end application.
+ Environment-based configuration management and environment variables.
+ Implementing data validation and using Pipes.
+ Guarding endpoints for authorized users using Guards.
+ Modelling entities for the persistence layer.
+ TypeScript best practices.
+ Handling asynchronous operations using async-await.
+ Using Data Transfer Objects (DTO).
+ Hands-on experience with JSON Web Tokens (JWT).
+ Unit testing NestJS applications.
+ Using GraphQL with NestJS.
+ Database persistence with MongoDB.

ĐỐI TƯỢNG THAM GIA KHOÁ HỌC

+ Các bạn có hiểu biết cơ bản về JavaScript và / hoặc NodeJS; kiến thức cơ bản về TypeScript nhưng không bắt buộc.
+ Các bạn lập trình viên JavaScript muốn đi sâu vào phát triển back-end.
+ Các bạn lập trình viên mong muốn tìm hiểu: cách phát triển các API REST hiệu quả, an toàn và tối ưu nhất; cách triển khai ứng dụng lên đám mây.
+ Các bạn lập trình viên muốn xây dựng một ứng dụng thực tế từ A-Z.

NỘI DUNG KHOÁ HỌC:

Tóm tắt:
+ Giới thiệu về NestJS
+ Cài đặt Rest API
+ Add PostgreSQL with TypeORM
+ Tìm hiểu về Dependency Injection
+ Application Configuration
+ Other Building Blocks by Example
+ Generating OpenAPI Specification
+ Testing
+ Add MongoDB with Mongoose

Chi tiết chương trình học:

+ Giới thiệu về NestJS
            Giới thiệu về NestJS                                             
            Cài đặt NestJS CLI (command-line interface)
            Tạo trường trong ứng dụng NestJS                  
            Tìm hiểu môi trường NestJS

+ Cài đặt Rest API
            Cài đặt Insomnia                   
            Chạy NestJS trong chế độ nhà phát triển
            Creating a Basic Controller 
            Use Route Parameters
            Handling Request Body / Payload
            Response Status Codes
            Handling Update and Delete Requests
            Implement Pagination with Query Parameters
            Creating a Basic Service
            Send User-Friendly Error Messages
            Encompass Business-Domain in Modules
            Introduction to Data Transfer Objects
            Validate Input Data with Data Transfer Objects
            Handling Malicious Request Data
            Auto-transform Payloads to DTO instances
         
+ Add PostgreSQL with TypeORM
            Cài đặt Docker               
            Running PostgreSQL                                
            Giới thiệu TypeORM Module
            Tạo TypeORM Entity  
            Use Repository to Access Database 
            Create a Relation between two Entities
            Retrieve Entities with their Relations
            Using Cascading Inserts and Updates
            Adding Pagination
            Use Transactions
            Adding Indexes to Entities
            Setting up Migrations

+ Tìm hiểu về Dependency Injection
            Khái niệm Dependency Injection
            Control NestJS Module Encapsulation
            Diving Into Custom Providers
            Value based Providers
            Non-class-based Provider Tokens
            Class Providers
            Factory Providers
            Leverage Async Providers
            Create a Dynamic Module
            Control Providers Scope
            Diving Deeper Into Request-Scoped Providers

+ Application Configuration                                 
            Introducing the Config Module
            Custom Environment File Paths
            Schema Validation
            Using the Config Service
            Custom Configuration Files
            Configuration Namespaces and Partial Registration
            Asynchronously Configure Dynamic Modules

+ Other Building Blocks by Example
            Giới thiệu Building Blocks
            Understanding Binding Techniques
            Catch Exceptions with Filters
            Protect Routes with Guards
            Using Metadata to Build Generic Guards or Interceptors
            Add Pointcuts with Interceptors
            Handling Timeouts with Interceptors
            Creating Custom Pipes
                Add Request Logging with Middleware
                Create Custom Param Decorators

+ Generating OpenAPI Specification
            Giới thiệu về Swagger Module
            Enabling CLI Plugin                      
            Decorating Model Properties        
            Adding Example Responses
            Using Tags to Group Resources

+ Testing                                                      
            Giới thiệu về Jest                    
            Chạy thử nghiệm với Test Suites
            Adding Unit Tests                            
            Diving Into e2e Tests
            Creating our First e2e Test
            Implementing e2e Test Logic     

+ Add MongoDB with Mongoose
            Giới thiệu
            Cài đặt Docker                                 
            Chạy môi trường MongoDB
            Giới thiệu Mongoose Module
            Tạo Mongoose Model
            Using a Mongoose Model to Access MongoDB
            Adding Pagination
            Use Transactions                                                    
            Adding Indexes to Schemas

THÔNG TIN LIÊN HỆ

Phòng tư vấn, tuyển sinh

Tòa nhà VNPT, 38 Yên Bái, Quận Hải Châu, TP Đà Nẵng
Điện thoại: 0236.3.779.779
Fax: 0236.3.779.555
Email: tuyensinh@softech.vn

Tư vấn viên, hỗ trợ trực tuyến

Ho tro tu van

NI NA

Facebook:
Zalo:
Email:
Cellphone:
0917.93.54.68
Ho tro tu van

CẨM CHÂU

Facebook:
Zalo:
Email:
Cellphone:
0969.28.99.22
Ho tro tu van

MAI TRÂM

Facebook:
Zalo:
Email:
Cellphone:
0966.14.99.22

KẾT NỐI VỚI CHÚNG TÔI