Mẫu lớp Python
Quy trình công nghệ phần mềm thường tiết lộ cho chúng ta nhiều yếu tố dư thừa bên trong cấu trúc và mã phần mềm của chúng ta. Biết được điều này, một số trách nhiệm chính của nhà phát triển là viết mã dễ hiểu và dễ bảo trì - không chỉ là giải pháp Show Tuy nhiên, các dự án thường trở nên phức tạp hơn theo thời gian, làm cho cấu trúc phần mềm ban đầu trở thành một yếu tố quan trọng phải được cân nhắc kỹ lưỡng và triển khai ngay từ đầu
Các mẫu thiết kế là một tập hợp các tiêu chuẩn được sử dụng để tối ưu hóa các tác vụ cụ thể liên quan đến mô hình Lập trình hướng đối tượng (OOP). Chúng nhằm mục đích giảm tổng số dòng mã, tối ưu hóa cấu trúc và chuẩn hóa kiến trúc phần mềm Mô hình Lập trình hướng đối tượng cung cấp một cấu trúc dựa trên các lớp, trong đó mỗi lớp đại diện cho một bản thiết kế cho một đối tượng (ví dụ của lớp đó) có các thuộc tính và phương thức riêng của nó. Các lớp này có liên quan và có các phụ thuộc, thành phần, kế thừa riêng, v.v. Chuyển các vấn đề và cấu trúc thực tế sang các giải pháp phần mềm là động lực chính để triển khai cấu trúc này Trong hướng dẫn này, chúng ta sẽ khám phá một trong các Mẫu thiết kế hành vi và cách triển khai nó trong Python. phương pháp mẫu Mẫu thiết kế này sẽ cung cấp cho chúng ta một phương pháp chung bao gồm nhiều bước. Sau đó, các lớp liên quan đến lớp phương thức mẫu của chúng tôi có thể gọi các bước này riêng lẻ hoặc ghi đè lên chúng Ngoài ra, chúng ta sẽ tìm hiểu cách sử dụng Thư viện ABC trong Python, thư viện này xác định mối quan hệ kế thừa cho các lớp cơ sở trừu tượng (ABC). Chúng tôi sẽ sử dụng thư viện này để tạo một ví dụ phương pháp mẫu đơn giản Mẫu thiết kế hành viPhương thức mẫu là một mẫu thiết kế hành vi. Mẫu thiết kế hành vi chính xác là gì?
Mẫu thiết kế phương pháp mẫuMẫu thiết kế phương thức mẫu cho phép chúng ta tạo một lớp cơ sở chứa một số bước cần thiết để hoàn thành một quy trình. Khi bạn xác định các bước này bằng một mẫu, có thể tạo một hoặc nhiều lớp cụ thể và ghi đè lên các bước mẫu. Điều này cho phép bạn thực hiện một số hoặc tất cả các bước, tùy thuộc vào lớp cụ thể mà không ghi đè lên toàn bộ quy trình Để sử dụng phương thức mẫu, chúng tôi yêu cầu một lớp trừu tượng. Lớp trừu tượng về cơ bản là một quy trình chính được chia thành các bước nhỏ hơn hoặc các quy trình nhỏ. Nói cách khác, lớp trừu tượng sẽ sử dụng phương thức mẫu (quy trình chính) và trong mẫu, chúng tôi sẽ tìm thấy các cuộc gọi đến các bước nhỏ hoàn thành quy trình chính. Các quy trình nhỏ này sẽ là các phương thức/hàm mà các lớp cụ thể có thể gọi Sử dụng một lớp trừu tượng có nghĩa là chúng ta không phải khởi tạo toàn bộ lớp cơ sở để có quyền truy cập vào các bước được xác định bằng phương thức mẫu. Thay vào đó, chúng ta có thể tạo các lớp con từ lớp trừu tượng và chỉ ghi đè lên các bước chúng ta cần trong các lớp con riêng lẻ Khi chúng tôi xác định lớp trừu tượng, chúng tôi có thể tạo các lớp cụ thể sẽ ghi đè lên các bước chúng tôi cần. Chúng tôi sẽ sử dụng mối quan hệ thừa kế để đạt được điều này. Tùy thuộc vào ngữ cảnh của lớp cụ thể, chúng tôi sẽ ghi đè tất cả các bước hoặc chỉ một số trong số chúng Chúng ta có thể biểu diễn cấu trúc của phương thức mẫu bằng sơ đồ lớp như thế này, phù hợp với mô hình OOP Ở đây bạn có thể thấy rằng chúng ta bắt đầu bằng cách tạo một lớp trừu tượng với một phương thức mẫu bao gồm nhiều bước/hàm. Từ lớp trừu tượng này, chúng tôi tạo hai lớp cụ thể sử dụng các bước khác nhau của phương thức mẫu Phương pháp mẫu so với. phương pháp nhà máyCó một số nhầm lẫn về sự khác biệt giữa Mẫu phương thức Mẫu và Mẫu Phương thức xuất xưởng. Điều này là do cấu trúc của chúng tương tự nhau, mặc dù chúng không giống nhau. Factory Method là một Creational Pattern được sử dụng để tạo các đối tượng từ một superclass. Ngược lại, Phương thức mẫu là một Mẫu hành vi được sử dụng để xác định một phương thức chung bao gồm các bước có thể được sửa đổi bởi các lớp con của lớp trừu tượng, chứa phương thức mẫu
Bây giờ chúng ta đã làm rõ sự khác biệt giữa các mẫu này, chúng ta có thể khám phá cách triển khai Mẫu thiết kế phương thức mẫu trong Python Ghi chú. Python không hỗ trợ các lớp trừu tượng mà không sử dụng một thư viện cụ thể. Để sử dụng các liên kết lớp trừu tượng, chúng ta cần nhập thư viện ABC Thư viện ABCThư viện ABC cung cấp cơ sở hạ tầng để quản lý các lớp cơ sở trừu tượng trong Python. Điều này có nghĩa là chúng ta có thể tạo các mối quan hệ lớp như kế thừa hoặc triển khai cho các lớp trừu tượng - điều cần thiết để triển khai hầu hết các mẫu thiết kế và đặc biệt quan trọng trong trường hợp của Phương thức mẫu Khi nào nên sử dụng Mẫu phương thức mẫu?Bạn sẽ muốn sử dụng Phương thức Mẫu khi bạn cần sử dụng hoặc sửa đổi một số hoặc tất cả các bước của thuật toán. Trong những trường hợp này, bạn sẽ cần phân biệt các bước của thuật toán hoặc quy trình của mình, làm cho chúng có thể truy cập riêng lẻ thông qua kế thừa hoặc triển khai Hãy xem một ví dụ thực tế Chúng tôi có hai nhóm nhà nghiên cứu, một từ Đại học A và một từ Đại học B. Hai nhóm này đang nghiên cứu tác động của việc cách ly do các chính phủ thực hiện để đối phó với đại dịch SARS‑CoV‑2. Cả hai nhóm đều có quy trình nghiên cứu cơ bản giống nhau. Quy trình nghiên cứu cơ bản là khuôn mẫu mà hai nhóm nghiên cứu có thể sử dụng để tiến hành điều tra. Tuy nhiên, các nhóm nghiên cứu có thể tùy chỉnh quá trình nghiên cứu về
Hãy biểu diễn nghiên cứu này bằng sơ đồ lớp trước khi tạo mô hình bằng mã Python Hướng dẫn nghiên cứu gồm 4 bước
Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó Chúng tôi đã có lớp sơ đồ của mình, chúng tôi chỉ cần thay đổi nó để nó phù hợp với vấn đề của chúng tôi Cập nhật sơ đồ để phù hợp với các điều kiện chúng tôi đã chỉ định, chúng tôi kết thúc với mô hình sau Triển khai Mẫu thiết kế phương thức mẫu trong PythonBây giờ chúng ta đã có phác thảo cho các lớp cụ thể và trừu tượng của mình, hãy triển khai chúng trong Python Hãy bắt đầu với lớp trừu tượng của chúng ta - Đầu tiên, chúng ta sẽ nhập thư viện ABC. Thư viện này chứa một lớp có tên là Tiếp theo, chúng tôi sẽ xác định các bước của chúng tôi dưới dạng các phương thức lớp. Các phương thức này sẽ trống ngay bây giờ, nhưng khi chúng tôi xác định các lớp con - chúng sẽ ghi đè lên các bước Lưu ý cách chúng tôi thêm trình trang trí Bây giờ hãy định nghĩa các lớp cụ thể của chúng ta. Chúng ta đang nói về Đại học A và B, với các bước tương ứng. Chúng tôi sẽ tạo một lớp con cho cả hai trường đại học bằng cách sử dụng mẫu Đối với cả hai lớp, chúng ta phải nhập lớp Hãy bắt đầu với phân lớp đầu tiên
Chúng tôi sẽ lưu cái này trong một tệp Python có tên là 1. Bây giờ hãy thiết lập phân lớp thứ hai
Chúng tôi sẽ lưu cái này trong một tệp Python có tên là 2Lưu ý rằng chúng tôi đã chỉ ra trường đại học nào đang áp dụng các bước nào. Điều này giúp chúng tôi đánh giá cao sự thay đổi giữa hai lớp cụ thể Mô hình phương thức mẫu của chúng ta, bao gồm lớp trừu tượng và lớp cụ thể, đã hoàn thành. Bây giờ, hãy tạo tập lệnh ứng dụng khách của chúng tôi để chúng tôi có thể áp dụng mô hình Đầu tiên, hãy nhập các lớp học của chúng tôi. Điều này liên quan đến việc nhập lớp trừu tượng và hai lớp cụ thể. Sau đó, chúng ta sẽ tạo một hàm nhận đối tượng Đây là vẻ đẹp của mối quan hệ thừa kế - bởi vì các lớp đại học là các lớp con từ Chúng ta có thể chuyển đối tượng 2 hoặc 3 làm đối số vào hàm gọi phương thức mẫu (đây là 4 bên dưới) và các bước được ghi đè bởi lớp cụ thể sẽ thay đổi cách phương thức mẫu thực thiỞ đây chúng tôi sử dụng cả hai lớp, vì vậy chúng tôi có thể so sánh kết quả đầu ra Chạy mã này, chúng tôi thu được đầu ra sau
Phần kết luậnPhương thức mẫu là một cách hiệu quả để phân phối nhiệm vụ giữa các lớp, xác định lại quy trình và giảm mã. Áp dụng mẫu thiết kế này cho một thuật toán hoặc giải pháp có thể giúp bạn tránh các phương thức dư thừa và hợp lý hóa các quy trình thực thi dài hơn Phương thức mẫu cũng là một ví dụ về việc sử dụng đúng mô hình OOP. Không thể áp dụng mô hình này trong mọi trường hợp, vì vậy hãy đảm bảo hiểu rõ nhu cầu của dự án trước khi sử dụng mô hình Lớp có phải là một mẫu trong Python không?Hiểu về Lớp học
. Các đối tượng bao gồm các biến thành viên và có hành vi liên quan đến chúng. Trong một ngôn ngữ lập trình như Python, chúng ta có thể tạo một lớp bằng từ khóa "class". A class is considered a code template used for creating objects. Objects consist of member variables and have behaviour related to them. In a programming language like Python, we can create a class using the keyword "class".
${} trong Python là gì?Nó có cú pháp hơi giống với. format() khi được thực hiện với từ khóa, nhưng thay vì dấu ngoặc nhọn để xác định trình giữ chỗ, nó sử dụng ký hiệu đô la ($). ${} cũng hợp lệ và phải được đặt khi một chuỗi hợp lệ xuất hiện sau phần giữ chỗ . Xem cú pháp cho các tình huống khác nhau.
Mẫu lớp là gì?Mẫu lớp cung cấp thông số kỹ thuật để tạo lớp dựa trên tham số . Các mẫu lớp thường được sử dụng để triển khai các vùng chứa. Một mẫu lớp được khởi tạo bằng cách chuyển một tập hợp các loại nhất định cho nó dưới dạng đối số mẫu.
Sự khác biệt giữa mẫu lớp và lớp mẫu là gì?Một lớp riêng lẻ xác định cách tạo nhóm đối tượng, trong khi mẫu lớp xác định cách tạo nhóm lớp. Lưu ý sự khác biệt giữa các thuật ngữ lớp mẫu và lớp mẫu. Mẫu lớp học . là mẫu được sử dụng để tạo các lớp mẫu . |