جاري التحميل...
جاري التحميل...
تقسيم الكود وتنظيم الملفات
الكود الذي تكتبه اليوم سيكون غير مقروء بعد شهر، ولن تفهمه إذا لم تنظمه بشكل صحيح. تنظيم الكود ليس مجرد ترتيب أنيق - إنه ضرورة للصيانة والعمل الجماعي.
💡 تخيل هذا::
إذا كان لديك غرفة مليئة بالأدوات مبعثرة على الأرض، يستغرق وقتاً طويلاً للعثور على ما تحتاجه. لكن إذا كان كل صندوق به ملصق وكل شيء في مكانه، ستجد ما تريد في ثوانٍ. الكود تماماً هكذا.
في هذا الدرس ستتعلم خمسة مبادئ أساسية لتنظيم الكود تجعله أسهل للقراءة والصيانة والعمل عليه كفريق.
مبدأ المسؤولية الفردية (SRP) يعني أن كل وحدة في كودك - سواء كانت دالة أو ملف أو مكون - يجب أن يكون لها مسؤولية واحدة فقط وتؤديها بشكل ممتاز.
ترتيب الاستيراد ي่วย في العثور على الملفات بسرعة وتجنب الأخطاء. المبادئ الأساسية: استورد المكتبات الخارجية أولاً، ثم المكونات المحلية، ثم الأدوات المساعدة.
الطريقة التي تorganize بها ملفاتك تؤثر بشكل كبير على سهولة العثور على الأشياء وفهم الكود. استخدم تصدير الأسطوانة (barrel exports) وorganize حسب الميزات.
لا تصل الكائنات ببعضها البعض أكثر مما هو ضروري. تجنب سلاسل الطرق الطويلة لأنها تجعل الكود صعباً للفهم والصيانة.
اجمع الدوال المتشابهة معاً وتجنب تكرار الكود. اتبع مبدأ DRY (لا تكرر نفسك).
أي من المبادئ التالية يعني أن كل دالة يجب أن تفعل شيئاً واحداً فقط؟
أعد تنظيم الكود التالي باستخدام مبادئ تنظيم الكود الخمسة.
الحل:
function handleUserAction(action, userData) {
if (action === "register") {
if (!userData.name || !userData.email) {
return { success: false, error: "Missing data" };
}
const user = db.users.create(userData);
sendEmail(userData.email, "Welcome", "Registration successful");
log("New user registered: " + userData.name);
return { success: true, user };
} else if (action === "login") {
const user = db.users.findByEmail(userData.email);
if (!user || user.password !== userData.password) {
return { success: false, error: "Invalid credentials" };
}
log("User logged in: " + user.name);
return { success: true, user };
}
}المبادئ الأساسية:
القاعدة الذهبية: