กลับไปหน้า Blog for testing

เทคนิคการเขียนโค้ดที่ Clean และ Maintainable

Clean CodeBest PracticesProgrammingSoftware Engineering

เทคนิคการเขียนโค้ดที่ Clean และ Maintainable

การเขียนโค้ดที่ดีไม่ใช่แค่ทำให้โปรแกรมทำงานได้ แต่ต้องทำให้โค้ดอ่านง่าย แก้ไขง่าย และดูแลรักษาง่ายด้วย ในบทความนี้เราจะมาดูเทคนิคต่างๆ ที่ช่วยให้โค้ดของเราดีขึ้นกันครับ

หลักการสำคัญ

1. ตั้งชื่อตัวแปรและฟังก์ชันให้มีความหมาย

ไม่ดี:

let d = 10;
let arr = [];
function calc(a, b) {
  return a + b;
}

ดี:

let daysInWeek = 10;
let userList = [];
function calculateTotal(price, tax) {
  return price + tax;
}

2. ฟังก์ชันควรทำแค่一件事เดียว (Single Responsibility)

ไม่ดี:

function processUser(user) {
  // Validate
  if (!user.email) return;
  
  // Save to database
  database.save(user);
  
  // Send email
  emailService.send(user.email);
  
  // Log
  console.log('User processed');
}

ดี:

function validateUser(user) {
  return user.email !== undefined;
}

function saveUser(user) {
  return database.save(user);
}

function sendWelcomeEmail(email) {
  return emailService.send(email);
}

function processUser(user) {
  if (!validateUser(user)) return;
  saveUser(user);
  sendWelcomeEmail(user.email);
}

3. ใช้ Comments อย่างเหมาะสม

Comments ควรอธิบาย "ทำไม" ไม่ใช่ "อะไร"

ไม่ดี:

// Add 1 to count
count = count + 1;

ดี:

// Increment retry counter to handle transient network errors
count = count + 1;

4. ลด Nesting ด้วย Early Returns

ไม่ดี:

function getUserData(userId) {
  if (userId) {
    if (userId > 0) {
      const user = database.find(userId);
      if (user) {
        return user.data;
      }
    }
  }
  return null;
}

ดี:

function getUserData(userId) {
  if (!userId || userId <= 0) return null;
  
  const user = database.find(userId);
  if (!user) return null;
  
  return user.data;
}

Best Practices

1. DRY (Don't Repeat Yourself)

หลีกเลี่ยงการเขียนโค้ดซ้ำๆ

2. KISS (Keep It Simple, Stupid)

ทำให้โค้ดเรียบง่ายที่สุดเท่าที่จะเป็นไปได้

3. YAGNI (You Aren't Gonna Need It)

อย่าเขียนโค้ดที่ยังไม่จำเป็น

สรุป

การเขียน Clean Code เป็นทักษะที่ต้องฝึกฝนอย่างต่อเนื่อง เริ่มต้นด้วยการตั้งชื่อให้ดี เขียนฟังก์ชันให้เล็กและทำหน้าที่เดียว แล้วค่อยๆ พัฒนาไปสู่ระดับที่สูงขึ้น

Remember: Code is read more often than it's written. เขียนโค้ดให้คนอื่นอ่านง่าย ไม่ใช่แค่ให้คอมพิวเตอร์เข้าใจ


อ่านเพิ่มเติม: Clean Code by Robert C. Martin