.NET là gì?
.NET là một nền tảng nguồn mở để xây dựng các ứng dụng trên máy tính để bàn, web và thiết bị di động có thể chạy nguyên bản trên bất kỳ hệ điều hành nào. Hệ thống .NET bao gồm các công cụ, thư viện và ngôn ngữ hỗ trợ phát triển phần mềm hiện đại, có quy mô linh hoạt và hiệu năng cao. Một cộng đồng nhà phát triển hoạt động tích cực trong việc duy trì và hỗ trợ nền tảng .NET.
Nói một cách dễ hiểu, nền tảng .NET là phần mềm có thể thực hiện những tác vụ sau:
- Dịch mã ngôn ngữ lập trình .NET thành hướng dẫn mà thiết bị máy tính có thể xử lý.
- Cung cấp các tiện ích để phát triển phần mềm hiệu quả. Ví dụ: nó có thể tìm thời gian hiện tại hoặc in văn bản trên màn hình.
- Xác định một tập gồm các loại dữ liệu để lưu trữ thông tin như văn bản, số và ngày tháng trên máy tính.
Triển khai .NET là gì?
Nhiều kiểu triển khai .NET khác nhau cho phép mã .NET thực thi trên những hệ điều hành khác nhau như Linux, macOS, Windows, iOS, Android và nhiều hệ điều hành khác.
.NET Framework
.NET Framework là kiểu triển khai .NET gốc. .NET Framework hỗ trợ chạy các trang web, dịch vụ, ứng dụng trên máy tính để bàn, v.v. trên Windows. Microsoft đã phát hành .NET Framework vào đầu những năm 1990.
.NET Core
Microsoft ra mắt .NET Core vào cuối năm 2014 để tạo điều kiện hỗ trợ liên nền tảng cho các nhà phát triển .NET. Công ty phát hành phiên bản mới nhất của .NET Core là .NET 5.0 vào tháng 11 năm 2020 và đổi tên thành .NET. Thuật ngữ .NET trong bài viết này đề cập tới .NET 5.0. .NET Core có nguồn mở trên GitHub.
.NET Standard
.NET Standard là một đặc tả chính thức về các hàm khác nhau (gọi là API). Các kiểu triển khai .NET khác nhau có thể tái sử dụng cùng một mã và thư viện. Mỗi kiểu triển khai sử dụng cả các API tiêu chuẩn của .NET và API duy nhất dành riêng cho hệ điều hành chứa kiểu triển khai đang chạy.
Tại sao chọn .NET?
Dễ phát triển
Các nhà phát triển thích sử dụng .NET vì nền tảng này chứa nhiều công cụ giúp họ làm việc dễ dàng hơn. Ví dụ: nhờ sử dụng bộ Visual Studio, các nhà phát triển có thể viết mã nhanh hơn, cộng tác hiệu quả, đồng thời kiểm thử và sửa mã của họ một cách hiệu quả. Khả năng tái sử dụng mã giữa các kiểu triển khai giúp giảm chi phí phát triển.
Ứng dụng hiệu năng cao
Các ứng dụng .NET cung cấp thời gian phản hồi nhanh hơn và đòi hỏi công suất điện toán thấp hơn. Những ứng dụng này sở hữu các biện pháp bảo mật tích hợp mạnh mẽ và thực hiện hiệu quả các tác vụ phía máy chủ như truy cập cơ sở dữ liệu.
Hỗ trợ cộng đồng
.NET là nền tảng nguồn mở, tức là bất kỳ ai cũng có thể truy cập để tự do sử dụng, đọc và sửa đổi .NET. Một cộng đồng gồm các nhà phát triển hoạt động tích cực trong việc duy trì và cải thiện phần mềm .NET. .NET Foundation là tổ chức phi lợi nhuận độc lập, được thành lập để hỗ trợ cộng đồng .NET. Tổ chức này cung cấp các tài nguyên học tập, dự án .NET nguồn mở và nhiều sự kiện khác nhau dành cho các nhà phát triển .NET.
Các thành phần của kiến trúc .NET là gì?
.NET có kiến trúc dạng mô-đun và được tối ưu hóa. Người dùng có thể chọn các thành phần khác nhau để đáp ứng nhu cầu phát triển phần mềm của họ.
Đây là ba thành phần chính của .NET:
- Ngôn ngữ .NET
- Khung mô hình ứng dụng
- Thời gian chạy .NET
Các nhà phát triển sử dụng các ngôn ngữ lập trình .NET và khung mô hình ứng dụng để tạo các ứng dụng .NET của họ. Sau đó, thời gian chạy .NET sẽ thực thi và chạy chúng.
Ngôn ngữ lập trình .NET là gì?
C# (phát âm là C sharp), F# (phát âm là F sharp) và Visual Basic là ba ngôn ngữ được Microsoft hỗ trợ để phát triển .NET. Các công ty và nhà phát triển khác nhau cũng đã tạo ra những ngôn ngữ khác hoạt động với nền tảng .NET.
C#
C# là một ngôn ngữ lập trình đơn giản, hiện đại và hướng đối tượng. Với cú pháp tương tự như họ ngôn ngữ C, C# quen thuộc với các lập trình viên C, C++, Java và JavaScript.
F#
F# có cú pháp gọn nhẹ hơn và hầu như không đòi hỏi mã để xây dựng phần mềm. Đây là ngôn ngữ nguồn mở, giúp bạn dễ dàng viết mã ngắn gọn, mạnh mẽ và có hiệu năng cao. F# cũng có một hệ thống gồm các nguyên tắc lập trình đầy mạnh mẽ và một thư viện tiêu chuẩn thuận tiện để xây dựng phần mềm tối quan trọng, chính xác, nhanh chóng và đáng tin cậy.
Visual Basic
Visual Basic là ngôn ngữ lập trình hướng đối tượng do Microsoft phát triển. Việc sử dụng Visual Basic giúp tạo các ứng dụng .NET an toàn về kiểu dữ liệu một cách nhanh chóng và dễ dàng. An toàn kiểu là mức độ mà một ngôn ngữ lập trình ngăn cản hoặc ngăn chặn lỗi lập mã logic.
Ngôn ngữ trong Cơ sở hạ tầng ngôn ngữ dùng chung (CLI)
Các ngôn ngữ như ClojureCLR, Eiffel, IronPython, PowerBuilder và nhiều ngôn ngữ khác cũng hoạt động trên nền tảng .NET. Đó là bởi vì .NET triển khai Cơ sở hạ tầng ngôn ngữ dùng chung (CLI). Bạn có thể coi CLI là mẫu để tạo các ngôn ngữ tương thích với .NET.
Thời gian chạy .NET là gì?
Thời gian chạy .NET, còn gọi là Thời gian chạy ngôn ngữ chung (CLR), biên dịch và thực thi các chương trình .NET trên những hệ điều hành khác nhau.
Biên dịch tức thời
CLR biên dịch mã khi nhà phát triển viết mã. Trong quá trình biên dịch, CLR dịch mã thành Ngôn ngữ trung gian chung (CIL). Ví dụ: mã viết bằng C# có cú pháp và từ ngữ giống tiếng Anh. .NET biên dịch hoặc dịch mã này thành CIL. Mã CIL nhìn khác biệt vì nó là ngôn ngữ mã máy cấp thấp hơn.
Thực thi
Thời gian chạy .NET quản lý quá trình thực thi mã CIL. CIL tương thích liên nền tảng, đồng thời, bất kỳ hệ điều hành nào cũng có thể xử lý CIL. Khả năng tương thích liên nền tảng đề cập đến khả năng ứng dụng có thể chạy trên nhiều hệ điều hành khác nhau với thao tác sửa đổi ở mức tối thiểu. Ví dụ: một ứng dụng viết bằng C# có thể chạy trên Windows, Linux hoặc macOS mà không cần bất kỳ thao tác sửa đổi mã nào. Một ứng dụng như vậy được gọi là ứng dụng liên nền tảng.
Khung mô hình ứng dụng .NET là gì?
Các khung mô hình ứng dụng là một tập hợp các công cụ và thư viện dành cho nhà phát triển, hỗ trợ phát triển dự án .NET nhanh chóng và hiệu quả. Có các khung khác nhau dành cho những loại ứng dụng khác nhau, chẳng hạn như trong danh sách bên dưới.
Ứng dụng web
Khung ASP.NET mở rộng nền tảng nhà phát triển .NET, đặc biệt để xây dựng các ứng dụng dựa trên web. Khung này hỗ trợ các công nghệ web như API REST, HTML, CSS và JavaScript. ASP.NET cung cấp một cơ sở dữ liệu người dùng tích hợp với quá trình xác thực nhiều yếu tố và từ bên ngoài. ASP.NET hỗ trợ các giao thức xác thực theo tiêu chuẩn ngành với cơ chế bảo mật tích hợp, giúp bảo vệ các ứng dụng .NET của bạn khỏi các cuộc tấn công mạng.
Ứng dụng di động
Bạn có thể sử dụng Xamarin/Mono để chạy các ứng dụng .NET trên tất cả các hệ điều hành chính trên thiết bị di động, bao gồm iOS và Android. Xamarin bao gồm khung giao diện người dùng di động nguồn mở Xamarin.Forms. Các nhà phát triển .NET sử dụng Xamarin.Forms để tạo dựng trải nghiệm người dùng nhất quán trên các nền tảng di động. Tất cả các ứng dụng .NET có thể sở hữu giao diện giống nhau, ngay cả trên các thiết bị di động khác nhau.
Ứng dụng máy tính để bàn
Bạn có thể sử dụng Xamarin để phát triển ứng dụng máy tính để bàn. Ngoài ra, Universal Windows Platform mở rộng phát triển ứng dụng .NET trên Windows 10. Windows Presentation Foundation và Windows Forms là những khung khác để thiết kế giao diện người dùng trên Windows.
Các ứng dụng khác
Với ML.NET, bạn có thể phát triển và tích hợp mô hình máy học tùy chỉnh vào ứng dụng .NET của mình. Bạn có thể sử dụng Thư viện .NET IoT để phát triển ứng dụng trên cảm biến và những thiết bị thông minh khác. Đối với bất kỳ giải pháp nào không có sẵn trong khung, bạn có thể tìm thấy nhiều thư viện hàm cụ thể trên kho NuGet công cộng. Bạn có thể sử dụng Nuget để tạo, chia sẻ và sử dụng nhiều thư viện .NET cho hầu hết mọi mục đích.
AWS có thể giúp gì cho các nhà phát triển .NET?
Các nhà phát triển .NET có thể tăng tốc ứng dụng bằng cách sử dụng .NET trên AWS. Trong đó, mọi công việc đều có dịch vụ hỗ trợ, vì vậy, bạn có thể nhanh chóng xây dựng các bằng chứng về khái niệm mà không phải lo về việc quản lý cơ sở hạ tầng. Dưới đây là một số ví dụ về các dịch vụ AWS để phát triển .NET:
- AWS Elastic Beanstalk xử lý các tác vụ vận hành và triển khai ứng dụng.
- Amazon EC2 cung cấp công suất điện toán bảo mật và có quy mô linh hoạt trên đám mây.
- Amazon Aurora tự động hóa công tác quản trị cơ sở dữ liệu.
Các nhà phát triển .NET cũng có thể sử dụng các công cụ và thư viện nguồn mở của AWS, chẳng hạn như:
- SDK AWS dành cho .NET giúp các nhà phát triển Linux và Windows xây dựng ứng dụng .NET dễ dàng hơn.
- Kho ví dụ về mã của AWS giúp tăng tốc quá trình bạn nắm bắt các ứng dụng hoạt động với các dịch vụ AWS.
- Thư viện .NET kỹ thuật số chứa một kho lưu trữ các video, hướng dẫn, blog và những tài nguyên khác dành cho nhà phát triển .NET.
Với việc phát hành .NET 6, các nhà phát triển .NET có thể tận dụng lợi thế còn lớn hơn nữa về hiệu năng của AWS và tiết kiệm chi phí với Linux. Các ứng dụng .NET 6 có thể đã sử dụng nhiều dịch vụ AWS mà không cần xử lý thêm. Hướng dẫn này mô tả tính năng hỗ trợ .NET 6 do các dịch vụ và công cụ AWS cung cấp.
Bạn có thể bắt đầu sử dụng .NET trên AWS bằng cách hoàn tất khóa đào tạo .NET trên AWS, xây dựng các ứng dụng .NET trên AWS hoặc khởi chạy ứng dụng .NET đầu tiên trên AWS.
Các bước tiếp theo để sử dụng .Net trên AWS
Bắt đầu xây dựng với AWS trên Bảng điều khiển quản lý AWS.