Hotline: 0919 365 363; Email: daotao@r2s.edu.vn

Coding Convention trong Dart: Hướng dẫn chi tiết

Coding Convention trong Dart: Hướng dẫn chi tiết

Kiến thức hữu ích

Coding Convention trong Dart: Hướng dẫn chi tiết

Viết code nhất quán và dễ đọc là yếu tố quan trọng giúp lập trình viên làm việc hiệu quả hơn. Coding Convention trong Dart giúp bạn duy trì tiêu chuẩn cao trong quá trình phát triển phần mềm, đảm bảo code dễ hiểu, dễ bảo trì và hạn chế lỗi. Hãy cùng tìm hiểu các quy tắc quan trọng giúp bạn viết code Dart chuyên nghiệp hơn.

Coding Convention trong Dart là gì?

Coding Convention

Coding Convention trong Dart là tập hợp các quy tắc giúp lập trình viên viết code có cấu trúc rõ ràng, dễ đọc và dễ bảo trì. Việc tuân thủ các tiêu chuẩn này không chỉ giúp code nhất quán mà còn cải thiện hiệu suất làm việc nhóm và tối ưu hóa quá trình phát triển phần mềm.

Trong bài viết này, chúng ta sẽ tìm hiểu chi tiết từ cách đặt tên biến, hàm, class, đến định dạng code, tổ chức file, import, comment, best practices và null safety.


Quy tắc đặt tên

Việc đặt tên hợp lý giúp code dễ đọc và dễ hiểu hơn. Dưới đây là các quy tắc quan trọng:

Đặt tên Class, Enum, typedef

Sử dụng PascalCase.

Ví dụ:

class UserProfile {}
enum UserRole { Admin, User, Guest }
typedef Callback = void Function();

Đặt tên Method, Function, Variable

  • Sử dụng lowerCamelCase.
  • Ví dụ:
void getData() {}
String userName = "John Doe";
bool isVisible = true;

Đặt tên Private Member

  • Bắt đầu bằng dấu gạch dưới _ để báo hiệu private.
  • Ví dụ:
class User {
  String _name;
  void _fetchData() {}
}

Đặt tên Constant

  • Sử dụng lowerCamelCase với const hoặc final.
  • Ví dụ:
const int maxLength = 100;
final String defaultTimeout = "30s";

Định dạng code trong Coding Convention

Coding Convention

Một đoạn code đẹp giúp dễ đọc và bảo trì hơn:

  • Dùng 2 dấu cách để thụt lề.
  • Giới hạn độ dài dòng tối đa 80 ký tự.
  • Dùng dấu ngoặc {} cho tất cả khối lệnh, kể cả khi chỉ có một dòng.
  • Loại bỏ khoảng trắng dư thừa.

Ví dụ:

if (isUserLoggedIn) {
  print("Welcome back!");
}

Cấu trúc file trong Coding Convention

Việc tổ chức file tốt giúp dự án dễ quản lý:

Quy tắc đặt tên file

  • Dùng snake_case.
  • Ví dụ: user_profile.dart.

Thứ tự sắp xếp nội dung trong file

  1. Import thư viện Dart core.
  2. Import thư viện bên thứ ba.
  3. Import nội bộ.
  4. Khai báo hằng số / biến cấp cao.
  5. Hàm top-level.
  6. Class hoặc Widget.

Quy tắc import trong Coding Convention

Coding Convention
  • Dùng package: khi import từ package bên ngoài.
  • Sắp xếp import theo thứ tự:
    1. Dart SDK.
    2. Thư viện bên thứ ba.
    3. Import nội bộ.

Ví dụ:

import 'dart:math';
import 'package:flutter/material.dart';
import 'package:my_project/utils.dart';

Best Practices trong Coding Convention

  • Tránh sử dụng biến và hàm toàn cục.
  • Dùng finalconst nếu giá trị không thay đổi.
  • Hạn chế dynamic, chỉ dùng khi thực sự cần thiết.
  • Dùng late cho biến được gán sau nhưng đảm bảo có giá trị.
  • Luôn xử lý exception với try-catch.

Ví dụ:

try {
  fetchData();
} catch (e) {
  print("Lỗi: $e");
}

Quy tắc comment

Comment tài liệu (Documentation Comments)

  • Dùng /// để mô tả class, function, getter, setter hoặc biến public.

Comment nội bộ

  • Dùng // để giải thích logic code.
  • Dùng cho TODO, FIXME.

Ví dụ:

/// Hàm lấy dữ liệu từ API
Future<void> fetchData() async {
  // Gửi request đến server
  var response = await http.get(Uri.parse(url));
}

Null Safety trong Coding Convention

  • Ưu tiên dùng biến non-null (String name), chỉ dùng nullable (String? name) khi cần thiết.
  • Dùng toán tử !, ?, ??, ??= cẩn thận.

Ví dụ:

String? name;
print(name ?? "No name provided");

Kết luận

Tuân thủ Coding Convention trong Dart giúp mã nguồn dễ đọc, bảo trì và hạn chế lỗi phát sinh. Nó cũng giúp lập trình viên làm việc hiệu quả hơn và tăng tính chuyên nghiệp. Hãy áp dụng ngay để cải thiện kỹ năng lập trình của bạn!

Tham khảo các khoá học hiện có tại R2S với gần 1000 học viên đã và đang theo học. Tham gia cộng đồng tuyển dụng và thực tập để có thông tin về việc làm nhé.

Alert: You are not allowed to copy content or view source !!