Bắt đầu với C#
- 10-11-2023
- Toanngo92
- 0 Comments
C# được tạo ra trong quá trình xây dựng Microsoft .NET Framework, một khung phần mềm được thiết kế để chạy trên hệ điều hành Windows. Microsoft .NET Framework chứa một bộ công cụ lớn quản lý việc thực hiện các chương trình viết đặc biệt cho khung phần mềm này. Buổi học sẽ mô tả về Microsoft .NET Framework, các tính năng ngôn ngữ C#, và cũng sẽ bao quát về các tính năng và chức năng của Visual Studio 2019, một Môi trường Phát triển Tích hợp (IDE). Buổi học cũng giới thiệu về .NET 5.0.
Trong buổi học này, bạn sẽ học được:
- Định nghĩa và mô tả về .NET Framework
- Giải thích về các tính năng của ngôn ngữ C#
- Định nghĩa và mô tả về môi trường Visual Studio 2019
- Giải thích về các yếu tố của Môi trường Phát triển Tích hợp Microsoft Visual Studio 2019
Mục lục
Giới thiệu về .NET Framework
.NET Framework là một cơ sở hạ tầng cho phép xây dựng, triển khai và chạy các loại ứng dụng và dịch vụ khác nhau bằng cách sử dụng công nghệ .NET. Bạn có thể sử dụng .NET Framework để giảm thiểu xung đột trong việc phát triển phần mềm, triển khai và quản lý phiên bản.
Kiến trúc của .NET Framework
Với sự cải tiến trong công nghệ mạng, tích hợp máy tính phân phối đã cung cấp sự sử dụng hiệu quả nhất của sức mạnh tính toán của cả máy khách và máy chủ. Cũng với sự xuất hiện của Internet, các ứng dụng trở nên độc lập với nền tảng, đảm bảo rằng chúng có thể chạy trên máy tính cá nhân với các kết hợp phần cứng và phần mềm khác nhau. Tương tự, với sự biến đổi trong phát triển ứng dụng, đã trở nên khả thi cho các máy khách và máy chủ giao tiếp với nhau một cách độc lập với nhà cung cấp.
Hình bên dưới hiển thị các tính năng khác nhau đi kèm với sự biến đổi trong lĩnh vực tính toán, Internet và phát triển ứng dụng.
Tất cả những biến đổi này được hỗ trợ bởi nền tảng công nghệ do Microsoft giới thiệu, được gọi là .NET Framework. Dữ liệu được lưu trữ bằng .NET Framework có thể truy cập từ bất kỳ đâu, bất kỳ khi nào, thông qua bất kỳ thiết bị tương thích .NET nào.
.NET Framework là một nền tảng lập trình được sử dụng để phát triển phần mềm cho Windows, Web và di động. Nó chứa một số giải pháp mã hóa sẵn quản lý việc thực hiện các chương trình được viết đặc biệt cho khung phần mềm.
Nền tảng .NET Framework dựa trên hai công nghệ cơ bản để truyền dữ liệu
- Ngôn ngữ đánh dấu mở rộng (XML)
- Bộ giao thức Internet
Các tính năng quan trọng của XML bao gồm:
- Tách dữ liệu thực tế khỏi hiển thị.
- Nó mở khóa thông tin có thể được sắp xếp, lập trình và chỉnh sửa.
- Nó cho phép các trang web hợp tác và cung cấp các nhóm dịch vụ web. Do đó, chúng có thể tương tác với nhau.
- Nó cung cấp một cách để phân phối dữ liệu đến nhiều thiết bị khác nhau.
Ngoài XML, nền tảng .NET còn được xây dựng trên các giao thức internet như Giao thức Truyền tải Siêu Văn bản (HTTP), Giao thức Dữ liệu Mở (OData) và Giao thức Truy cập Đối tượng Đơn giản (SOAP).
Trong các ứng dụng Windows truyền thống, mã đã được biên dịch trực tiếp thành mã nguồn thực thi của hệ điều hành. Tuy nhiên, khi sử dụng .NET Framework, mã của một chương trình được biên dịch thành CIL (trước đây gọi là MSIL) và lưu trong một tệp gọi là assembly. Sau đó, Common Language Runtime (CLR) biên dịch tệp assembly này thành mã nguồn thực thi vào thời gian chạy.
Hình bên dưới biểu thị quá trình chuyển đổi mã CIL thành mã nguồn thực thi.
CLR cung cấp nhiều tính năng như quản lý bộ nhớ, thực thi mã, xử lý lỗi, xác minh tính an toàn của mã và thu gom rác. Do đó, các ứng dụng chạy dưới CLR được gọi là mã được quản lý.
Microsoft đã phát hành các phiên bản khác nhau của .NET Framework để bao gồm các khả năng và chức năng bổ sung trong mỗi phiên bản mới hơn. Các phiên bản của .NET Framework là như sau:
- .NET Framework 1.0: Đây là phiên bản đầu tiên được phát hành với Microsoft Visual Studio .NET 2002. Nó bao gồm CLR, các thư viện lớp của .NET Framework và ASP.NET, một nền tảng phát triển được sử dụng để xây dựng các trang web.
- .NET Framework 1.1: Đây là phiên bản nâng cấp đầu tiên được phát hành với Microsoft Visual Studio .NET 2003. Nó đã được tích hợp vào Microsoft Windows Server 2003 và bao gồm các tính năng sau:
- Hỗ trợ các thành phần được sử dụng để tạo ứng dụng cho điện thoại di động như một phần của khung + Hỗ trợ cơ sở dữ liệu Oracle để lưu trữ thông tin trong các bảng
- Hỗ trợ giao thức IPv6 và Code Access Security (CAS) cho các ứng dụng dựa trên web
- Cho phép chạy các bộ tập hợp của Windows Forms từ một trang web
- Giới thiệu .NET Compact Framework, cung cấp các thành phần để tạo ứng dụng dùng trên điện thoại di động và máy tính xách tay (PDA).
Lưu ý: CAS là một cơ chế bảo mật do Microsoft cung cấp để đảm bảo rằng chỉ mã nguồn được tin tưởng bởi .NET Framework mới được phép thực hiện các hành động quan trọng như yêu cầu phân bổ bộ nhớ và truy cập vào cơ sở dữ liệu. IPv6 viết tắt của Giao thức Internet phiên bản 6. Đây là một giao thức đã khắc phục sự khan hiếm về địa chỉ IP bằng cách hỗ trợ 5 x 1028 địa chỉ IP.
.NET Framework 2.0: Đây là phiên bản kế nhiệm của .NET Framework 1.1 và là phiên bản nâng cấp tiếp theo đi kèm với Microsoft Visual Studio .NET 2005 và Microsoft SQL Server 2005. Phiên bản này bao gồm các tính năng mới sau đây:
- Hỗ trợ cho các nền tảng phần cứng 64-bit
- Hỗ trợ cho các cấu trúc dữ liệu chung (Generic data structures)
- Hỗ trợ cho các điều khiển Web mới được sử dụng để thiết kế ứng dụng Web
- Mở cửa cho .NET Micro Framework, cho phép các nhà phát triển tạo ra các thiết bị đồ họa bằng ngôn ngữ C#.
.NET Framework 3.0: Được xây dựng trên .NET Framework 2.0 và bao gồm trong Visual Studio 2005 với hỗ trợ .NET Framework 3.0. Phiên bản này giới thiệu nhiều công nghệ mới như Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), Windows Workflow Foundation (WF) và Windows CardSpace.
.NET Framework 3.5: Đây là phiên bản nâng cấp tiếp theo và được bao gồm trong Visual Studio 2008. Các tính năng chính của phiên bản này bao gồm hỗ trợ phát triển các trang web hỗ trợ AJAX và công nghệ mới được gọi là Language Integrated Query (LINQ). .NET Framework 3.5 Service Pack 1 là phiên bản trung gian tiếp theo, trong đó công nghệ ADO.NET Entity Framework và ADO.NET Data Services được giới thiệu.
.NET Framework 4.0: Phiên bản này được bao gồm trong Visual Studio 2010 và giới thiệu nhiều tính năng mới, tính năng chính là Dynamic Language Runtime (DLR). DLR là một môi trường chạy thời gian cho phép các lập trình viên .NET tạo ứng dụng bằng các ngôn ngữ động như Python và Ruby. Ngoài ra, .NET Framework 4.0 giới thiệu hỗ trợ tính toán song song sử dụng khả năng đa lõi của máy tính. Phiên bản này cũng cải thiện ADO.NET, WCF và WPF, và giới thiệu các tính năng ngôn ngữ mới như điều phối động, tham số có tên và tham số tùy chọn.
.NET Framework 4.5: Phiên bản này bao gồm trong Visual Studio 2012 và mang lại nhiều cải tiến cho .NET Framework 4.0, bao gồm cải tiến trong lập trình không đồng bộ thông qua các từ khóa async
và await
, hỗ trợ nén Zip, hỗ trợ thời gian chờ (regex
timeout) và thu gom rác hiệu quả hơn.
.NET Framework 4.8: .NET Framework 4.8 là phiên bản cuối cùng của .NET Framework và sẽ không có phiên bản mới sau này. Tuy nhiên, .NET Framework sẽ tiếp tục được cung cấp dịch vụ với các bản vá hàng tháng về bảo mật và độ tin cậy. Ngoài ra, nó sẽ tiếp tục được bao gồm trong Windows mà không có kế hoạch gỡ bỏ. Người dùng không cần chuyển đổi ứng dụng .NET Framework của họ, nhưng cho phát triển mới, hãy sử dụng .NET 5.0 hoặc phiên bản sau đó.
.NET 5.0: .NET 5.0 được giới thiệu bởi Microsoft vào ngày 10 tháng 11 năm 2020. Nó kết hợp .NET Core với .NET Framework để tạo ra môi trường và kết quả thống nhất cho mọi thứ liên quan đến .NET và .NET Core. .NET 5.0 hỗ trợ tất cả các phiên bản Visual Studio ra mắt sau Visual Studio 2017.
Bảng bên dưới tóm tắt sự phát triển của các phiên bản chính của .NET.
Năm phát hành | Phiên bản .NET | Tên IDE |
2002 | .NET Framework 1.0 | Visual Studio.NET (2002) |
2003 | .NET Framework 1.1 | Visual Studio NET 2003 |
2005 | .NET Framework 2.0 | Visual Studio 2005 |
2006 | .NET Framework 3.0 | Visual Studio 2005 with NET Framework 3.0 support |
2007 | .NET Framework 3.5 | Visual Studio 2008 |
2010 | .NET Framework 4 | Visual Studio 2010 |
2012 | .NET Framework 4.5 | Visual Studio 2012 |
2015 | .NET Framework 4.6 | Visual Studio 2015 |
2017 | .NET Framework 4.7 | Visual Studio 2017 |
2019 | .NET Framework 4.8 | Visual Studio 2019 |
2020 | .NET 5.0 | Visual Studio 2019 |
Cơ bản của .NET Framework
.NET Framework là một thành phần quan trọng của hệ điều hành Windows cho việc xây dựng và chạy thế hệ tiếp theo của ứng dụng phần mềm và dịch vụ Web XML.
.NET Framework được thiết kế để:
- Cung cấp môi trường lập trình hướng đối tượng đồng nhất
- Giảm thiểu xung đột trong việc triển khai phần mềm và quản lý phiên bản bằng cách cung cấp một môi trường thực thi mã
- Khuyến khích việc thực thi an toàn mã bằng cách cung cấp môi trường thực thi mã
- Cung cấp trải nghiệm phát triển đồng nhất qua các loại ứng dụng khác nhau như ứng dụng dựa trên Windows và ứng dụng dựa trên Web.
Lưu ý: .NET Framework là một thành phần phần mềm có thể được thêm vào hệ điều hành Microsoft Windows. Nó chứa một số giải pháp mã hóa sẵn và quản lý việc thực thi các chương trình được viết đặc biệt cho khung phần mềm này.
Các thành phần của .NET Framework
.NET Framework bao gồm một số thành phần. Hai thành phần cốt lõi của .NET Framework, quan trọng cho bất kỳ ứng dụng hoặc dịch vụ nào, là Common Language Runtime (CLR) và thư viện lớp .NET Framework.
Common Language Runtime (CLR)
CLR là cốt lõi của .NET Framework. Nó thực hiện các chức năng khác nhau như:
- Quản lý bộ nhớ
- Thực thi mã
- Xử lý lỗi
- Xác minh tính an toàn của mã
- Thu gom rác
Thư viện lớp .NET Framework (FCL)
Thư viện lớp là một bộ sưu tập toàn diện về đối tượng hướng đối tượng có thể tái sử dụng. Nó được sử dụng để phát triển ứng dụng từ các ứng dụng dòng lệnh truyền thống đến các ứng dụng giao diện người dùng đồ họa (GUI) có thể sử dụng trên Web.
Lưu ý: Một trong những mục tiêu quan trọng của .NET Framework là khuyến khích và tạo điều kiện thuận lợi cho việc sử dụng mã lại.
Sử dụng .NET Framework
Một lập trình viên có thể phát triển ứng dụng bằng cách sử dụng một trong các ngôn ngữ được hỗ trợ bởi .NET. Những ứng dụng này sử dụng các thư viện lớp cơ bản được cung cấp bởi .NET Framework. Ví dụ, để hiển thị một thông điệp văn bản trên màn hình, bạn có thể sử dụng lệnh sau.
System.Console.WriteLine(".NET Architecture");
Cùng một phương thức WriteLine()
sẽ được sử dụng trên tất cả các ngôn ngữ .NET. Điều này đã được thực hiện bằng cách làm cho Thư viện Lớp Framework trở thành một thư viện lớp chung cho tất cả các ngôn ngữ .NET.
Các Thành phần khác của .NET Framework
CLR và FCL là các thành phần chính của .NET Framework. Ngoài ra, một số thành phần quan trọng khác được định nghĩa như sau:
- Common Language Specification (CLS): Đây là một bộ quy tắc mà bất kỳ ngôn ngữ .NET nào cũng nên tuân theo để tạo ra các ứng dụng có khả năng tương tác với các ngôn ngữ khác.
- Common Type System (CTS): Mô tả cách khai báo, sử dụng và quản lý các kiểu dữ liệu trong thời gian chạy và hỗ trợ việc sử dụng kiểu dữ liệu qua nhiều ngôn ngữ khác nhau.
- Các Lớp Cơ bản của Framework: Các lớp này cung cấp các chức năng cơ bản như nhập/xuất, xử lý chuỗi, quản lý bảo mật, truyền thông mạng và nhiều tính năng khác.
- ASP.NET: Cung cấp một tập hợp các lớp để xây dựng ứng dụng Web. Ứng dụng Web ASP.NET có thể được xây dựng bằng cách sử dụng Web Forms, đó là một tập hợp các lớp để thiết kế các biểu mẫu cho các trang web tương tự như HyperText Markup Language (HTML). ASP.NET cũng hỗ trợ các dịch vụ Web có thể truy cập bằng cách sử dụng một bộ giao thức tiêu chuẩn.
- ADO.NET: Cung cấp các lớp để tương tác với cơ sở dữ liệu.
- WPF (Windows Presentation Foundation): Đây là một khung giao diện người dùng dựa trên XML và đồ họa vector. WPF sử dụng phần cứng đồ họa máy tính 3D và công nghệ Direct 3D để tạo ra các ứng dụng trên nền tảng Windows với giao diện người dùng đa dạng.
- WCF (Windows Communication Foundation): Đây là một khung gửi nhận dịch vụ. WCF cho phép tạo các điểm dịch vụ và cho phép các chương trình gửi và nhận dữ liệu từ điểm dịch vụ một cách không đồng bộ.
- LINQ (Language Integrated Query): Đây là một thành phần cung cấp khả năng truy vấn dữ liệu cho ứng dụng .NET.
- ADO.NET Entity Framework: Đây là một tập hợp các công nghệ dựa trên ADO.NET, cho phép tạo ứng dụng dựa trên dữ liệu một cách theo hướng đối tượng.
- Parallel LINQ: Đây là một tập hợp các lớp hỗ trợ lập trình song song bằng cách sử dụng LINQ.
- Task Parallel Library: Đây là một thư viện giúp đơn giản hóa lập trình song song và đồng thời trong ứng dụng .NET.
Hình bên dưới hiển thị các thành phần khác nhau của .NET Framework.
Ngôn ngữ Trung gian Chung (CIL)
Mọi ngôn ngữ lập trình .NET thông thường đều có trình biên dịch và môi trường thực thi riêng của nó. Trình biên dịch chuyển đổi mã nguồn thành mã thực thi có thể chạy bởi người dùng.
Một trong những mục tiêu chính của .NET Framework là kết hợp các môi trường thực thi để các nhà phát triển có thể làm việc với một tập hợp dịch vụ thực thi duy nhất.
Khi mã được viết bằng một ngôn ngữ tương thích với .NET như C# hoặc VB, sau khi biên dịch, mã đầu ra có dạng mã MSIL (Microsoft Intermediate Language). MSIL được tạo thành từ một tập hợp cụ thể các chỉ thị cho biết cách mã sẽ được thực thi.
Hình bên dưới miêu tả khái niệm Ngôn ngữ Trung gian Microsoft. MSIL hiện được gọi là CIL (Common Intermediate Language).
Môi trường Thực thi Ngôn ngữ Chung (CLR)
CLR là nền tảng của .NET Framework. Thời gian chạy quản lý mã trong quá trình thực thi và thực hiện các hoạt động như quản lý bộ nhớ, quản lý luồng, và giao tiếp từ xa. Một cách đơn giản, CLR hoạt động như một máy thực thi cho .NET Framework. Nó quản lý việc thực thi của các chương trình và cung cấp môi trường thích hợp cho các chương trình chạy. .NET Framework hỗ trợ một số công cụ phát triển và trình biên dịch ngôn ngữ trong Bộ công cụ Phát triển Phần mềm của nó. Do đó, CLR cung cấp một môi trường thực thi đa ngôn ngữ.
Khi mã được thực thi lần đầu, mã CIL được chuyển đổi thành mã nguồn gốc của hệ điều hành. Điều này được thực hiện tại thời gian chạy bởi trình biên dịch Just-In-Time (JIT) có trong CLR. CLR chuyển đổi mã CIL thành mã ngôn ngữ máy tính. Khi điều này được thực hiện, mã có thể được thực thi trực tiếp bởi CPU. Hình bên dưới miêu tả cách CLR hoạt động.
Hình tiếp theo cho thấy một cái nhìn chi tiết hơn về cách CLR hoạt động.
Lưu ý: Tất cả mã trong .NET được quản lý bởi CLR và do đó, được gọi là mã được quản lý. Trong mã được quản lý, các nhà phát triển cấp phát bộ nhớ bất cứ khi nào cần bằng cách khai báo biến, và bộ thu gom rác thời gian chạy xác định khi bộ nhớ không còn cần và làm sạch nó. Bộ thu gom rác cũng có thể di chuyển bộ nhớ để cải thiện hiệu suất. Thời gian chạy quản lý tất cả cho bạn và do đó, thuật ngữ mã được quản lý được sử dụng cho các chương trình như vậy. Ngược lại, mã chạy mà không cần CLR, như các chương trình C, được gọi là mã không được quản lý.
Trình biên dịch Just-In-Time (JIT) có ba loại, như được thể hiện trong hình bên dưới.
Môi trường Thực thi Ngôn ngữ Động (DLR)
DLR là một môi trường thời gian chạy được xây dựng trên nền CLR để hỗ trợ tích hợp của các ngôn ngữ động như Ruby và Python với .NET Framework. Các ngôn ngữ trong .NET Framework, như C#, VB và J#, là các ngôn ngữ kiểu tĩnh, điều này có nghĩa là người lập trình phải xác định loại đối tượng trong quá trình phát triển chương trình. Ngược lại, trong các ngôn ngữ động, người lập trình không cần phải xác định loại đối tượng trong giai đoạn phát triển. DLR cho phép tạo và chuyển các ngôn ngữ động sang .NET Framework. Ngoài ra, DLR cung cấp các tính năng động cho các ngôn ngữ kiểu tĩnh hiện có. Ví dụ, C# sử dụng DLR để thực hiện gắn kết động.
Giới thiệu về .NET 5.0
.NET 5.0 là phiên bản kế vị của các phiên bản .NET trước đó (.NET Core 3.1 và .NET Framework 4.8) với nhiều tính năng mới được giới thiệu và hiệu suất được cải thiện. .NET 5.0 thân thiện hơn với người dùng. Nó không thay thế .NET Framework 4.X trước đó, nhưng vẫn hỗ trợ các phiên bản .NET Framework này.
Các thành phần của .NET 5.0
Hầu hết các thành phần của .NET 5.0 tương tự như trong .NET Framework lên đến phiên bản 4.8, bao gồm CLR, CTS, Common Data Type, Garbage Collector và nhiều thành phần khác. .NET 5.0 hỗ trợ nhiều ngôn ngữ, bao gồm C# 9.0. Trách nhiệm của CLR trong .NET tương tự như trong .NET Framework, đó là cung cấp cú pháp chung, kiểu dữ liệu chung và quản lý bộ nhớ. .NET 5.0 bao gồm một phiên bản sản phẩm duy nhất cho CLR, điều này có nghĩa là nó không có phiên bản CLR riêng biệt.
Tính năng
Microsoft đã thêm nhiều tính năng mới và cải thiện nhiều tính năng đã tồn tại trong .NET 5.0.
Các tính năng này cung cấp hiệu suất tốt hơn và trải nghiệm thân thiện hơn cho người dùng.
Các tính năng của .NET 5.0 bao gồm:
- Nền tảng thống nhất và Mã Mục tiêu Framework cập nhật
.NET 5 cung cấp một tập hợp chung các API phù hợp với các triển khai thời gian chạy khác nhau. Tập hợp các API này được xác định bởi Target Framework Moniker (TFM) mới của .NET 5.0
, đó là tên mã ngắn gọn chỉ định tập hợp các API hoặc mục tiêu framework mà một dự án đang nhắm đến. Điều này cho phép ứng dụng của người phát triển chạy trên bất kỳ triển khai thời gian chạy nào hỗ trợ .NET 5.0. Tuy nhiên, người phát triển vẫn có thể xây dựng ứng dụng cho một nền tảng cụ thể. Ví dụ, để xây dựng một ứng dụng sử dụng API Windows, người phải chỉ định TFM .NET 5.0 cho Windows (net5.0-windows
). Như vậy, bạn có thể chọn và xây dựng một ứng dụng cụ thể cho từng nền tảng. Trước .NET 5, mỗi triển khai .NET có tập hợp riêng biệt của TFM, ví dụ, netcoreapp:3.1
cho .NET Core 3.1, net48
cho .NET Framework 4.8, và còn nhiều nữa. Với .NET 5, net5.0
vẫn là duy nhất.
- Hỗ trợ cho ứng dụng file duy nhất
.NET 5 cung cấp hỗ trợ cho ứng dụng file duy nhất, nghĩa là ứng dụng được xuất bản và triển khai dưới dạng một tệp duy nhất. Điều này có nghĩa là ứng dụng và tất cả các phụ thuộc của nó được gói vào một tệp duy nhất. Ví dụ, bạn có thể có một tệp duy nhất chứa ứng dụng của bạn được xây dựng cho Linux, tất cả các phụ thuộc bạn đã sử dụng trong dự án của bạn và .NET run-time (–self-contained true). Điều này có nghĩa là bạn thậm chí không cần phải cài đặt .NET run-time trên máy mục tiêu.
Hiện tại, tính năng này chỉ có sẵn cho Linux.
- Cập nhật Ngôn ngữ:
.NET 5.0 hỗ trợ phiên bản mới nhất của C#, đó là C# 9.0 và F#, đó là F# 5.0. Trình biên dịch nguồn C# là một tính năng cho phép mã kiểm tra chương trình và sau đó, tạo các tệp bổ sung được biên dịch với phần còn lại của mã. Tính năng này của trình biên dịch cũng cải thiện C# bằng cách thêm hỗ trợ cho meta-programming. Trình biên dịch nguồn C# cũng có quyền truy cập vào mã ứng dụng. Điều này giúp tạo ra các tệp nguồn C# bổ sung là một phần của việc biên dịch cuối cùng.
- .NET Multi-platform App UI
.NET 5.0 làm nền tảng cho .NET Multi-platform App UI (còn được gọi là .NET MAUI), sẽ hoàn toàn có sẵn trong .NET 6. Sử dụng điều này, các nhà phát triển sẽ có thể xây dựng giao diện người dùng cho Android, iOS, macOS và Windows bằng một dự án duy nhất.
Giới thiệu về C#
C# là một ngôn ngữ lập trình được thiết kế để xây dựng một loạt các ứng dụng chạy trên .NET Framework. Microsoft giới thiệu C# như một ngôn ngữ lập trình mới để giải quyết các vấn đề gây ra bởi các ngôn ngữ truyền thống. C# được phát triển để cung cấp các lợi ích sau:
- Tạo một công cụ đơn giản và mạnh mẽ để xây dựng ứng dụng tương tác, có khả năng mở rộng và mạnh mẽ.
- Tạo kiến trúc hoàn toàn hướng đối tượng.
- Hỗ trợ phát triển dựa trên thành phần mạnh mẽ.
- Cho phép truy cập đến nhiều tính năng trước đây chỉ có trong C++ trong khi vẫn giữ tính dễ sử dụng của một công cụ phát triển ứng dụng nhanh như Visual Basic.
- Cung cấp sự quen thuộc cho các lập trình viên đến từ nền tảng C hoặc C++.
- Cho phép viết ứng dụng dành cho cả máy tính để bàn và thiết bị di động.
Mục đích của Ngôn ngữ C#
Microsoft .NET trước đây được biết đến với tên dịch vụ Windows Thế hệ Tiếp theo (Next Generation Windows Services – NGWS). Đây là một nền tảng hoàn toàn mới để phát triển thế hệ tiếp theo của ứng dụng Windows/Web. Những ứng dụng này vượt qua ranh giới của thiết bị và tận dụng hoàn toàn sức mạnh của Internet. Tuy nhiên, việc xây dựng nền tảng mới này đòi hỏi một ngôn ngữ có thể tận dụng hoàn toàn. Đây là một trong những yếu tố dẫn đến việc phát triển C#.
C# là một ngôn ngữ hướng đối tượng có nguồn gốc từ C và C++. Mục tiêu của C# là cung cấp một ngôn ngữ đơn giản, hiệu quả, hiệu suất và hướng đối tượng, mà vẫn quen thuộc và đồng thời cách mạng.
Lưu ý: C# có nguồn gốc từ C/C++. Do đó, nó giữ tên họ trong gia đình ngôn ngữ lập trình. Dấu # (ký hiệu thăng) trong ký hiệu âm nhạc được sử dụng để chỉ một nốt thăng và được gọi là “Sharp”; vì vậy, tên gọi được phát âm là CSharp.
Các Tính năng của Ngôn ngữ
C# có các tính năng phổ biến trong hầu hết các ngôn ngữ hướng đối tượng và thêm vào đó, nó có các tính năng riêng của ngôn ngữ, chẳng hạn như kiểm tra an toàn kiểu dữ liệu, kiểu tổng quát và chỉ mục, làm cho nó trở thành ngôn ngữ ưa thích để tạo ra nhiều loại ứng dụng.
Một số tính năng quan trọng của nó bao gồm:
- Lập trình hướng đối tượng: Lập trình ứng dụng C# tập trung vào đối tượng để mã viết một lần có thể được sử dụng lại. Điều này giúp giảm thời gian và công sức của nhà phát triển.
- Kiểm tra an toàn kiểu dữ liệu: Biến chưa được khởi tạo không thể được sử dụng trong C#. Sự tràn kiểu có thể được kiểm tra. C# là một ngôn ngữ phân biệt chữ hoa và chữ thường.
- Giải phóng bộ nhớ: Thực hiện quản lý bộ nhớ tự động từ thời gian này sang thời gian khác và giúp nhà lập trình.
- Chuẩn hóa bởi Hiệp hội Nhà sản xuất Máy tính Châu Âu (ECMA): Chuẩn này chỉ định cú pháp và ràng buộc được sử dụng để tạo chương trình C# tiêu chuẩn.
- Kiểu và Phương thức Tổng quát: Tổng quát là một loại cấu trúc dữ liệu chứa mã không thay đổi, nhưng kiểu dữ liệu của các tham số có thể thay đổi trong mỗi lần sử dụng.
- Trình lặp: Cho phép lặp (hoặc vòng lặp) trên các kiểu dữ liệu do người dùng xác định bằng vòng lặp
foreach
. - Lớp Tĩnh: Chứa chỉ các thành viên tĩnh và không yêu cầu thể hiện.
- Lớp Một phần: Cho phép người dùng chia một lớp duy nhất thành nhiều tệp mã nguồn (.cs).
Ứng dụng của C#
C# là một ngôn ngữ hướng đối tượng có thể được sử dụng trong nhiều ứng dụng khác nhau. Một số ứng dụng bao gồm:
- Ứng dụng web
- Dịch vụ web
- Ứng dụng trò chơi
- Ứng dụng doanh nghiệp quy mô lớn
- Ứng dụng di động cho máy tính bảng, PDA và điện thoại di động
- Ứng dụng máy tính để bàn độc lập đơn giản như Hệ thống Quản lý Thư viện, tạo bảng điểm học sinh và nhiều ứng dụng khác
- Ứng dụng phân phối phức tạp có thể lan rộng qua nhiều thành phố hoặc quốc gia
- Ứng dụng đám mây
Lưu ý: Các tính năng bảo mật tích hợp vào C# cho phép cung cấp các giải pháp an toàn và bảo mật cho doanh nghiệp.
Ưu điểm của C#
C# đã trở thành một ngôn ngữ lập trình ưa thích hơn so với C++ bởi vì sự đơn giản và thân thiện với người dùng của nó. Các lợi ích của C# bao gồm:
- Hỗ trợ Đa Ngôn ngữ
Mã viết bằng bất kỳ ngôn ngữ .NET nào đều có thể dễ dàng được sử dụng và tích hợp với các ứng dụng C#.
- Giao thức Internet Chung
C# cung cấp hỗ trợ rộng rãi cho XML, định dạng ưa thích cho việc định dạng thông tin trên Internet. Ngoài ra, hỗ trợ cho việc truyền tải thông qua SOAP cũng được tích hợp.
- Triển khai đơn giản
Việc triển khai các ứng dụng C# được đơn giản hóa bởi khái niệm về các bộ phận (assemblies). Một bộ phận là một bộ sưu tập tự mô tả của mã và tài nguyên. Nó chỉ định vị trí chính xác và phiên bản của bất kỳ mã nào nó cần.
- Tài liệu XML
Bình luận có thể được đặt trong định dạng XML và sau đó có thể được sử dụng theo yêu cầu để tài liệu mã của bạn. Tài liệu này có thể bao gồm mã ví dụ, thông số và tham khảo đến các chủ đề khác. Điều này có ý nghĩa cho một nhà phát triển khi tài liệu mã của anh ấy hoặc cô ấy có thể thực sự trở thành tài liệu độc lập với mã nguồn.
Quản lý Bộ nhớ
Trong các ngôn ngữ lập trình như C và C++, việc phân bổ và giải phóng bộ nhớ được thực hiện bằng tay. Thực hiện những công việc này bằng tay đồng thời tốn thời gian và khó khăn.
Ngôn ngữ C# cung cấp tính năng phân bổ và giải phóng bộ nhớ sử dụng quản lý bộ nhớ tự động. Điều này có nghĩa là không cần viết mã để phân bổ bộ nhớ khi tạo đối tượng hoặc giải phóng bộ nhớ khi không còn cần đối tượng trong ứng dụng. Quản lý bộ nhớ tự động tăng cường chất lượng mã và tăng hiệu suất và năng suất.
Giải phóng bộ nhớ
Quá trình phân bổ và giải phóng bộ nhớ sử dụng quản lý bộ nhớ tự động được thực hiện bằng sự giúp đỡ của một bộ garbage collector. Do đó, giải phóng bộ nhớ là việc tái lấy bộ nhớ tự động từ các đối tượng không còn nằm trong phạm vi. Điều này có nghĩa là khi đối tượng không còn nằm trong phạm vi, bộ nhớ sẽ được giải phóng để có thể sử dụng cho các đối tượng khác.
Hình bên dưới minh họa khái niệm về giải phóng bộ nhớ.
Lưu ý: Quá trình giải phóng bộ nhớ bao gồm hai bước:
- Xác định những đối tượng trong chương trình sẽ không được truy cập trong tương lai.
- Giành lại bộ nhớ được sử dụng bởi những đối tượng đó.
Trong trình giải phóng bộ nhớ, bộ nhớ được chia thành ba độ tuổi là Thế hệ 0, Thế hệ 1 và Thế hệ 2. Thế hệ 0 lưu trữ các đối tượng mới được tạo. Các đối tượng được lưu trữ cho đến khi Thế hệ 0 đầy. Khi Thế hệ 0 đầy, nó đánh dấu những đối tượng không được sử dụng trong một thời gian dài. Sau khi đánh dấu đối tượng, nó loại bỏ những đối tượng đó và sau đó chuyển những đối tượng còn lại sang Thế hệ 1.
Quy trình tương tự được thực hiện trong Thế hệ 1 và 2.
Có ba cách để loại bỏ đối tượng khỏi bộ nhớ như sau:
- Phương thức Dispose method – Phương thức này được gọi bởi người dùng và được sử dụng để loại bỏ những đối tượng khỏi bộ nhớ mà không có tham chiếu.
- Phương thức Finalize method – Phương thức này được gọi bởi hệ thống và được sử dụng để dọn dẹp bộ nhớ.
- Phương thức Gc.collect method – Phương thức này được sử dụng để loại bỏ đối tượng khỏi bộ nhớ một cách mạnh mẽ.
Giới thiệu về C# 9.0
C# 9.0 là phiên bản mới nhất của C# do Microsoft phát hành. C# 9.0 cung cấp một số tính năng mới, một số trong đó bao gồm:
- Records (Bản ghi) – Loại dữ liệu bản ghi cung cấp tính bất biến được hỗ trợ bởi biểu thức ‘with’.
- Relational pattern matching (Khớp mẫu liên quan) – Hầu như trong mọi phiên bản C# gần đây, một cơ chế khớp mẫu mới đã được thêm vào. Trong C# 9.0, khớp mẫu liên quan đã được thêm vào, mở rộng khả năng khớp mẫu đối với các toán tử quan hệ để thực hiện đánh giá và biểu thức so sánh. Các từ khóa mới được thêm vào trong khớp mẫu là
AND
,OR
vàNOT
. - Top level statement (Khai báo đầu trang) – Nó được sử dụng để làm cho các chương trình đơn giản hơn và bằng cách sử dụng tính năng này, phương thức main có thể bị loại bỏ và chiều dài của chương trình có thể được giảm đi.
Môi trường Visual Studio IDE
Visual Studio cung cấp môi trường để tạo, triển khai và chạy ứng dụng được phát triển bằng .NET framework. Môi trường của Visual Studio 2019 bao gồm Môi trường Phát triển tích hợp Visual Studio (IDE), là một bộ công cụ, mẫu và thư viện toàn diện cần thiết để tạo các ứng dụng .NET framework.
Giới thiệu về Visual Studio 2019
Visual Studio 2019 là một bộ công cụ phát triển hoàn chỉnh để xây dựng các ứng dụng desktop hiệu suất cao, Dịch vụ Web XML, ứng dụng di động và ứng dụng web ASP. Ngoài ra, nó cũng được sử dụng để đơn giản hóa quá trình thiết kế, phát triển và triển khai các giải pháp doanh nghiệp dựa trên nhóm.
Visual Studio 2019 là một IDE được sử dụng để đơn giản hóa quá trình phát triển ứng dụng .NET như Visual C# và Visual Basic. Lợi ích khi sử dụng Visual Studio là cho tất cả các ngôn ngữ tương thích với .NET, cùng một IDE, trình gỡ lỗi, Trình duyệt Dự án, tab Thuộc tính, Thùng đồ nghề, menu tiêu chuẩn và thanh công cụ được sử dụng. Các tính năng sau của IDE làm cho nó hữu ích trong quá trình phát triển:
- Cung cấp môi trường duy nhất để phát triển các ứng dụng .NET.
- Có nhiều ngôn ngữ lập trình để lựa chọn để phát triển ứng dụng.
- IDE có thể được tùy chỉnh dựa trên sở thích của người dùng.
- Có một trình duyệt tích hợp trong IDE được sử dụng để duyệt web mà không cần khởi chạy ứng dụng khác.
- Một chương trình có thể được thực thi có hoặc không có trình gỡ lỗi.
- Ứng dụng có thể được xuất bản trên Internet hoặc lên đĩa.
- Ứng dụng cung cấp Trợ giúp Động trên nhiều chủ đề bằng thư viện MSON.
- Cú pháp của mã được kiểm tra ngay khi người dùng nhập và thông báo lỗi tương ứng được cung cấp nếu gặp lỗi.
- IDE cung cấp trình soạn thảo mã tiêu chuẩn để viết ứng dụng .NET. Khi một từ khóa được sử dụng hoặc một dấu chấm (,) được nhập sau các đối tượng hoặc các enum, trình soạn thảo văn bản có khả năng đề xuất tùy chọn (phương thức hoặc thuộc tính) mà tự động hoàn thành văn bản cần thiết.
- IDE có một bộ trình thiết kế hình ảnh đồ họa giúp đơn giản hóa quá trình phát triển ứng dụng. Các trình thiết kế hình ảnh thường được sử dụng bao gồm:
- Trình thiết kế Mẫu Windows: Cho phép lập trình viên thiết kế bố cục của các biểu mẫu Windows và kéo và thả các điều khiển vào đó.
- Trình thiết kế Web: Cho phép lập trình viên thiết kế bố cục và yếu tố hình ảnh của các trang web ASP.NET.
- Trình thiết kế WPF: Cho phép lập trình viên tạo giao diện người dùng dành cho WPF.
- Trình thiết kế Lớp: Cho phép lập trình viên sử dụng mô hình UML để thiết kế lớp, thành viên của nó và mối quan hệ giữa các lớp.
- Trình thiết kế Dữ liệu: Cho phép lập trình viên chỉnh sửa lược đồ cơ sở dữ liệu dưới dạng đồ họa.
- IDE có trình biên dịch tích hợp để biên dịch và thực thi ứng dụng. Người dùng có thể biên dịch một tệp nguồn đơn hoặc toàn bộ dự án.
- Visual Studio 2019 cung cấp nhiều lợi ích trong quá trình phát triển. Những lợi ích chính bao gồm:
- Tăng năng suất phát triển cải thiện
- Phát triển ứng dụng cho .NET Framework 4.8 và .NET 5.0
- Phát triển các plugin mở rộng khả năng của IDE.
Các Phiên bản của Visual Studio 2019
Thành quả của việc nghiên cứu rộng rãi bởi đội ngũ Microsoft, Môi trường Phát triển tích hợp Microsoft Visual Studio, hiện có các phiên bản khác nhau như sau:
Phiên bản Visual Studio | Mô tả phiên bản |
Visual Studio Enterprise 2019 | Nó cung cấp môi trường doanh nghiệp hoàn chỉnh cho những nhà phát triển đang tìm kiếm năng suất cao và sự phối hợp mượt mà. |
Visual Studio Professional 2019 | Nó tăng cường năng suất thông qua các công cụ và dịch vụ phát triển chuyên nghiệp để xây dựng ứng dụng cho bất kỳ nền tảng nào (như Windows, Linux, và các nền tảng khác). |
Visual Studio Team Explorer 2019 | Nó cung cấp một giải pháp miễn phí cho những người không phải là nhà phát triển để tương tác với Azure DevOps Server và Azure DevOps. |
Visual Studio Community 2019 | Đó là một giải pháp miễn phí, đầy đủ tính năng và có khả năng mở rộng cho các nhà phát triển cá nhân để tạo ứng dụng cho Android, iOS, Windows và Web. |
Ngôn ngữ trong Visual Studio 2019
Visual Studio 2019 hỗ trợ nhiều ngôn ngữ lập trình như Visual Basic .NET, Visual C++, Visual C#, và Visual J#. Các lớp và thư viện được sử dụng trong Môi trường Phát triển tích hợp Visual Studio 2019 là chung cho tất cả các ngôn ngữ trong Visual Studio 2019. Điều này làm cho Visual Studio 2019 trở nên linh hoạt hơn.
Các tính năng của Visual Studio 2019
Visual Studio 2019 cung cấp một số tính năng. Một số trong số này như sau:
- Cổng công cụ toàn diện
Trong Visual Studio 2019, các nhà phát triển ở mọi trình độ kiến thức có thể sử dụng các công cụ phát triển, mà cung cấp trải nghiệm phát triển được tùy chỉnh cho nhu cầu riêng của họ.
- Giảm phức tạp trong quá trình phát triển
Visual Studio 2019 cho phép người dùng dễ dàng phát triển nhiều giải pháp dựa trên NET Framework bao gồm ứng dụng Windows, Office, Web và di động.
- Dấu chỉnh sửa
Visual Studio 2019 cung cấp một chỉ thị hình ảnh về các thay đổi đã thực hiện và chưa được lưu và các thay đổi được thực hiện trong phiên làm việc hiện tại đã được lưu vào đĩa.
- Mảnh mã
Mảnh mã là các đoạn mã nguồn C# nhỏ mà nhà phát triển có thể sử dụng nhanh chóng với sự giúp đỡ của một số phím tắt cụ thể.
- Dễ dàng khởi chạy mã:
Nó cung cấp các tùy chọn để sao chép hoặc kiểm tra mã, mở dự án hoặc giải pháp, mở một thư mục cục bộ hoặc tạo một dự án mới.
- Giao diện người dùng đơn giản hóa:
Có một chủ đề màu xanh lá cây đã được cập nhật. Chủ đề mới này bao gồm biểu tượng với các cạnh mềm, cửa sổ công cụ và thanh công cụ. Chủ đề mới này được cho là tăng năng suất của người dùng. Cập nhật này cũng sẽ có sẵn trong các chủ đề tối và sáng sớm.
- Kết quả tìm kiếm nhanh chóng:
Visual Studio 2019 bây giờ cung cấp kết quả tìm kiếm được tối ưu hóa và nhanh chóng hơn, giúp tiết kiệm thời gian và tăng cường hiệu suất.
- Sử dụng Trí tuệ Nhân tạo:
Intellicode là một bộ tính năng hỗ trợ bởi Trí tuệ Nhân tạo giúp tăng năng suất của nhà phát triển, với các tính năng như Trí tuệ Nhân tạo ngữ cảnh, định dạng mã và suy luật về quy tắc phong cách.
- CodeLens:
Code Lens là một tính năng cung cấp thông tin về các phương thức hoặc thuộc tính của một lớp liên quan đến lịch sử thay đổi, tham chiếu và trường hợp kiểm tra. Nó cũng hiển thị các công việc được liên kết với chúng cũng như tác giả và thời gian kể từ khi thay đổi đã được thực hiện. Trước đây, CodeLens chỉ có sẵn cho Visual Studio Enterprise, nhưng hiện tại trong Visual Studio 2019, nó cũng có sẵn cho cộng đồng Visual Studio. CodeLens được làm mở rộng hoàn toàn bởi Microsoft, có nghĩa rằng nó mở cửa cho các phần mở rộng của bên thứ ba. Với điều này, bên thứ ba có thể thêm trải nghiệm của riêng họ vào nó.
- Tự động khôi phục:
Visual Studio 2019 tự động lưu công việc định kỳ và do đó, giảm thiểu việc mất thông tin do đóng bất ngờ của các tệp chưa được lưu. Trong trường hợp sự cố với IDE, Visual Studio 2019 sẽ thông báo để bạn khôi phục công việc sau khi khởi động lại.
- IntelliSense:
Visual Studio 2019 có tính năng IntelliSense, trong đó gợi ý cú pháp, danh sách phương thức, biến và lớp liên tục hiển thị khi nhập mã trong Trình soạn thảo Mã, làm cho quá trình nhập mã trở nên hiệu quả hơn.
- Tối ưu hóa mã lại:
Tối ưu hóa mã cho phép các nhà phát triển tự động hóa các nhiệm vụ thông thường khi cấu trúc lại mã. Nó thay đổi cấu trúc nội bộ của mã, cụ thể là thiết kế của các đối tượng của nó, để làm cho mã trở nên dễ hiểu, dễ bảo trì và hiệu quả mà không thay đổi hành vi của nó.
Lưu ý: Tối ưu hóa mã có thể tiết kiệm rất nhiều thời gian và giảm lỗi khi chỉnh sửa và thay đổi mã. Kết quả không luôn hoàn hảo, nhưng có các cảnh báo hiển thị khi kết quả sẽ để lại mã trong tình trạng không đồng nhất hoặc khi thao tác tối ưu hóa mã không thể thực hiện.
Các phần tử của Môi trường Phát triển tích hợp Microsoft Visual Studio 2019
Visual Studio 2019 bao gồm một bộ phần tử rộng lớn, bao gồm các trình soạn thảo, hộp công cụ và các cửa sổ khác để hỗ trợ nhà phát triển trong việc tạo ứng dụng .NET.
Các phần tử quan trọng
Các phần tử quan trọng trong Môi trường Phát triển tích hợp Visual Studio 2019 là như sau:
- Trình duyệt Dự án (Solution Explorer)
Trình duyệt Dự án cung cấp một chế độ xem được tổ chức của các dự án và các tệp của chúng. Nó cũng cung cấp quyền truy cập nhanh đến các lệnh liên quan đến các dự án này. Bằng cách sử dụng Trình duyệt Dự án, bạn có thể sử dụng các trình soạn thảo Visual Studio để làm việc với các tệp ngoài bối cảnh của một giải pháp hoặc dự án.
Hình bên dưới hiển thị hình ảnh của Trình duyệt Dự án.
Nút tham chiếu bao gồm các hội tụ được tham chiếu trong dự án hiện tại. Tên của tệp nguồn là Form1.cs.
Khi một đoạn mã được viết và lưu, giải pháp .NET được lưu trong một tệp có định dạng .sln
, dự án C# được lưu trong một tệp có định dạng .csproj
và mã nguồn được lưu trong một tệp có định dạng .cs
.
- Trình soạn thảo mã
Trình soạn thảo mã được sử dụng để viết, hiển thị và chỉnh sửa mã của biểu mẫu, sự kiện và phương thức. Bạn có thể mở cửa sổ mã càng nhiều cửa sổ mã càng tốt và dễ dàng sao chép và dán mã từ cửa sổ này sang cửa sổ khác.
Hình bên dưới hiển thị trình soạn thảo mã:
- Cửa sổ thuộc tính
Cửa sổ thuộc tính được sử dụng khi tạo ứng dụng giao diện người dùng (GUI) để xem và thay đổi các thuộc tính và sự kiện của đối tượng được chọn tại thời điểm thiết kế nằm trong trình soạn thảo và trình thiết kế. Nó hiển thị các loại trường chỉnh sửa khác nhau tùy theo yêu cầu của thuộc tính cụ thể. Các trường này bao gồm hộp chỉnh sửa, danh sách thả xuống và liên kết đến hộp thoại chỉnh sửa tùy chỉnh.
Hình bên dưới hiển thị cửa sổ Thuộc tính.
- Hộp công cụ
Cửa sổ hộp công cụ hiển thị các điều khiển và thành phần có thể được thêm vào Chế độ Thiết kế của một biểu mẫu trong ứng dụng giao diện người dùng (GUI). Tuy nhiên, nội dung của cửa sổ Hộp công cụ thay đổi tùy theo loại biểu mẫu người dùng đang tạo hoặc chỉnh sửa. Ví dụ, nếu người dùng đang thêm công cụ vào một biểu mẫu Web, Hộp công cụ sẽ hiển thị các điều khiển máy chủ, điều khiển HTML, điều khiển dữ liệu và các thành phần khác mà biểu mẫu Web có thể cần.
Hình bên dưới hiển thị hộp công cụ
Để sử dụng các điều khiển hoặc thành phần từ Hộp công cụ, người dùng có thể kéo và thả điều khiển hoặc thành phần cần vào biểu mẫu. Tuy nhiên, nếu người dùng đang tạo hoặc chỉnh sửa mã trong trình soạn mã, Hộp công cụ chỉ chứa Máy tính để bàn Clipboard. Máy tính để bàn Clipboard này chứa 20 mục cuối cùng đã được cắt hoặc sao chép để chúng có thể được dán vào tài liệu nếu cần. Để dán văn bản từ Máy tính để bàn Clipboard, nhấn vào văn bản và kéo nó đến vị trí mà bạn muốn chèn.
- Trình duyệt Máy chủ (Server Explorer)
Trình duyệt Máy chủ là bảng điều khiển quản lý máy chủ được sử dụng để mở các kết nối dữ liệu, đăng nhập vào máy chủ, khám phá cơ sở dữ liệu và dịch vụ hệ thống.
Bằng cách sử dụng Trình duyệt Máy chủ, người dùng có thể thực hiện các hoạt động sau:
- Xem và lấy thông tin từ tất cả cơ sở dữ liệu mà người dùng đã kết nối
- Liệt kê các bảng cơ sở dữ liệu, chế độ xem (views), các thủ tục lưu trữ (stored procedures) và các hàm (functions)
- Mở rộng từng bảng riêng lẻ để liệt kê các cột và cơ chế (triggers) của chúng
- Mở các kết nối dữ liệu đến SQL và các cơ sở dữ liệu khác
- Đăng nhập vào máy chủ và hiển thị cơ sở dữ liệu của họ và các dịch vụ hệ thống như nhật ký sự kiện (event logs), các truy vấn tin nhắn (message queries), và nhiều hoạt động khác
- Xem thông tin về Các Dịch vụ Web có sẵn
Hình bên dưới hiển thị Trình duyệt Máy chủ.
- Cửa sổ Output
Cửa sổ Output hiển thị các thông báo trạng thái cho các chức năng khác nhau trong Môi trường Phát triển tích hợp.
Hình bên dưới hiển thị cửa sổ Output.
- Danh sách Lỗi
Với sự trợ giúp của Danh sách lỗi, tốc độ phát triển ứng dụng tăng lên. Cửa sổ Danh sách lỗi thực hiện các công việc sau:
- Hiển thị các lỗi, cảnh báo và thông báo được tạo ra khi mã được chỉnh sửa và biên dịch.
- Tìm các lỗi cú pháp được ghi chú bởi Intellisense.
- Tìm các lỗi triển khai, một số lỗi phân tích tĩnh cố định và các lỗi được phát hiện trong quá trình áp dụng các chính sách Mẫu Doanh nghiệp.
- Lọc các mục hiển thị và cột thông tin nào xuất hiện cho từng mục.
- Khi có lỗi xảy ra, người dùng có thể tìm vị trí của lỗi bằng cách nhấp đúp vào thông báo lỗi trong cửa sổ Danh sách Lỗi.
Hình bên dưới hiển thị cửa sổ Danh sách Lỗi.
- Trợ giúp Động (Dynamic Help)
Cửa sổ Trợ giúp Động cung cấp danh sách các chủ đề cụ thể cho khu vực của Môi trường Phát triển tích hợp bạn đang làm việc hoặc nhiệm vụ bạn đang thực hiện.
Tạo và Thực thi ứng dụng
Các bước để tạo, biên dịch và thực thi một chương trình như sau:
- Tạo một dự án mới
1. Khởi động Visual Studio 2019.
2. Chọn New -> Project từ menu File.
3. Trong các danh sách thả xuống, lựa chọn C#, Windows, và Console tương ứng, sau đó chọn Console Application trong hộp thoại New Project như hình hiển thị.
4. Chỉ định tên và vị trí cho dự án như được hiển thị trong hình bên dưới
5. Nhấn vào Next. Chọn framework mục tiêu là .NET 5.0 và nhấn Create. Visual Studio 2019 mở Trình soạn thảo mã với mã nguồn gốc tự động tạo ra của một lớp, như được hiển thị trong hình bên dưới.
using System;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
Console.WriteLine("This is a sample C# program.");
}
}
}
5. Xóa câu lệnh hiện có sau dấu ngoặc nhọn mở của phần định nghĩa phương thức Main(string[] args)
và thêm câu lệnh sau:
Console.WriteLine("This is a sample C# program.");
6. Lưu dự án.
- Biên dịch và Thực thi chương trình C#
Các ứng dụng console được tạo trong C# chạy trong một cửa sổ console cung cấp đầu ra dựa trên văn bản đơn giản.
Lệnh csc (CSharp Compiler) có thể được sử dụng để biên dịch một chương trình C# tại dòng lệnh. Một chương trình C# có thể được biên dịch tại dòng lệnh sử dụng cú pháp sau:
csc <file.cs>
Trong đó: <file.cs>
: Xác định tên của chương trình cần biên dịch.
Ví dụ:
Mở Developer Command Prompt for VS 2019 và duyệt đến thư mục chứa dự án vừa tạo.
csc Program.cs
Lệnh này sẽ tạo ra một tệp thực thi có tên Program.exe
.
Mở Developer Command Prompt for VS 2019 và duyệt đến thư mục chứa tệp .exe
. Sau đó, nhập tên tệp tại dòng lệnh.
Hình bên dưới hiển thị cửa sổ Developer Command Prompt for VS 2019 hiển thị cả hai hoạt động này.
Ghi chú: Tệp .exe
có tên là tệp exe cầm tay (portable EXE) vì nó chứa các hướng dẫn độc lập với máy tính. Tệp exe cầm tay hoạt động trên bất kỳ hệ điều hành nào hỗ trợ nền tảng .NET.
Biên dịch và Thực thi
Một cách khác để biên dịch và thực thi là thông qua Visual Studio 2019, mà cung cấp sự hỗ trợ cần thiết để biên dịch và thực thi các chương trình C#.
Các bước thực hiện là như sau:
- Biên dịch chương trình C#
Chọn Build <application name> từ menu Build. Hành động này sẽ tạo ra một tệp thực thi .exe
.
- Thực thi chương trình
Từ menu Debug, chọn Start Without Debugging. Hoặc bạn có thể nhấn F5 hoặc nhấp vào biểu tượng màu xanh trên thanh công cụ để thực thi ứng dụng.
Hình bên dưới hiển thị kết quả của chương trình khi được thực thi thông qua Visual Studio 2019.