Coding Conventions và các chuẩn viết code trong PHP

Chúng tôi vui mừng chia sẻ kiến thức về từ khóa Code convention la gi và hy vọng rằng nó sẽ hữu ích cho bạn đọc. Bài viết tập trung trình bày ý nghĩa, vai trò và ứng dụng của từ khóa này trong việc tối ưu hóa nội dung trang web và chiến dịch tiếp thị trực tuyến. Chúng tôi cung cấp các phương pháp tìm kiếm, phân tích và lựa chọn từ khóa phù hợp, cùng với các chiến lược và công cụ hữu ích. Hy vọng rằng thông tin mà chúng tôi chia sẻ sẽ giúp bạn xây dựng chiến lược thành công và thu hút lưu lượng người dùng. Xin chân thành cảm ơn sự quan tâm và hãy tiếp tục theo dõi blog của chúng tôi để cập nhật những kiến thức mới nhất.

  • Coding conventions là tập hợp những nguyên tắc chung khi lập trình nhằm làm cho code dễ đọc, dễ hiểu, do đó dễ quản lý, bảo trì hơn.
  • Ví dụ: Nếu ta xem code của tất cả chúng ta như thể một cô gái. Thì tất cả chúng ta thích một cô gái xinh đẹp, thật sạch sẽ hay thích một cô gái xấu xí lại còn luộm thuộm ? Và tôi nghĩ tất cả chúng ta có lời giải đáp rồi đúng không ạ. Nếu như không phải giống tôi nghĩ thì chúc mừng bạn:)))
  • Coding conventions có những điểm chung và điểm riêng biệt tuỳ theo tiếng nói, tuỳ theo cộng đồng, nhưng được phần lớn các lập trình viên trên thế giới hầu xác nhận và tuân theo.

Các cú pháp thông dụng

2.1 Cú pháp lạc đà (camelCase)

  • Cú pháp: Ký tự trước tiên của từ trước tiên viết thường, những ký tự trước tiên của những từ tiếp theo viết hoa.
  • Ví dụ: productName, productPrice, thisIsTheNameFollowTheCamelCase

2.2 Cú pháp Pascal (PascalCase)

  • Cú pháp: viết hoa vần âm trước tiên của mỗi từ.
  • Ví dụ: ProductName, ProductPrice, ThisIsTheNameFollowThePascalCase

2.3 Cú pháp con rắn (snake_case)

  • Cú pháp: Tất cả những vần âm đều viết thường, và các từ cách nhau bởi dấu gạch dưới.
  • Ví dụ: product_name, product_price, this_is_the_name_follow_the_snake_case

=> Tuỳ vào mỗi tiếng nói lập trình và cộng đồng khái niệm, ta sẽ lựa chọn cú pháp phù hợp.

Bạn Đang Xem: Coding Conventions và các chuẩn viết code trong PHP

Một số nguyên tắc:

Tên lớp: đặt theo PascalCase.

Tên biến, tên hàm: đặt theo camelCase hoặc snake_case.

Hằng số: đặt theo UPPER_CASE. VD: CLICK_COUNTER.

Tên biến, tên lớp: thường là danh từ, cụm danh từ hoặc tính từ. VD: UserModel, userName, downloadCounter, isDownloaded.

Tên hàm thường** mở màn bằng động từ**. VD: getUserName, setUserName, increaseDownloadCounter.

Tên phải có nghĩa, không được đặt tên kiểu viết tắt. VD: uName, pName, idl, a, a1, doFA.

Tránh để những tên quá chung chung, tối nghĩa. VD: top, doIncrease, getAll.

Quy tắc về số lượng

Trong cuốn sách [Clean Code] (https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882): “if small is good, then smaller must be better”.

  • Số lượng dòng code trong hàm/lớp, số lượng hàm trong lớp, số lượng lớp trong gói phải giữ ở một giới hạn nhất định, và nên giữ càng ít càng tốt
  • Ví dụ:

– Hàm không nên quá 30 dòng.

– Lớp không nên vượt quá 500 dòng. (Clean Code).

Xem Thêm : XTrend Speed có lừa đảo không? Có rút được tiền không 2023

– Một hàm không được vượt quá 5 thông số. (nên giữ <=3).

– Một hàm chỉ làm duy nhất 1 việc, trong trường hợp cấp thiết, có thể được chấp nhận làm 2 việc, tuy nhiên tên hàm phải nói rõ điều này. VD: increaseDownloadCounterAndSaveToDatabase.

– Khi khai báo biến, một dòng chỉ chứa một biến.

– Một dòng không nên dài quá 80 ký tự (Oracle).

– Các câu lệnh lồng nhau tối đa 4 cấp.

Quy tắc xuống hàng

Theo Code Conventions của [Oracle] (http://www.oracle.com/technetwork/java/javase/documentation/codeconventions-136091.html#313).

– Nếu có dấu “,” thì xuống hàng sau dấu “,”.

someMethod(longExpression1, longExpression2, longExpression3, longExpression4, longExpression5); var = someMethod1(longExpression1, someMethod2(longExpression2, longExpression3));

– Xuống hàng trước toán tử + – …

longName1 = longName2 * (longName3 + longName4 – longName5) + 4 * longname6; // PREFER longName1 = longName2 * (longName3 + longName4 – longName5) + 4 * longname6;

– Nếu có nhiều cấp lồng nhau, thì xuống hàng theo từng cấp.

– Dòng xuống hàng mới thì được mở màn ở cùng cột với đoạn lệnh cùng cấp ở trên.

Comment

  • Hạn chế dùng comment để giảng giải code, thay vào đó hãy cải thiện đoạn code của bạn.
  • Nên làm dùng comment khi viết documentation cho thư viện, thông tin đính kèm cho class …

Ở mỗi tiếng nói lập trình sẽ sở hữu được một quy tắc viết riêng, hôm nay mình sẽ nói về chuẩn code trong PHP.

  • PHP có một chuẩn viết code là PSR. PSR là viết tắt của từ PHP Standards Recommendation.
  • Ngày nay thì có 5 chuẩn từ PSR-0 đến PSR-4 do các thành viên của nhóm FIG(Framework Interop Group) đề xuất. Nhóm này gồm nhiều các lập trình viên nổi tiếng của rất nhiều framework như CakePHP, Drupal, Joomla…

Chuẩn PSR-0, PSR-4: Chuẩn Autoloading

Xem Thêm : Demo là gì? Nên hiểu demo như thế nào cho đúng?

Những mô tả sau nên phải tuân theo:

– Từ PHP 5.3 khi khai báo class bạn BUỘC PHẢI khai báo namespace.

– Một namespace và class đầy đủ tham gia phải có cấu trúc như sau: <Vendor Namevàgt;(<Namespacevàgt;)*<Class Namevàgt;

– Mỗi namespace phải có một top-level namespace (“Vendor name”), gọi là namespace gốc.

– Mỗi namespace có thể có nhiều sub-namespace (namespace con).

Chuẩn PSR-1 : Các chuẩn cơ bản

Đây là các chuẩn dùng làm viết code, có một vài quy tắc đơn giản như sau:

– Code phải được viết trong cặp thẻ <?php ?> và nên sử dụng cặp thẻ ngắn <?= ?> thay cho echo.

– Mỗi một file PHP nên làm làm 1 nhiệm vụ duy nhất, tránh chồng chéo (gọi là side effect).

– Code chỉ được sử dụng UTF-8 không có BOM (BOM – Byte Order Mark là các chuỗi EF,BB,BF ở đầu file được chấp nhận phần mềm biết đây là một file UTF-8).

– Namespace phải tuân theo chuẩn PSR “autoloading” (PSR-0, PSR-4).

– Tên class phải viết theo quy tắc PascalCase( hay tên khác StudlyCaps).

– Các hẳng số phải viết hoa tất cả những chữ, cách nhau bằng dấu gạch chân.

– Tên phương thức viết theo quy tắc camelCase.

Chuẩn PSR-2: Chuẩn viết code

  • Code phải tuân thủ PSR-1 & PSR-0.
  • Sử dụng 4 khoảng chừng trắng(spaces) để thụt dòng, tuyệt đối không dùng tab (bạn cũng có thể khai báo trong phương tiện lập trình để khi ấn tab nó tương đương với việc thụt vào 4 spaces).
  • Trên 1 dòng không vượt quá 120 kí tự, tốt nhất nên nhỏ hơn hoặc bằng 80 kí tự, không nên có kí tự trắng ở cuối dòng.
  • Phải có một dòng trắng sau lúc khai báo namespace và phải có một dòng trắng sau các khai báo use.
  • Thẻ đóng và mở của một hàm {} phải nằm riêng biệt trên một dòng.
  • Trước thẻ mở và đóng hàm {} thì không được có một dòng trắng.
  • Phải dùng dấu nháy đơn ‘ để khai báo chuỗi không chứa biến, nếu chuỗi có chứa kí tự ‘ thì dùng dấu nháy kép để bọc bên phía ngoài (tất cả chúng ta rất hay nhầm vấn đề này).
  • Dùng dấu . để nối chuỗi, lưu ý trước và sau dấu chấm . phải có tầm khoảng trắng. Nếu chuỗi quá dài thì tách làm nhiều dòng và dấu chấm được đặt đầu dòng ngang với dấu bằng.
  • Các thông số truyền vào hàm phải có một dấu cách trước dấu phẩy, bạn cũng có thể tách thành nhiều dòng nhưng phải thụt lề 1 đơn vị.
  • So với khối lệnh switch case thì case phải lùi 4 khoảng chừng trắng so với switch, và các lệnh trong case cũng phải lùi 4 khoảng chừng trắng so với case. Phải có từ khóa break hoặc return, trong trường hợp nào không có thì phải comment //no break
  • Nếu phải sử dụng abstract và final hay static để khai báo hàm thì bạn phải khai báo theo trật tự.
  • Phải có một khoảng chừng trắng trước và sau phép toán, khi ép kiểu thì phải có một khoảng chừng trắng ngăn cách giữa kiểu tài liệu và biến được ép kiểu.

You May Also Like

About the Author: v1000