क्या आपने कभी किसी समारोह को देखा है और उसकी जटिलता में खोया हुआ महसूस किया है? आइए स्वच्छ कोड के एक मूलभूत सिद्धांत का पता लगाएं: फ़ंक्शंस को अमूर्तता का केवल एक स्तर बनाए रखना चाहिए।
यहां एक वेब एप्लिकेशन में उपयोगकर्ता निर्माण का वास्तविक दुनिया का उदाहरण दिया गया है:
// ❌ A function doing too many things at different abstraction levels function createUser(userData) { // Validate data if (!userData.email || !userData.email.includes('@')) { return 'Invalid email'; } if (userData.password.lengthयह फ़ंक्शन अमूर्तता के विभिन्न स्तरों को मिश्रित करता है:
आइए अमूर्त सिद्धांत के एकल स्तर का पालन करते हुए इसे दोबारा क्रियान्वित करें:
// ✅ Clean version with one level of abstraction function createUser(userData) { const validationError = validateUserData(userData); if (validationError) return validationError; const securePassword = hashPassword(userData.password); const formattedUser = formatUserData(userData.email, securePassword); return saveUserToDatabase(formattedUser); } function validateUserData({ email, password }) { if (!email || !email.includes('@')) return 'Invalid email'; if (password.lengthइस दृष्टिकोण के लाभ
- पठनीयता: मुख्य फ़ंक्शन एक कहानी की तरह पढ़ता है, जो बताता है कि उच्च स्तर पर क्या होता है
- रखरखाव: प्रत्येक फ़ंक्शन की एक ही ज़िम्मेदारी होती है, जिससे परिवर्तन सुरक्षित हो जाते हैं
- टेस्टेबिलिटी: आप तर्क के प्रत्येक भाग का स्वतंत्र रूप से परीक्षण कर सकते हैं
- पुन: प्रयोज्यता: इन केंद्रित कार्यों का अन्य संदर्भों में पुन: उपयोग किया जा सकता है
चाबी छीनना
कार्य लिखते समय:
याद रखें: यदि आप एक ही फ़ंक्शन में "कैसे" और "क्या" का मिश्रण कर रहे हैं, तो आप संभवतः अमूर्तता के कई स्तरों से निपट रहे हैं। उन्हें विभाजित करें!
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3