1/ الاسبوع الماضي ساعدت صديق انه يعمل refactoring في بروجكت شغال عليه (PHP & Laravel) . و هكتب في الثريد ده اللي احنا عملناه يمكن حد يستفيد او حد يفيدنا برايه في اللي عملناه
2/ الاول هتكلم في حاله المشروع قبل ما نبدا اي حاجه و بعدين هتكلم في اللي غيرناه و ظبطناه علشان شكل الكود يبقي افضل و احسن
3/ البروجكت عقارات و فيه فورم بيسجل كل انواع العقارات بمختلف انواعهم. وطبعا ده معناه ان فيه نوع بيطلب بيانات معينه و نوع تاني بيطلب بيانات مختلفه تماماً مع وجود بعض البيانات المشتركه زي اسم العقار و عنوانه مثلا
4/ بيانات العقارات بيتم حفظها في جدول واحد بمختلف انواعها. ف ده معناه ان فيه nullable fields كتير و و بيانات متجمعه مع بعضها بشكل خاطئ (وممكن يتم فصلهم علي عدة جداول).
5/ الحاجات اللي مش هنقدر نعملها هي اننا نقسم في الجدول لان ده هيحتاج وقت كتير جدا. و بردو اننا نعمل اكثر من view لكل نوع form كان هياخد وقت كتير. كمان انا شكل الفورم كان شئ مجهول بالنسبالي.
6/ ف احنا هنركز علي اننا نظبط الكنترولر و الـvalidation بدل ما فيه if conditions علي الـ category id و هتلاقي نفسك بتعمل سكرول في الكود كتير علشان توصل لجزء معين كمان الزياده و التعديل كان شئ مجهد جدا في كود زي دا فوق ال٥٠٠ سطر في ميثود واحده بس
16/ طبعا ده مش احسن ريفاكتورينج. لكن ده اللي قدرنا نظبطه قدر المستطاع حسب الوقت المسموح فيه للتاسك مع صديقي.
17/ الملخص اننا استخدمنا Factory pattern و Open/Close principle علشان نخزن البيانات لان دلوقتي اي نوع عقار جديد هيستخدم Property Interface اللي فيها create ميثود بتاخد request ومنها يسجل البيانات اللي محتاجها فقط من غير التعديل في اي حاجه تاني
18/ في الاخر حابب اعرف رايكم في اللي خلصناه و لو فيه حاجه احسن كانت ممكن تتعمل في اللي كاتبناه يا ريت تتكرم و تعرفهالنا
جاري تحميل الاقتراحات...