👨🏽‍💻 عبدالمنعم ⚡
👨🏽‍💻 عبدالمنعم ⚡

@abdlmneim

9 تغريدة 91 قراءة Apr 11, 2020
Clean code: Chapter 2
Meaningful Names
علشان تكتب كود نظيف لازم تكون بتعرف تسمي ال variables , functions , arguments بطريقة صحيحه, هنتكلم في شويه قواعد لو عملتها هتستعدك كتير جدا:
1. استعمل اسماء بتعبر عن الغرض منها
ابعد تماما تماما عن تسميه i او x نهائيا
int ElapsedTimeInDays;
انت فهمت منه انه الوقت المنقضي و كمان عرفت ان القيمه اللي فيه بالايام مش بالاسابيع مثلا او الشهور و دا افضل شئ.
عبر ديما بشكل explicit بلاش تقول علي حاجه list قول هيه ايه بالظبط مجموعة موظفين ولا دول ولا ايه زي employees , countries
ابعد عن magic numbers زي مثلا انك تقارن قيمه برقم معين و خلاص numberOfCells == 4 رقم 4 غير مقبول لازم تعرف بالظبط ايه ده
2. ابعد عن الاسماء المضلله
الاسماء اللي تحتمل اكتر من معني ابعد عنها تماما زي date, number من غير اي تحديد
و برضو اوعي تسمي مجموعه زي accountList الا اذا فعلا الcontainer بتاعها من نوع List ممكن تسميها accounts او bunchOfAccounts بس بلاش تستخدم List , Dictionary و هكذا.
الاسماء الطويلة جدا اللي قريبه من بعض
XZYControllerForEfficientHandling
XZYControllerForEfficientStorage
ابعد عنها
3. انشأ اختلافات ذات معني
ابعد تماما عن a1, a2,a3....aN الاسماء المرقمه زي ده
بلاش يبقي عندك مثلا product و تسمي productInfo و productData كلها اسماء ملهاش اي معني و مش بتديك اي اختلاف عن المعني الاصلي
4. استخدم اسماء يمكن نطقها بسهولة
بلاش الاخصارات زي gts ل generatedTimeStamp
4. استخدم اسماء سهلة في البحث
5. تجنب Encoding
بلاش ال prefixes ال m_desc او غيرها امنعها تماما من كودك و اكتب اسم واضخ و معبر ولا يدعو للتسائل يا تري ال m دي تعبر عن ايه !!!
6. اسماء Class
افتكر ديما ان اسم Class بيبقي اسم مش فعل زي Employee , WikiPage , Account
7. تسمية ال Methods
علي عكس classes ال methods دايما افعال
8. متبقاش cute !!!
بلاش تسمي بحاجه ليها علاقة بالمكان اللي انت عايش فيه او كلمه جديده متناولة بينك و بين زمايلك , بلاش ?
9. اختار كلمه لكل مفهوم
يعني مثلا هترجع حاجه يبق البرنامج بتاعك كله get زي GetEmployees, GetFlags
بلاش يبقي فيه اكتر من معني لاسترجاع البيانات زي retrieve , fetch
10. بلاش الش ! ايوه زي ما سمعتها بلاش تقلش وانت بتسمي مش ناقصين احنا والله
11. يفضل تستخدم ديما المصطلحات المتعارفه بين المبرمجين
مثلا queue او تسمي SandwitchBuilder علشان افهم منه انك مستخدم builder pattern
12. استخدم اسماء اقرب لل domain بتاع البرنامج
يعني لو هو سيستم صيدليات خلي الاسماء بتاعتك قريبه من business الصيدليات و هكذا

جاري تحميل الاقتراحات...