TypeScript:
การปรับโครงสร้างโค้ด
วิธีการ:
พิจารณาฟังก์ชัน TypeScript ที่เคยเห็นวันที่ดีกว่านี้ - มันเป็นสิ่งที่ยุ่งเหยิงเล็กน้อย และอาจใช้ความรักและการดูแลบ้าง:
function userInfo(data: any): string {
return "User Info: " + data.name + ", " + data.age + ", " + data.email + ";" ;
}
ถ้ามีการ Refactored, อาจจะดูเหมือนนี้:
interface User {
name: string;
age: number;
email: string;
}
function formatUserInfo(user: User): string {
return `User Info: ${user.name}, ${user.age}, ${user.email};`;
}
ตัวอย่างที่สองนั้นแข็งแกร่งกว่า เนื่องจากใช้ระบบประเภทของ TypeScript พร้อมกับ interface
เพื่อหลีกเลี่ยงข้อผิดพลาดที่อาจเกิดขึ้นในระหว่างการรันและปรับปรุงความสามารถในการอ่าน
การศึกษาลึกล้ำ
การ Refactoring ไม่ใช่แนวคิดสมัยใหม่; มันพัฒนาไปพร้อมกับการเขียนโปรแกรม กลายเป็นรูปแบบที่เป็นทางการมากขึ้นด้วยการปล่อยหนังสือ “Refactoring: Improving the Design of Existing Code” ของ Martin Fowler ในปี 1999 มันมีความสำคัญในสภาพแวดล้อมการพัฒนา Agile ช่วยในการเปลี่ยนแปลงโค้ดที่ปรับตัวได้ ทางเลือกบางอย่างสำหรับการ Refactoring แบบด้วยตนเองรวมถึงเครื่องมืออัตโนมัติเช่น TSLint หรือเซิร์ฟเวอร์ภาษาของ TypeScript เองที่สามารถแนะนำหรือแม้กระทั่งทำงาน Refactoring บางอย่างให้คุณได้ รายละเอียดการดำเนินการโดยปกติจะเกี่ยวข้องกับการรู้จำ “กลิ่นโค้ด” เช่น โค้ดที่ซ้ำซ้อน วิธีการที่ยาว หรือคลาสใหญ่ และใช้รูปแบบในการรักษา เช่น การแยกฟังก์ชัน การย้ายไปยังคลาสที่เหมาะสมยิ่งขึ้น หรือการใช้โครงสร้างที่ง่ายกว่า รูปแบบเหล่านี้เป็นกุญแจสำคัญในการเข้าใจวิธีการและเหตุผลของการ Refactoring