P1-Tìm hiểu về OOP: Class và Object

Đó là một phương pháp tổ chức code quy về đối tượng (a style of programming), khi cần thì lấy ra dùng. Các đối tượng này lưu trữ dữ liệu theo các trường thuộc tính (attributes), nắm giữ các phương thức (methods).

1. Class và Object

Trong OOP có 2 ý tưởng chính là:

+ Class: Là một bản thiết kế (bluesprint – structure) một bản cấu trúc.

+ Object/Instance: Chính là sản phẩm chúng ta tạo ra từ bản thiết kế này.

Chúng ta tạo ra các Class, sau đó xây tạo dựng các Object từ các class này để sử dụng.

Định nghĩa về Class và Instance/Object

2. Tìm hiểu về class

Trong 1 class sẽ bao gồm 2 loại sau:

Thuộc tính (attributes / properties)

  • Class tòa nhà: bạn sẽ có các thuộc tính Số tầng, địa chỉ, giờ mở cửa.
  • Class máy tính: bạn sẽ có các thuộc tính Tên CPU, bộ nhớ, tên model
  • Class Chó: sẽ có Tên, chủng loại,…

+  Phương thức (methods, behavior, functions)

  • Bạn sẽ có phương thức Tự động mở khóa cửa chẳng hạn.
  • máy tính: là các phương thức như bật, tắt máy, khởi động lại.
  • chó: có sủa, có chạy ,..v.v..

Hình tổng kết với ví dụ đối tượng 1 chiếc xe

3. Xây dựng một Class

Đầu tiên, bạn tạo Class và định nghĩa các thuộc tính (attributes) & phương thức (methods) của nó. Tiếp đến  quá trình bạn tạo ra các đối tượng của class này gọi là thực thể hóa (instantiate)

Ví dụ: bạn đã xây dựng Class máy tính (với att: CPU, bộ nhớ, model  và methods: tắt();  mở(); khởi động lại()). Sau đó bạn tạo ra các Thực thể (objects/ instances) của class này. Tùy thuộc vào từng ngôn ngữ mà cách khai báo sẽ khác nhau.

4. Naming conventions trong xây dựng class

Mỗi ngôn ngữ sẽ có cú pháp xây dựng class khác nhau. Tuy nhiên, để tối ưu hóa code và đạt mục tiêu cleancode, thì chúng ta vẫn nên tuân thủ theo một bộ quy ước chung nhất định. Được trình bày ở dưới bảng sau:

Identifier type Note Example
Classes Tên Class nên là Danh từ đặt theo quy tắc UpperCamelCase – mọi kí tự đầu mỗi từ đều viết hoa. class Raster;
Interface Tên của Interface nên đặt tương tự theo quy tắc của Class interface RasterDelegate; 
interface Storing;
 Variables;

Local variables;

Instance variables;

Class variables;

Các Local variables, instance variables, và class variables đặt theo quy tắc lowerCamelCase – viết thường kí tự đầu từ đầu, viết hoa các kí tự đầu của các từ còn lại.

Tên các biến đặt ngắn nhưng rõ nghĩa.

Không nên đặt tên biến chỉ 1 kí tự ngoại trừ nếu đó chỉ là biến dùng “tạm thời”. Tên phổ biến của các biến tạm thời như: i, j, k, m, n cho kiểu integers; c, d, e cho kiểu character.

Với kiểu boolean đặt với: is___

 

 int i;

char c;

float myWidth;

bool isChecked;

 Methods  Các method nên là động từ, theo quy tắc lowerCamelCase  run();

getImage();

 Constants  Các hằng số nên được viết hoa toàn bộ, phân cách bởi gạch dưới  static final float MAX_PARTICIPANT = 10;

 

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *