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