SlideShare une entreprise Scribd logo
1  sur  22
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.

Contenu connexe

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

Tổng quan ASP.NET CORE - NIVIKI.COM
Tổng quan ASP.NET CORE - NIVIKI.COMTổng quan ASP.NET CORE - NIVIKI.COM
Tổng quan ASP.NET CORE - NIVIKI.COMKhoa Nguyen
 
Tu hoc microsoft asp.net
Tu hoc microsoft asp.netTu hoc microsoft asp.net
Tu hoc microsoft asp.netnamhh1984ag
 
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.netđồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.netnataliej4
 
Pham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkPham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkVu Hung Nguyen
 
Chuong 1 tong quan về lập trình web động
Chuong 1 tong quan về lập trình web độngChuong 1 tong quan về lập trình web động
Chuong 1 tong quan về lập trình web độngTHPT Ngô Quyền
 
Asp net
Asp netAsp net
Asp netquanvn
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStackMinh Le
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStackMinh Le
 
Giới thiệu NukeViet 5 và Autoweb
Giới thiệu NukeViet 5 và AutowebGiới thiệu NukeViet 5 và Autoweb
Giới thiệu NukeViet 5 và Autowebvinades
 
ITLC HN 14 - Bizweb Microservices Architecture
ITLC HN 14  - Bizweb Microservices ArchitectureITLC HN 14  - Bizweb Microservices Architecture
ITLC HN 14 - Bizweb Microservices ArchitectureIT Expert Club
 
Alfresco hệ quản lý nội dung doanh nghiệp nguồn mở
Alfresco   hệ quản lý nội dung doanh nghiệp nguồn mởAlfresco   hệ quản lý nội dung doanh nghiệp nguồn mở
Alfresco hệ quản lý nội dung doanh nghiệp nguồn mởHọc Huỳnh Bá
 
01 chuong01tongquanveasp netmvc5
01 chuong01tongquanveasp netmvc501 chuong01tongquanveasp netmvc5
01 chuong01tongquanveasp netmvc5Thanh Nguyen
 
Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...
Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...
Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...VKhang Yang
 
Giới thiệu và triển khai private cloud
Giới thiệu và triển khai private cloudGiới thiệu và triển khai private cloud
Giới thiệu và triển khai private cloudTue Nguyen Dinh
 

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

Tổng quan ASP.NET CORE - NIVIKI.COM
Tổng quan ASP.NET CORE - NIVIKI.COMTổng quan ASP.NET CORE - NIVIKI.COM
Tổng quan ASP.NET CORE - NIVIKI.COM
 
Asp.net 3.5 _1
Asp.net 3.5 _1Asp.net 3.5 _1
Asp.net 3.5 _1
 
Tu hoc microsoft asp.net
Tu hoc microsoft asp.netTu hoc microsoft asp.net
Tu hoc microsoft asp.net
 
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.netđồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.net
 
Sof301 slide1
Sof301   slide1Sof301   slide1
Sof301 slide1
 
Pham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkPham Anh Tu - TK Framework
Pham Anh Tu - TK Framework
 
Chuong 1 tong quan về lập trình web động
Chuong 1 tong quan về lập trình web độngChuong 1 tong quan về lập trình web động
Chuong 1 tong quan về lập trình web động
 
Asp net
Asp netAsp net
Asp net
 
Tu hoc asp
Tu hoc aspTu hoc asp
Tu hoc asp
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 
Giới thiệu NukeViet 5 và Autoweb
Giới thiệu NukeViet 5 và AutowebGiới thiệu NukeViet 5 và Autoweb
Giới thiệu NukeViet 5 và Autoweb
 
Code Camp #1
Code Camp #1Code Camp #1
Code Camp #1
 
ITLC HN 14 - Bizweb Microservices Architecture
ITLC HN 14  - Bizweb Microservices ArchitectureITLC HN 14  - Bizweb Microservices Architecture
ITLC HN 14 - Bizweb Microservices Architecture
 
Bizweb Microservices Architecture
Bizweb Microservices ArchitectureBizweb Microservices Architecture
Bizweb Microservices Architecture
 
Aspnet 3.5_03
Aspnet 3.5_03Aspnet 3.5_03
Aspnet 3.5_03
 
Alfresco hệ quản lý nội dung doanh nghiệp nguồn mở
Alfresco   hệ quản lý nội dung doanh nghiệp nguồn mởAlfresco   hệ quản lý nội dung doanh nghiệp nguồn mở
Alfresco hệ quản lý nội dung doanh nghiệp nguồn mở
 
01 chuong01tongquanveasp netmvc5
01 chuong01tongquanveasp netmvc501 chuong01tongquanveasp netmvc5
01 chuong01tongquanveasp netmvc5
 
Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...
Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...
Lập trình background job bằng azurequeue và webjob sử dụng azure storage emul...
 
Giới thiệu và triển khai private cloud
Giới thiệu và triển khai private cloudGiới thiệu và triển khai private cloud
Giới thiệu và triển khai private cloud
 

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.