• Thuộc tính (Property) trong C# Thuộc tính (Property) trong C#
    Thuộc tính - Property là các thành viên được đặt tên của các lớp, cấu trúc, và Interface. Các biến thành viên hoặc các phương thức trong một lớp hoặc cấu trúc được gọi là các Field. Thuộc tính là một sự kế thừa của các Field và được truy cập bởi sử dụng cùng cú pháp. Chúng sử dụng accessor thông qua các giá trị của các Private Field có thể được đọc, được viết và được thao tác.
  • Đa luồng (Multithread) trong C# Đa luồng (Multithread) trong C#
    [Thread trong c#] Một thread được định nghĩa như là một đường thực thi (execution path) của một chương trình. Mỗi Thread định nghĩa một dòng điều khiển duy nhất. Nếu application của bạn gồm các hoạt động phức tạp và tốn thời gian, thì nó thường là rất hữu ích khi thiết lập các execution path hoặc Thread, với mỗi Thread thực hiện một công việc cụ thể.
  • Unsafe code trong C# Unsafe code trong C#
    C# cho phép sử dụng các biến con trỏ trong một hàm của khối code khi nó được đánh dấu bởi unsafe modifier. Khái niệm unsafe code hoặc unmanaged code trong C# là một khối code mà sử dụng một biến con trỏ.
  • Phương thức nặc danh trong C# Phương thức nặc danh trong C#
    Chúng ta đã bàn luận rằng Delegate được sử dụng để tham chiếu bất kỳ phương thức nào mà có cùng dấu hiệu như trong Delegate đó. Nói cách khác, bạn có thể gọi một phương thức mà có thể được tham chiếu bởi một Delegate bởi sử dụng đối tượng Delegate đó.
  • Generic trong C# Generic trong C#
    Generic trong C# cho phép bạn trì hoãn các đặc điểm kỹ thuật (Specification) của kiểu dữ liệu của việc lập trình các phần tử trong một lớp hoặc một phương thức, tới khi nó thực sự được sử dụng trong chương trình. Nói cách khác, Generic cho phép bạn viết một lớp hoặc phương thức mà có thể làm việc với bất kỳ kiểu dữ liệu nào.
  • Collection trong C# Collection trong C#
    Các lớp Collection là các lớp đặc biệt để lưu giữ và thu hồi dữ liệu. Những lớp này cung cấp sự hỗ trợ cho Stack, Queue, List, và Hash Table. Đa số các lớp Collection trong C# triển khai cùng các Interface.
  • Sự kiện (Event) trong C# Sự kiện (Event) trong C#
    Sự kiện (Event) là các hành động của người dùng, ví dụ như nhấn phím, click, di chuyển chuột… Các Application cần phản hồi các sự kiện này khi chúng xuất hiện. Ví dụ, các ngắt (interrupt). Các sự kiện (Event) được sử dụng để giao tiếp bên trong tiến trình.
  • Delegate trong C# Delegate trong C#
    Delegate trong C# là tương tự như con trỏ tới các hàm, trong C hoặc trong C++. Delegate là một biến kiểu tham chiếu chứa tham chiếu tới một phương thức. Tham chiếu đó có thể được thay đổi tại runtime.
  • Indexer trong C# Indexer trong C#
    Indexer trong C# giúp lập chỉ mục cho đối tượng, ví dụ như một mảng. Khi bạn định nghĩa indexer cho một lớp, thì lớp này vận hành tương tự như một virtual array (mảng ảo). Sau đó, bạn có thể truy cập instance (sự thể hiện) của lớp này nhờ toán tử truy cập mảng trong C# là ([ ]).
  • Reflection trong C# Reflection trong C#
    Các đối tượng Reflection được sử dụng để thu được thông tin kiểu tại runtime. Các lớp này cung cấp quyền truy cập tới metadata của chương trình đang chạy trong namespace System.Reflection trong C#.
  • Attribute trong C# Attribute trong C#
    Thuộc tính (attribute) trong C#, là một thẻ khai báo, được sử dụng để truyền thông tin tới runtime về các hành vi của các phần tử khác nhau như các lớp, phương thức, cấu trúc, enum, assembly… trong chương trình của bạn. Bạn có thể thêm thông tin khai báo vào chương trình bằng cách sử dụng Attribute.
  • File I/O trong C# File I/O trong C#
    Một file là một tập hợp dữ liệu được lưu trữ trên ổ đĩa với một tên cụ thể và một đường dẫn (path) thư mục. Khi một file được mở để đọc hoặc ghi, nó trở thành một stream.
  • Xử lý ngoại lệ (Try/Catch/Finally) trong C# Xử lý ngoại lệ (Try/Catch/Finally) trong C#
    Một Exception (ngoại lệ) là một vấn đề xuất hiện trong khi thực thi một chương trình. Một Exception trong C# là một phản hồi về một tình huống ngoại lệ mà xuất hiện trong khi một chương trình đang chạy, ví dụ như chia cho số 0.
  • Regular Expression trong C# Regular Expression trong C#
    Một regular expression là một pattern mà có thể được so khớp với một văn bản đầu vào. .Net Framework cung cấp một phương tiện regular expression mà cho phép so khớp với như thế. Trong C#, một pattern gồm một hoặc nhiều hằng ký tự, toán tử, hoặc construct.
  • Chỉ thị tiền xử lý trong C# Chỉ thị tiền xử lý trong C#
    Các chỉ thị tiền xử lý (Preprocessor Directive) cung cấp chỉ lệnh tới trình biên dịch để tiền xử lý thông tin trước khi quá trình biên dịch thực sự bắt đầu. Tất cả chỉ thị tiền xử lý trong C# bắt đầu với #, và chỉ có các ký tự white-space có thể xuất hiện ở trước một chỉ thị tiền xử lý trong một dòng. Các chỉ thị tiền xử lý trong C# không là các lệnh, vì thế chúng không kết thúc với một dấu chấm phảy (;).
  • Namespace trong C# Namespace trong C#
    Trong C#, namespace được thiết kế để giữ một tập hợp các tên được phân biệt riêng rẽ nhau. Các tên lớp giống nhau nhưng được khai báo ở các namespace khác nhau thì không xung đột với nhau
  • Interface trong C# Interface trong C#
    Một Interface được định nghĩa như là một giao ước có tính chất cú pháp (syntactical contract) mà tất cả lớp kế thừa Interface đó nên theo. Interface định nghĩa phần "Là gì" của giao ước và các lớp kế thừa định nghĩa phần "Cách nào" của giao ước đó.
  • Nạp chồng toán tử trong C# Nạp chồng toán tử trong C#
    Operator Overloading là Nạp chồng toán tử. Bạn có thể tái định nghĩa hoặc nạp chồng hầu hết các toán tử có sẵn trong C#.
  • Tính đa hình trong C# Tính đa hình trong C#
    Tính đa hình trong C# có thể là static hoặc dynamic. Trong đó, kiểu đa hình static có thể được gọi là đa hình tĩnh, phản hồi tới một hàm được xác định tại thời điểm biên dịch và kiểu đa hình dynamic có thể được gọi là đa hình động, được xác định trong thời gian chạy.
  • Tính kế thừa trong C# Tính kế thừa trong C#
    Một trong những khái niệm quan trọng nhất trong lập trình hướng đối tượng là Tính kế thừa (Inheritance). Tính kế thừa cho phép chúng ta định nghĩa một lớp trong điều kiện một lớp khác, mà làm cho nó dễ dàng hơn để tạo và duy trì một ứng dụng. Điều này cũng cung cấp một cơ hội để tái sử dụng tính năng code và thời gian thực thi nhanh hơn.