Giới thiệu
Sau một thời gian ấp ủ và chuẩn bị, TEDU xin chia sẻ ra cộng đồng một khóa học hoàn toàn mới và hoàn chỉnh về ASP.NET Core Web API kết hợp Identity Server và Angular. Khóa học này là sự đúc kết qua nhiều dự án và cũng bị Tây review code nhiều nên muốn chia sẻ kinh nghiệm lại cho các bạn những trải nghiệm của mình. Mình cũng học hỏi từ các đàn anh về cách code, cách dựng structure dự án. Hóa ra càng cao siêu lại càng đơn giản, tối giản nhất có thể không thừa thãi sẽ đạt được sự tối ưu về tốc độ.
Với khóa học này chúng ta sẽ có 2 phần chính:
1. Phần backend bao gồm Web API .NET Core mới nhất kết hợp với Identity Server làm nhiệm vụ chứng thực cho nhiều ứng dụng client khác nhau như Web Portal, ứng dụng SPA Angular, React hay Mobile App.
2. Phần ứng dụng SPA trong khóa này mình sẽ dùng framework rất phổ biến là Angular bản 8 được cải tiến về cấu trúc và cố gắng hoàn thiện chức năng. Mình cũng được học hỏi nhiều từ những developer nước ngoài về dựng structure cho nó nên sẽ có nhiều cải tiến hơn.
Ngoài ra khóa học cũng sẽ đem đến phần Unit test cho phần backend dành cho các bạn. Hy vọng với khóa học này các bạn sẽ hoàn thiện kỹ năng fullstack của mình để chiến các dự án mới với .NET Core và Angular tốt hơn.
Trong tương lai thì structure này có thể tiếp tục được dùng cho các khóa học với ReactJS hay Mobile App nên nó rất quan trọng và hy vọng sẽ làm cho mọi người hứng thú học.
Khóa học dự kiến phát hành: 15/4/2020 tại TEDU.COM.VN
Nội dung dự kiến:
- Giới thiệu tổng quan khóa học và mục tiêu cần đạt được
- Phương pháp học tập
- Nói về đề tài dự án và kế hoạch triển khai
- Liệt kê các user story cần xây dựng trong dự án
- Thiết kế chức năng hệ thống
- Thiết kế cơ sở dữ liệu hệ thống
- Xây dựng cấu trúc solution
- Tạo và làm việc với Git Repository trên Azure DevOps
- Tạo solution trên Visual Studio (https://www.youtube.com/watch?v=fjadnDlo0RA&t=4s)
- Tạo và làm việc với Markdown trong file README.md
- Tạo các class và cấu hình Entity Framework
- Cấu hình ApplicationDbContext và Fluent API
- Migrate ra cơ sở dữ liệu sử dụng Entity Framework Code first
- Tạo dữ liệu mẫu với Data Seeding
- Tạo REST API theo chuẩn - https://medium.com/eway/nguy%C3%AAn-t%E1%BA%AFc-thi%E1%BA%BFt-k%E1%BA%BF-rest-api-23add16968d7
- Tạo Unit test cho API
- Thêm Swagger cho Web API
- Validate model sử dụng Fluent Validation
- Cấu hình Identity Server (
- https://deblokt.com/2019/09/23/04-part-1-identityserver4-asp-net-core-identity/)
- https://identityserver4.readthedocs.io/en/latest/intro/big_picture.html
- Cấu hình chứng thực Identity Server cho Swagger
- Xây dựng API quản lý user
- Unit test cho API User
- Xây dựng API quản lý chức năng
- Unit test cho API function
- API Quản lý action cho function
- Xây dựng API quản lý permission
- Xây dựng API Quản lý bài đăng
- Xây dựng API quản lý bình luận và danh mục
- Xây dựng API quản lý vote, report và label
- Quản lý attachment API
- Áp dụng quyền trên API
- Chuẩn hóa API Error Response và Áp dụng Global Exception Handler
- Tích hợp cơ chế Logging với SeriLog
- Tạo ứng dụng Angular CLI
- Xây dựng cấu trúc ứng dụng Angular
- Tích hợp Angular với Identity Server4
- Hiển thị menu theo quyền
- Chức năng quản lý nhóm quyền
- Tạo chức năng quản lý user
- Tạo chức năng quản lý function
- Chức năng quản lý phân quyền (giải thích về backend API function câu join hơn)
- Áp dụng quyền trên giao diện
- Chức năng quản lý bài đăng và file đính kèm
- Quản lý bình luận bài đăng
- Fix bug Categories
- Create base component (show title)
- Comment management
- Chức năng danh sách báo xấu
- Thống kê báo cáo trên giao diện
- Thống kê tổng thành viên mới theo tháng
- Thống kê tổng bài theo tháng
- Thống kê tổng comment theo tháng
- Ghép giao diện cho phần Portal
- Đưa cấu hình Angular ra environment
- Ghép giao diện portal vào hệ thống
- Tích hợp chứng thực với Identity Server
- Tích hợp với Backend API
- Xây dựng trang chủ cho web portal
- Xây dựng danh mục bài đăng
- Xây dựng chi tiết bài đăng
- Tìm kiếm bài đăng
- Danh sách bài đăng theo tag
- Cấu trúc source code webportal
- Bình luận cho bài đăng
- Thông tin thành viên
- Fix some bugs
- Display user information
- Complete comment
- Tạo bài đăng mới
- Danh sách và chỉnh sửa bài đăng
- Chức năng vote cho bài đăng
- Báo cáo bài xấu
- Gửi báo xấu
- Xem báo xấu trong admin
- Gửi mail cho người liên quan
- Tích hợp mail với 3Party Mailgun
- Gửi mail cho chủ comment khi có reply
- Tối ưu tốc độ với Distributed Cache
- Giới thiệu các loại cache
- Cài đặt Distributed Cache
- Add pool cho DBContext để tối ưu hóa kết nối
- Các thủ thuật tối ưu tốc độ
- Thêm captcha cho hệ thống
- Tối ưu SEO cho ứng dụng
- Thêm Security headers hệ thống
- Tìm hiểu các security headers
- Thêm các Headers vào ứng dụng ASP.NET Core
- Remove các Response headers không mong muốn
- Phân trang read more cho comment
- Khi nào cần dùng phân trang read more
- Ưu nhược điểm
- Fix unit test cho Backend
- Fix các unit test lỗi
- Viết thêm các unit test thiếu
- Bài tập cho các bạn
- Tích hợp push notification cho ứng dụng
- Tích hợp với OneSignal
- Push notification
- Triển khai ứng dụng lên VPS
- Cách publish dự án .NET Core
- Publish dự án Angular
- Cấu hình kết nối
- Generate Script for database code first
Bạch Ngọc Toàn
Họ và tên: Toàn Bạch
Nghề nghiêp: Senior Fullstack .NET Developer
Kỹ năng: Có hơn 8 năm làm dự án về ASP.NET MVC, WebForm, Web Service, Web API, ASP.NET Core, Angular SQL Server, JQuery, SOLID, Design Pattern, DevOps.