Thiết kế kiểu dáng đối tượng ( xu hướng theo định hướng) trong C++ là một mô hình lập trình tổ chức thiết kế phần mềm xung quanh dữ liệu, hay đồ vật, thay vì chức năng và logic. Nó giúp tạo ra mô- đun, phục hồi được, và duy trì được mã. Bài này cung cấp những ví dụ thực tế về sự kết hợp trong C++ và thảo luận về cách đánh giá hiệu quả của việc sử dụng các kỹ thuật vẽ đồ vật.

Nguyên tắc cơ bản của thiết kế đối tượng

Các nguyên tắc phối hợp bao gồm sự kết hợp, thừa kế và biến dạng. Sự kết hợp bao gồm việc thu thập dữ liệu và phương pháp trong các lớp. Sự di truyền cho phép những lớp mới bắt nguồn từ những thứ đã có, dùng lại mã. Tính đa dạng hóa giúp các đối tượng được xem như những trường hợp của lớp cha mẹ, hỗ trợ mã linh hoạt.

Ví dụ thực tiễn: Loại phân loại hình

Hãy xem xét một cấp bậc đơn giản cho hình dạng. Lớp cơ bản [FLT:] định nghĩa giao diện thông thường cho mọi hình dạng, như diện tích tính toán. Lớp hạng có dạng ) [FLT:] [FLT:] [FLT:] và [FL:] Hình thức [FL:] thực hiện hành vi cụ thể.

class Shape {
public:
 virtual double area() const = 0;
 virtual ~Shape() {}
};

class Circle : public Shape {
private:
 double radius;
public:
 Circle(double r) : radius(r) {}
 double area() const override {
 return 3.14159 * radius * radius;
 }
};

class Rectangle : public Shape {
private:
 double width, height;
public:
 Rectangle(double w, double h) : width(w), height(h) {}
 double area() const override {
 return width * height;
 }
};

Xem xét hiệu suất

Dùng tính năng theo hướng đối tượng có thể ảnh hưởng đến hiệu suất của các yếu tố như gọi ảo và định vị bộ nhớ động. Các hàm ảo giới thiệu một chi phí nhỏ vì việc xem xét tự động. Việc sử dụng năng lượng di truyền và bộ nhớ năng động cũng có thể ảnh hưởng đến hiệu quả.

Lời mách về cách làm báp têm

  • Thu nhỏ chức năng ảo gọi trong mã hiệu suất nghiêm trọng.
  • Dùng định vị chồng khi có thể thay vì bộ nhớ động.
  • Thích sự sáng tác hơn là thừa kế cho các mối quan hệ vật thể đơn giản hơn.
  • Mã hồ sơ để xác định cổ chai liên quan đến các tính năng của Khu vực.