SlideShare a Scribd company logo
Giới thiệu về .Net core 2.0
và những cải tiến đột phá
của .Net core
Tác giả: Nguyễn Văn Sỹ
Nội dung
• Giới thiệu bản thân
• .NET Architectural Components
• .NET Standard 2.0
• .NET Core 2.0
• ASP.NET Core 2.0
• Tại sao lại lựa chọn ASP.NET core 2.0
• Kiến trúc ASP.NET Core 2.0
• ASP.NET Core 2.0 những thay đổi đột phá
• ASP.NET và ASP.NET Core 2.0
• Thảo luận
Giới thiệu bản thân
• 2008-2012: Học tập tại khoa Công nghệ thông tin - Viện
Đại Học Mở Hà Nội
• 2012: Lập trình viên tại Fast Software
• 2013: Lập trình viên tại Tập đoàn Bkav
• 2015: Lập trình viên tại Essintech – (Startup)
• 2017 : Senior – Developer tại SETA
• 2018 : Senior – Developer tại NashTech Global
. NET Architectural Components
• Một ứng dụng .Net được phát triển và thực thi sử dụng một
hoặc nhiều “implementations of .NET”
• Implementations of .NET bao gồm .Net Framework, .Net Core và
Mono. Và 1 API chung cho tất cả là .NET Standard.
.NET Standard 2.0
• Là đặc tả kỹ thuật chứa các API cho tất cả các nền tảng .Net
• Là sự thống nhất của các nền tảng trong hệ sinh thái .Net, giúp
ngăn cản tình trạng phân mảnh trong tương lai
.NET Standard 2.0
• Nhiều hơn 20k API so với .Net standard 1.x
• Tương thích với khoảng 70% các package trên Nuget
.Net Core 2.0
• Miễn phí
• Đa nền tảng (Cross-platform) hỗ trợ windown, macOS và Linux
• Mã nguồn mở (open source)
• Nền tảng phát triển cho việc xây dựng các loại ứng dụng
 Web
 Mobile
 Desktop
 Gaming
.Net Core 2.0
 Machine Learning & AI
 Internet of Things
ASP.NET Core 2.0
• Đa nền tảng
• Hiệu năng cao
• Framework mã nguồn mở cho việc xây dựn các ứng dụng chạy
được trên cloud, được kết nối qua internet
• Với ASP.NET Core có thể làm
• Xây dựng các ứng dụng web và services, ứng dụng IoT và mobile
• Sử dụng các công cụ phát triển trên Windown, masOS, Linux
• Deploy trên cloud hoặc môi trường server của doanh nghiệp
• Chạy trên .Net Core hoặc .Net Framwork
ASP.NET Core 2.0
Tại sao lại lựa chọn ASP.NET core 2.0
• Có thể host trên IIS hoặc self-host trong process
• Thay đổi kiến trúc giúp nó nhẹ nhàng và mô đun hóa
• HTTP request được tối ưu nhẹ hơn
• Chuyển các thực thể, thành phần, module như những
NuGet packages
• Tích hợp các framework phía client như React, Angular
• Xây dựng sẵn cơ chế dependency injection(DI)
• Thời gian phát triển nhanh chóng
Tại sao lại lựa chọn ASP.NET core 2.0
• Deploy trên các nền tảng Windows, macOS, Linux
• Công cụ phát triển đều có trên đa nền tảng
• Visual studio code
• Atom
• Brackets
• Sublime
Tại sao lại lựa chọn ASP.NET core 2.0
• ASP.NET Core MVC (Linux) có thể xử lý gần 1.000.000
request/s
• Mã nguồn mở hoàn toàn, và cộng đồng phát triển lớn
Kiến trúc ASP.NET Core 2.0
Kestrel
• Là một web-server đa nền tảng được xây dựng cho ASP.NET
Core dựa trên libuv – một thư viện xử lý I/O async đa nền
tảng
• Là web-server mặc định khi dùng ASP.NET Core template
• Tốc độ rất nhanh
• Không có đầy đủ tính năng của một web server
• Sử dụng sau một web server đầy đủ như IIS / Nginx / Apach
HTTP.sys
• Là một web server cho ASP.NET Core, chỉ chạy duy nhất trên
window.
• Là một thay thế cho Kestrel và có một vài feature mà Kestrel
không cung cấp
• HTTP.sys được sử dụng trong trường hợp để lộ máy chủ lên
internet mà không sử dụng IIS
– HTTP.sys không thể sử dụng chung với IIS hoặc IIS Express.
Dependency injection(DI)
• Là một kĩ thuật nhằm loại bỏ sự liên kết lẫn nhau giữa
các object và các object dùng trong nó, loại bỏ các phụ
thuộc
• ASP.NET Core được thiết kế từ ban đầu để dùng
dependency injection
• ASP.NET Core đã tích hợp sẵn Dependency injection ở sâu
bên trong mà không cần dùng các thư viện hỗ trợ khác như
Autofact, Unity, Ninject ….
ASP.NET Core 2.0 những thay đổi đột phá
• Performance
– Tốc độ .NET core 2.0 nhanh hơn khoảng 20% so với
phiên bản 1.0
• NET Standard 2.0 mở rộng thêm các API và khả năng sử
dụng đầy đủ thư viện.
– Đã hỗ trợ đến 32.000 API. Giúp cho việc nâng cấp code
có sẵn từ phiên bản .NET cũ mà không cần phải thay đổi
nhiều code.
• Hỗ trợ ngôn ngữ(Language Support)
– .NET core 2.0 hỗ trợ C#, F# và Visual Basic.
• Minimum Code
ASP.NET Core 2.0 những thay đổi đột phá
ASP.NET Core 2.0 những thay đổi đột phá
• SPA Template
– Cung cấp template mới cho Angular 4, React.js, và Knockout.js
• Một Framework duy nhất
– Microsoft đã đưa tất cả các framework vào một framework
duy nhất, sát nhấp MVC và Web API
• ASP.NET Core Razor Pages
– ASP.NET đã hỗ trợ cú pháp razor trên các page. Có thể
tạo ra một razor view mà không cần tạo một controller
ASP.NET và ASP.NET Core 2.0
• ASP.NET Core không dựa trên System.Web.dll mà dựa trên
một list các gói thư viện trên NuGet
• Security chặt chẽ hơn
• Giảm chi phí bảo trì
• Gia tăng hiệu năng
• Bắt đầu từ file Program.cs phương thức Main và Startup class
• Không còn file Global.asax
• Không yêu cầu Web.config
ASP.NET và ASP.NET Core 2.0
• Sử dụng ASP.NET Core khi :
– Ứng dụng chạy trên đa nền tảng (Cross-Platform)
– Cần sử dụng microservices cho ứng dụng
– Cần sử dụng Docker containers.
– Cần hệ thống hiệu suất mở rộng cao và khả năng mở rộng
– Cần các phiên bản side-by-side .NET versions cho mỗi ứng dụng.
• Sử dung ASP.NET khi :
– Ứng dụng đang sử dụng .Net framework (đề xuất mở rộng thay vì
chuyển)
– Ứng dụng đang sử dụng các thư viện mà .net core ko support
– Ứng dụng sử dụng các .NET technologies mà chưa có sẵn trên .net core
– Ứng dụng sử dụng nền tảng không hỗ trợ .NET Core.

More Related Content

PPTX
Giới thiệu ASP.NET Core 2.0
PPTX
Monitor và tối ưu sql server
PPTX
Nodejs Introduction
PPTX
Cloudsolutionday 2016: How to build a "zero-downtime" web application
PPTX
Tổng quan ASP.NET CORE - NIVIKI.COM
PDF
Lập trình web asp.net MVC
PDF
Asp.net 3.5 _1
PDF
Asp net
Giới thiệu ASP.NET Core 2.0
Monitor và tối ưu sql server
Nodejs Introduction
Cloudsolutionday 2016: How to build a "zero-downtime" web application
Tổng quan ASP.NET CORE - NIVIKI.COM
Lập trình web asp.net MVC
Asp.net 3.5 _1
Asp net

Similar to giới thiệu về Asp.net core 2.0 (20)

PDF
Tu hoc asp
PDF
Aspnet 3.5_03
PDF
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
PDF
Tu hoc microsoft asp.net
PDF
Cac bai tap .net
PPTX
Bai44-48.pptx
PDF
Cac giai phap lap trinh c# final
PPT
Introduction Vs2008 Dot Net35
PDF
Asp control
PPT
Chuong 1
PPT
Mau slide
PDF
Giáo trình asp.net với c sharp
PDF
01 chuong01tongquanveasp netmvc5
DOCX
5.spring.net
PDF
C1-Tong-quan-.NET-C.pdf
PDF
Lập trình c# cơ bản full
PDF
Cac giai phap_lap_trinh_c___final_
PDF
Cac giai phap_lap_trinh_c___final_
PDF
Các giải pháp lập trình c#
PDF
đồ áN thiết kế web tuyển dụng sử dụng asp.net
Tu hoc asp
Aspnet 3.5_03
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Tu hoc microsoft asp.net
Cac bai tap .net
Bai44-48.pptx
Cac giai phap lap trinh c# final
Introduction Vs2008 Dot Net35
Asp control
Chuong 1
Mau slide
Giáo trình asp.net với c sharp
01 chuong01tongquanveasp netmvc5
5.spring.net
C1-Tong-quan-.NET-C.pdf
Lập trình c# cơ bản full
Cac giai phap_lap_trinh_c___final_
Cac giai phap_lap_trinh_c___final_
Các giải pháp lập trình c#
đồ áN thiết kế web tuyển dụng sử dụng asp.net
Ad

giới thiệu về Asp.net core 2.0

  • 1. Giới thiệu về .Net core 2.0 và những cải tiến đột phá của .Net core Tác giả: Nguyễn Văn Sỹ
  • 2. Nội dung • Giới thiệu bản thân • .NET Architectural Components • .NET Standard 2.0 • .NET Core 2.0 • ASP.NET Core 2.0 • Tại sao lại lựa chọn ASP.NET core 2.0 • Kiến trúc ASP.NET Core 2.0 • ASP.NET Core 2.0 những thay đổi đột phá • ASP.NET và ASP.NET Core 2.0 • Thảo luận
  • 3. Giới thiệu bản thân • 2008-2012: Học tập tại khoa Công nghệ thông tin - Viện Đại Học Mở Hà Nội • 2012: Lập trình viên tại Fast Software • 2013: Lập trình viên tại Tập đoàn Bkav • 2015: Lập trình viên tại Essintech – (Startup) • 2017 : Senior – Developer tại SETA • 2018 : Senior – Developer tại NashTech Global
  • 4. . NET Architectural Components • Một ứng dụng .Net được phát triển và thực thi sử dụng một hoặc nhiều “implementations of .NET” • Implementations of .NET bao gồm .Net Framework, .Net Core và Mono. Và 1 API chung cho tất cả là .NET Standard.
  • 5. .NET Standard 2.0 • Là đặc tả kỹ thuật chứa các API cho tất cả các nền tảng .Net • Là sự thống nhất của các nền tảng trong hệ sinh thái .Net, giúp ngăn cản tình trạng phân mảnh trong tương lai
  • 6. .NET Standard 2.0 • Nhiều hơn 20k API so với .Net standard 1.x • Tương thích với khoảng 70% các package trên Nuget
  • 7. .Net Core 2.0 • Miễn phí • Đa nền tảng (Cross-platform) hỗ trợ windown, macOS và Linux • Mã nguồn mở (open source) • Nền tảng phát triển cho việc xây dựng các loại ứng dụng  Web  Mobile  Desktop  Gaming
  • 8. .Net Core 2.0  Machine Learning & AI  Internet of Things
  • 9. ASP.NET Core 2.0 • Đa nền tảng • Hiệu năng cao • Framework mã nguồn mở cho việc xây dựn các ứng dụng chạy được trên cloud, được kết nối qua internet • Với ASP.NET Core có thể làm • Xây dựng các ứng dụng web và services, ứng dụng IoT và mobile • Sử dụng các công cụ phát triển trên Windown, masOS, Linux • Deploy trên cloud hoặc môi trường server của doanh nghiệp • Chạy trên .Net Core hoặc .Net Framwork
  • 11. Tại sao lại lựa chọn ASP.NET core 2.0 • Có thể host trên IIS hoặc self-host trong process • Thay đổi kiến trúc giúp nó nhẹ nhàng và mô đun hóa • HTTP request được tối ưu nhẹ hơn • Chuyển các thực thể, thành phần, module như những NuGet packages • Tích hợp các framework phía client như React, Angular • Xây dựng sẵn cơ chế dependency injection(DI) • Thời gian phát triển nhanh chóng
  • 12. Tại sao lại lựa chọn ASP.NET core 2.0 • Deploy trên các nền tảng Windows, macOS, Linux • Công cụ phát triển đều có trên đa nền tảng • Visual studio code • Atom • Brackets • Sublime
  • 13. Tại sao lại lựa chọn ASP.NET core 2.0 • ASP.NET Core MVC (Linux) có thể xử lý gần 1.000.000 request/s • Mã nguồn mở hoàn toàn, và cộng đồng phát triển lớn
  • 15. Kestrel • Là một web-server đa nền tảng được xây dựng cho ASP.NET Core dựa trên libuv – một thư viện xử lý I/O async đa nền tảng • Là web-server mặc định khi dùng ASP.NET Core template • Tốc độ rất nhanh • Không có đầy đủ tính năng của một web server • Sử dụng sau một web server đầy đủ như IIS / Nginx / Apach
  • 16. HTTP.sys • Là một web server cho ASP.NET Core, chỉ chạy duy nhất trên window. • Là một thay thế cho Kestrel và có một vài feature mà Kestrel không cung cấp • HTTP.sys được sử dụng trong trường hợp để lộ máy chủ lên internet mà không sử dụng IIS – HTTP.sys không thể sử dụng chung với IIS hoặc IIS Express.
  • 17. Dependency injection(DI) • Là một kĩ thuật nhằm loại bỏ sự liên kết lẫn nhau giữa các object và các object dùng trong nó, loại bỏ các phụ thuộc • ASP.NET Core được thiết kế từ ban đầu để dùng dependency injection • ASP.NET Core đã tích hợp sẵn Dependency injection ở sâu bên trong mà không cần dùng các thư viện hỗ trợ khác như Autofact, Unity, Ninject ….
  • 18. ASP.NET Core 2.0 những thay đổi đột phá • Performance – Tốc độ .NET core 2.0 nhanh hơn khoảng 20% so với phiên bản 1.0 • NET Standard 2.0 mở rộng thêm các API và khả năng sử dụng đầy đủ thư viện. – Đã hỗ trợ đến 32.000 API. Giúp cho việc nâng cấp code có sẵn từ phiên bản .NET cũ mà không cần phải thay đổi nhiều code. • Hỗ trợ ngôn ngữ(Language Support) – .NET core 2.0 hỗ trợ C#, F# và Visual Basic. • Minimum Code
  • 19. ASP.NET Core 2.0 những thay đổi đột phá
  • 20. ASP.NET Core 2.0 những thay đổi đột phá • SPA Template – Cung cấp template mới cho Angular 4, React.js, và Knockout.js • Một Framework duy nhất – Microsoft đã đưa tất cả các framework vào một framework duy nhất, sát nhấp MVC và Web API • ASP.NET Core Razor Pages – ASP.NET đã hỗ trợ cú pháp razor trên các page. Có thể tạo ra một razor view mà không cần tạo một controller
  • 21. ASP.NET và ASP.NET Core 2.0 • ASP.NET Core không dựa trên System.Web.dll mà dựa trên một list các gói thư viện trên NuGet • Security chặt chẽ hơn • Giảm chi phí bảo trì • Gia tăng hiệu năng • Bắt đầu từ file Program.cs phương thức Main và Startup class • Không còn file Global.asax • Không yêu cầu Web.config
  • 22. ASP.NET và ASP.NET Core 2.0 • Sử dụng ASP.NET Core khi : – Ứng dụng chạy trên đa nền tảng (Cross-Platform) – Cần sử dụng microservices cho ứng dụng – Cần sử dụng Docker containers. – Cần hệ thống hiệu suất mở rộng cao và khả năng mở rộng – Cần các phiên bản side-by-side .NET versions cho mỗi ứng dụng. • Sử dung ASP.NET khi : – Ứng dụng đang sử dụng .Net framework (đề xuất mở rộng thay vì chuyển) – Ứng dụng đang sử dụng các thư viện mà .net core ko support – Ứng dụng sử dụng các .NET technologies mà chưa có sẵn trên .net core – Ứng dụng sử dụng nền tảng không hỗ trợ .NET Core.