OOP: Constructor – Destructor – Overloading

A. Constructor Được gọi là hàm tạo, có hai loại hàm tạo : – Hàm tạo không có tham số – Hàm tạo có tham số truyền vào. Khi bạn sử dụng hàm tạo, nó sẽ tạo các giá trị cho các trường thuộc tính của đối tượng mới được triển khai.  public class Bird     {         //Field         protected string name;     … Continue reading OOP: Constructor – Destructor – Overloading

Tìm hiểu Value Types and Reference Types

Kiểu biến và kiểu tham chiếu là những khái niệm rất cơ bản và quan trọng trong ngôn ngữ lập trình . NET. A. Value Type 1. Variables Khi bạn khai báo một biến, nó được cấp phát một chỗ trên bộ nhớ Ram. Vùng nhớ của biến lúc này có 3 thành phần: Kiểu của biến (Type), tên của biến (Name) và giá trị … Continue reading Tìm hiểu Value Types and Reference Types

Tìm hiểu về Convert, Parse – Exact, TryParse – Exact, Casting

Phần này chúng ta tìm hiểu các phương thức giúp bạn chuyển đổi, ép kiểu , phân tích bất kỳ kiểu dữ liệu nào sang kiểu mới. Tuy nhiên sẽ không có so sánh về khả năng xử lý của chúng trong công việc. Casting & Type Conversions Trong .NET thông thường có các loại chuyển đổi kiểu dữ liệu sau: Implicit Conversions: Chuyển đổi … Continue reading Tìm hiểu về Convert, Parse – Exact, TryParse – Exact, Casting

Boxing và Unboxing

Boxing là quá trình chuyển đổi một loại giá trị sang kiểu Object  hoặc bất kỳ loại Interface nào được  thực hiện bởi loại giá trị đó. Object lưu trữ giá trị đó trên một “heap” quản lý. Unboxing ngược lại là việc chuyển đổi từ ​​các giá trị của Object đã lưu thành kiểu giá trị cụ thể. Hay nói cách khác Boxing là kiểu chuyển đổi ngầm từ Value Types sang … Continue reading Boxing và Unboxing

Adapter

Dẫn nhập thực tiễn: Có một super dev triển khai code corebank trong ngân hàng, sau một thời gian anh ta đã tích hợp được thư viện thanh toán SmartLink với hệ thống core, tuy nhiên chỉ sau đó vài năm khi ngân hàng nhà nước bắt buộc phải tích hợp với Banknet. Mặc dù cả hai bộ thư viện từ hai mạng thanh toán … Continue reading Adapter

Singleton

    Dẫn nhập thực tế: Hầu hết các đối tượng trong một ứng dụng đều chịu trách nhiệm cho công việc của chúng và truy xuất dữ liệu tự lưu trữ (self-contained data) và các tham chiếu trong phạm vi được đưa ra của chúng. Tuy nhiên, có nhiều đối tượng có thêm những nhiệm vụ và có ảnh hưởng rộng hơn, chẳng hạn … Continue reading Singleton

Factory Method

Dẫn nhập thực tế: Mỗi gia đình đều có sở thích nuôi thú cưng khác nhau. Có nhà thì nuôi mèo, có nhà thì nuôi chó. Nếu đưa bài toán này vào lập trình, chúng ta sẽ có các đối tượng: Lớp Family Family cung cấp thông tin về Pet: GetMyPet() FamilyHaveDog, FamilyHaveCat kế thừa từ Family Lớp Pet Pet cung cấp thông tin GetInforPet() Dog, … Continue reading Factory Method

Builder

Dẫn nhập tình huống thực tế: Trong ví dụ này, chúng ta hãy có một cửa hàng có nhiều loại xe (Verhicle). Nhưng Verhical lại có nhiều biến thể khác nhau: xe Scooter, xe máy, xe oto,… Có một số bước cần được theo dõi trước khi nhận được sản phẩm cuối cùng như: thêm bánh xe ( wheel) , sau đó thêm khung xe (body), … Continue reading Builder

Abstract Factory

Dẫn nhập tình huống thực tế: Chúng ta hãy xem xét thực tế các loại động vật trên hai châu lục: châu Úc và châu Phi. Sẽ có 2 loại động vật chính ở mỗi châu lục: Carnivore (Động vật ăn thịt) Herbivore (Động vật ăn cỏ) Như hình mô tả, ở mỗi châu lục chúng ta lại có mỗi loại động vật thuộc Carnivore hoặc Herbivore … Continue reading Abstract Factory