การพัฒนาโค้ดเพื่อให้ได้ผลลัพธ์ที่มีคุณภาพสูง, ง่ายต่อการอ่านและบำรุงรักษาเป็นหัวใจสำคัญของการเขียนโปรแกรม โดยเฉพาะในภาษา JavaScript ที่มีความยืดหยุ่นสูง การใช้งาน Class สามารถช่วยในการจัดระเบียบ code ได้อย่างมีประสิทธิภาพ เราจะมาดู 5 เทคนิคในการ Refactor Code ด้วย Class ที่จะช่วยให้โค้ดของคุณทำงานได้ดีและดูมืออาชีพมากขึ้น
การรวบรวมฟังก์ชันที่เกี่ยวข้องกันใน Class จะช่วยให้การจัดการโค้ดเป็นไปในทิศทางที่เป็นระเบียบมากขึ้น ดังตัวอย่าง:
// ก่อน Refactor
function createUser(name, age) {
return { name: name, age: age };
}
function userGreeting(user) {
return `Hello, my name is ${user.name} and I am ${user.age} years old.`;
}
// หลัง Refactor
class User {
constructor(name, age) {
this.name = name;
this.age = age;
}
greeting() {
return `Hello, my name is ${this.name} and I am ${this.age} years old.`;
}
}
const user = new User('Alice', 25);
console.log(user.greeting());
Class ให้การเข้าถึง Encapsulation ที่ช่วยให้สามารถซ่อนรายละเอียดภายในและเผยแพร่เฉพาะส่วนที่จำเป็น เพิ่มความปลอดภัยและง่ายต่อการบำรุงรักษา:
class BankAccount {
#balance;
constructor(initialBalance) {
this.#balance = initialBalance;
}
deposit(amount) {
if (amount > 0) {
this.#balance += amount;
return true;
}
return false;
}
getBalance() {
return this.#balance;
}
}
const account = new BankAccount(1000);
account.deposit(500);
console.log(account.getBalance());
การใช้ Inheritance ช่วยลดการทำงานซ้ำในโค้ดและเพิ่มความสามารถในการขยายฟีเจอร์ต่อไป:
class Animal {
constructor(name) {
this.name = name;
}
speak() {
return `${this.name} makes a noise.`;
}
}
class Dog extends Animal {
speak() {
return `${this.name} barks.`;
}
}
const dog = new Dog('Rex');
console.log(dog.speak());
ในบางครั้ง Composition อาจเป็นทางเลือกที่ดีกว่า Inheritance โดยการรวมคลาสต่างๆ เข้าด้วยกัน:
class User {
constructor(name) {
this.name = name;
}
}
class UserProfiler {
constructor(user) {
this.user = user;
}
createProfile() {
return {
name: this.user.name,
timestamp: Date.now(),
};
}
}
const user = new User('Alice');
const profile = new UserProfiler(user);
console.log(profile.createProfile());
Polymorphism ช่วยให้โค้ดสามารถรับมือกับออบเจ็กต์ที่มีพฤติกรรมแตกต่างกันในรูปแบบที่เหมือนกันได้:
class Shape {
draw() {
throw new Error("This method must be overridden!");
}
}
class Circle extends Shape {
draw() {
return "Drawing a circle.";
}
}
class Square extends Shape {
draw() {
return "Drawing a square.";
}
}
function drawShape(shape) {
return shape.draw();
}
const circle = new Circle();
const square = new Square();
console.log(drawShape(circle)); // Drawing a circle.
console.log(drawShape(square)); // Drawing a square.
การ Refactor โค้ดด้วย Class ใน JavaScript ช่วยให้โครงสร้างโค้ดมีความชัดเจน, ยืดหยุ่น และง่ายต่อการทำความเข้าใจ การใช้งาน Class อย่างถูกต้องสามารถทำให้คุณพัฒนาไปสู่การเขียนโปรแกรมที่มีประสิทธิภาพสูงได้ ซึ่งที่ EPT โรงเรียนสอนการเขียนโปรแกรม เรามีหลักสูตรที่ออกแบบมาเพื่อช่วยเหลือคุณในการเรียนรู้และนำไปประยุกต์ใช้หลักการเหล่านี้ เพื่อปูทางสู่การเป็นนักพัฒนาซอฟต์แวร์ที่มีคุณภาพในอนาคต.
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: javascript refactor_code class encapsulation inheritance composition polymorphism code_quality programming oop
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com