الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما هو طريقتك لفهم كود كبير جدا ؟

بدأه أبو فهيد في 8 مارس 2012 · 11 رد · 2,120 مشاهدة · في الأخبار والنقاشات التقنية
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله وبركاته

أريد أن أتناقش معكم عن طريقتك أو أسلوبك في فهم مشروع كبير

لنفترض أنه تم توكيلك لإصلاح خطأ أو إضافة ميزة في المشاريع الكبيرة , كيف سوف تبدأ ؟ و كيف تستطيع فهم علاقات الكلاسات مع بعضها

للصداقة البرمجية

pro-vb6@hotmail.com

#2

في الغالب وثائق المشروع إذا متوفرة! وفي حال غير كدا هتحتاج بعض التنقيب top-down approach

1
(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#3
اقتباس

في الغالب وثائق المشروع إذا متوفرة

+1

اقتباس

فهم مشروع كبير

كيف يكون مشرع كبير بدون توثيق جيد !

1


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#4

هناك مصطلح يوصف به الأكواد القديمة أو الأكواد الي يستلمها مبرمج آخر، المهم تسمى

Legacy Code أو Legacy system

في هندسة البرمجيات فيه طرق للتعامل مع هذي الأكواد

أحد الكتب المشهورة

Working Effectively with Legacy Code

51RCXGPXQ8L._SL500_AA300_.jpg

ملخص للكتاب موجود في هذا المقال، والمقال كافي -حسب رأيي- الرابط

وضع استراتيجية من خمس نقاط

أحد النقاط أنك تعمل تيست للكود، وهذا يساعدك أنك تحدد وتعرف أين نقاط الدخول للكود وكيف يعمل الكود

6
#5

أن استخدم النظام اولا واتخيل كيف ستكون مكوناته وذلك قبل أن أقرا الكود

1
#6

أشغل المشروع وأتصفحة بحثاً عن الخطأ ثم أقوم بقراءة الكود المسؤول عن الخطأ :lol: ثم أقوم بتحليل عناصر المسأله التي لا أفقه فيها شئ

أظن أنها من أفضل الطرق :dry:

تم تعديل هذه المشاركة بواسطة سي شربة في 9 مارس 2012 في 15:08

vr7y9y10.jpg
#7

ليس لي تجارب كثيرة ، لكن عندما يكون الكود مكتوب بطريقة Standard ، كأن يستخدم Design Patterns معروفة ، الخ .. فيكون الموضوع أسهل ، و تبقى مشكلة فهم Business logic . و تستطيع فهمها لو كنت تعرف تستخدم المنتج كمستخدم عادي .

شخصياً أفهم و بسرعة التطبيقات التي تستخدم Java ، لأن جافا لها convention واضح و مواصفات لكل شيء ، بينما اللغات الأخرى ، كل مبرمج له أسلوبه الخاص ؟ مثال بسيط : اقتناص الأخطاء ، في Java القاعدة هي استخدام Exceptions ، في PHP ، Cpp و غيرها ، كل مبرمج له أسلوب . لذلك تتعب خاصة عندما تنوي التطوير على هذا المشروع.

1

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#9
  1. أولاً مراجعة التوثيق إن وجد
  2. تشغيل ال Unit Tests الموجودة و معرفة نسبة ال Code Coverage
  3. سؤال مبرمجى التطبيق القدامى فى حال توافرهم بالاضافة لسؤال مستخدمى التطبيق عن وظائف التطبيق
  4. مراجعة جيدة لل Configuration Management داخل التطبيق و هو اساسى لتشغيل التطبيق
  5. فهم هيكل قاعدة البيانات و محاولة استنباط مكونات الجداول من اسمائها
  6. تشغيل التطبيق و مراجعة التغييرات على قاعدة البيانات و على الواجهة نفسها (حقول تظهر و تختفى فى شروط معينة - إبدال الفورم ايضاً تحت شرط معين و هكذا)
  7. تخيل ماذا لو كنت فى مكان مبرمج التطبيق السابق

تم تعديل هذه المشاركة بواسطة طارق إبراهيم في 10 مارس 2012 في 16:03

1

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#10

أشكر الجميع على المعلومات القيمة

إذا ملخص الموضوع هو :

  • إستخدام البرنامج كمستخدم نهائي
  • مراجعة التوثيقات
  • عمل tests لمعرفة طريقة عمل كلاس معين
  • ما هو Design Patterns المستخدم << هذي النقطة كنت أجهلها تماما
  • إستخدام Break Points

للصداقة البرمجية

pro-vb6@hotmail.com

#11

بالنسبه لي أقوم بمعرفه مايقوم به المشروع ثم أبدأ بإعادة برمجته على طريقتي :)

1 −2

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#12
أبو فهيد كتب:

السلام عليكم و رحمة الله وبركاته

أريد أن أتناقش معكم عن طريقتك أو أسلوبك في فهم مشروع كبير

لنفترض أنه تم توكيلك لإصلاح خطأ أو إضافة ميزة في المشاريع الكبيرة , كيف سوف تبدأ ؟ و كيف تستطيع فهم علاقات الكلاسات مع بعضها

اولا الله يكون فى عون اللى عايز يطور او يصحح كود لمشروع كبير - لكن من وجهة نظرى انه يستحسن قراءة اجزاء الكود كوحدات مستقلة اولا مثل المتغيرات المستخدمة والكلاسس والدوال المعرفة قبل الدالة الرئيسية وفهمهم جيدا والتعبير عنهم بلغة مفهومة للبشر ( العربية او الانجليزية او ...... ) وهو ما يسمى pesudo code او semi code ثم قراءة الدالة الرئيسية وفهمها وتحويلها الى لغة مفهومة - فبعد ذلك تسهل عملية التعديل او التطوير والله اعلى واعلم

مواضيع مشابهة