Giới thiệu về các loại bản ghi trong C# với các ví dụ

Gioi Thieu Ve Cac Loai Ban Ghi Trong C Voi Cac Vi Du



Các loại bản ghi là một tính năng mới được giới thiệu trong C# 9 cung cấp một cú pháp đơn giản hóa để tạo các lớp được sử dụng chủ yếu để lưu trữ dữ liệu. Loại bản ghi là một lớp xác định một tập hợp các thuộc tính để chứa dữ liệu nhưng cũng bao gồm các tính năng khác như so sánh đẳng thức, hàm băm, v.v. Bài viết này sẽ giới thiệu khái niệm về các loại bản ghi trong C# và khám phá những lợi ích và hạn chế của chúng.

Nhu cầu của loại bản ghi là gì

Một trong những lợi ích chính của việc sử dụng các loại bản ghi là chúng cung cấp cú pháp ngắn gọn hơn để xác định các lớp chỉ chứa dữ liệu. Điều này làm cho mã dễ đọc và dễ hiểu hơn, đồng thời giảm số lượng mã cần viết. Ngoài ra, các loại bản ghi được thiết kế để không thay đổi theo mặc định, giúp ngăn ngừa các lỗi do trạng thái có thể thay đổi gây ra.

Một ưu điểm khác của việc sử dụng các loại bản ghi là chúng có hỗ trợ tích hợp sẵn để so sánh đẳng thức, mã băm và biểu diễn chuỗi.







Giới thiệu về các loại bản ghi trong C#

Các loại bản ghi trong C# cung cấp một cách ngắn gọn để xác định các loại cho các cấu trúc dữ liệu nhỏ, không thay đổi. Khi bạn tạo một bản ghi mới, bạn có thể chuyển các giá trị cho các thuộc tính trong hàm tạo, sau đó truy cập các giá trị đó bằng cú pháp thuộc tính. Chúng được sử dụng để đơn giản hóa việc tạo và sử dụng các đối tượng có cấu trúc được xác định rõ và không cần sửa đổi sau khi tạo.



hồ sơ công khai < Tên bản ghi > ( < Danh sách tham số > ) ;

Từ khóa công khai làm cho loại bản ghi có thể truy cập được đối với các lớp khác trong chương trình. Từ khóa bản ghi xác định loại đối tượng, theo sau là tên của loại bản ghi. Danh sách tham số xác định các thuộc tính của loại bản ghi. Đây là một ví dụ đã được thực hiện trong đó tôi đã lưu trữ các chi tiết của công ty như tên, bộ phận và danh mục, bên dưới là mã cho nó:



sử dụng Hệ thống;

// Xác định một bản ghi có tên CompanyDetails với ba thuộc tính chuỗi: Tên, Bộ phận và Danh mục
hồ sơ Công tyChi tiết ( Tên chuỗi, Bộ phận chuỗi, Phân loại chuỗi ) ;

chương trình lớp học
{
khoảng trống tĩnh chính ( sợi dây [ ] tranh luận )
{
// Tạo một phiên bản mới của bản ghi CompanyDetails và vượt qua TRONG các giá trị thuộc tính
CompanyDetails công ty = CompanyDetails mới ( 'Gợi ý Linux' , 'Viết nội dung' , 'Linux' ) ;

// In ra tên công ty, bộ phận và danh mục
Console.WriteLine ( $ 'Tên công ty: {company.Name}' ) ;
Console.WriteLine ( $ 'Bộ phận: {công ty.Bộ phận}' ) ;
Console.WriteLine ( $ 'Danh mục: {company.Category}' ) ;
}
}

Trong chương trình này, chúng tôi tạo một bản ghi có tên CompanyDetails có ba thuộc tính: Tên, Bộ phận và Danh mục, mỗi thuộc tính là một chuỗi. Sau đó, chúng tôi tạo một phiên bản mới của CompanyDetails được gọi là công ty và chuyển các giá trị cho từng thuộc tính. Các câu lệnh Console.WriteLine sau đó xuất các giá trị của các thuộc tính Tên, Bộ phận và Danh mục của đối tượng công ty, đây là đầu ra của mã:





Bạn cũng có thể xác định nhiều loại bản ghi trong C# và mỗi loại bản ghi có thể có một bộ thuộc tính riêng. Ví dụ: bạn có thể xác định một loại bản ghi cho Nhân viên và loại khác cho chi tiết công ty và đây là mã cho điều đó:



sử dụng Hệ thống;

// Xác định một bản ghi để lưu trữ thông tin chi tiết của một công ty
hồ sơ Công tyChi tiết ( Tên chuỗi, Bộ phận chuỗi, Phân loại chuỗi ) ;

// Định nghĩa một bản ghi để lưu trữ thông tin chi tiết của một nhân viên
ghi lại chi tiết nhân viên ( chuỗi Tên, int EmployeeID, int Tuổi ) ;

chương trình lớp học
{
khoảng trống tĩnh chính ( sợi dây [ ] tranh luận )
{
// Tạo một phiên bản của bản ghi CompanyDetails và khởi tạo các giá trị của nó
var companyDetails = new CompanyDetails ( 'Gợi ý Linux' , 'Viết nội dung' , 'Linux' ) ;

// In ra các giá trị của bản ghi CompanyDetails bằng phép nội suy chuỗi
Console.WriteLine ( $ 'Tên công ty: {companyDetails.Name}' ) ;
Console.WriteLine ( $ 'Bộ phận: {companyDetails.Bộ phận}' ) ;
Console.WriteLine ( $ 'Danh mục: {companyDetails.Category}' ) ;

// Tạo một phiên bản của bản ghi EmployeeDetails và khởi tạo các giá trị của nó
var employeeDetails = new EmployeeDetails ( 'Đánh dấu' , 7834 , 25 ) ;

// In ra các giá trị của bản ghi EmployeeDetails bằng phép nội suy chuỗi
Console.WriteLine ( $ 'Tên nhân viên: {employeeDetails.Name}' ) ;
Console.WriteLine ( $ 'ID nhân viên: {employeeDetails.EmployeeID}' ) ;
Console.WriteLine ( $ 'Tuổi nhân viên: {employeeDetails.Age}' ) ;
}
}

Trước tiên, chúng tôi xác định loại bản ghi CompanyDetails với ba thuộc tính: CompanyName, Department và Category. Sau đó, chúng tôi tạo một phiên bản mới của bản ghi CompanyDetails và khởi tạo các thuộc tính của nó với các giá trị “Gợi ý Linux”, “Viết nội dung” và “Linux”.

Tiếp theo, chúng tôi xác định một loại bản ghi khác là EmployeeDetails với ba thuộc tính: Tên, ID nhân viên và Tuổi. Sau đó, chúng ta tạo một phiên bản mới của bản ghi EmployeeDetails và khởi tạo các thuộc tính của nó với các giá trị “Mark”, 7834 và 25. Cuối cùng, chúng ta sử dụng các câu lệnh Console.WriteLine để xuất các giá trị thuộc tính của cả hai bản ghi CompanyDetails và EmployeeDetails, tại đây là đầu ra của mã:

Phần kết luận

Các loại bản ghi là một tính năng mới được giới thiệu trong C# 9, cung cấp một cú pháp đơn giản hóa để tạo các lớp lưu trữ dữ liệu. Chúng cung cấp một số lợi ích, bao gồm cú pháp ngắn gọn, so sánh đẳng thức tự động, băm, in và dễ dàng tạo các đối tượng bất biến.

Tuy nhiên, chúng cũng có một số hạn chế, chẳng hạn như không có khả năng kế thừa từ các lớp khác và chức năng hạn chế đối với logic phức tạp. Nhìn chung, các loại bản ghi là một công cụ hữu ích cho các nhà phát triển C# và có thể cải thiện khả năng đọc và khả năng bảo trì mã của họ.