الخوارزميات تقليص حجم الكود

الفائدة من تقليص حجم الكود

لما يجب دائماً أن تحاول جعل حجم الكود أصغر؟

كلما كان حجم الكود أصغر كلما أصبح برنامجك أسهل في القراءة, الصيانة, التعديل و المراجعة.
إذاً سواء كنت تنشئ برنامج عادي أو موقع أو لعبة إلخ.. دائماً حاول جعل الكود أصغر.


كيف يمكنك جعل حجم الكود أصغر؟

يمكنك ذلك بثلاث طرق:

  1. باستخدام الحلقات و الدول لعدم تكرار الكود.
  2. بعدم كتابة أي كود يمكن الإستغناء عنه.
  3. أسلوب المبرمج و براعته في التحليل.

تقليص حجم الكود باستخدام الحلقات

إذا كنت تريد تنفيذ نفس الشيء عدة مرات, قم بكتابته مرة واحدة داخل حلقة بدل أن تكتبه نفسه عدة مرات.


أسلوب كتابة الكود التالي يعتبر سيء جداً.

مثال

System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm");
System.out.print("Hello Algorithm"); 
		

الآن سنكتب نفس الكود السابق مرة واحدة بداخل حلقة, و نجعله يتكرر على قدر ما نحتاج.
أسلوب كتابة الكود التالي يعتبر جيد جداً.

مثال

for( int i=0; i<10; i++ )
{
    System.out.print("Hello Algorithm");
} 
		

الآن سنكتبه كله على سطر واحد بداخل حلقة أيضاً, و نجعله يتكرر على قدر ما نحتاج.
أسلوب كتابة الكود التالي يعتبر سيء جداً بالنسبة للمبرمج لأن تصحيحه و التعديل عليه مستقبلاً سيكون متعب جداً.

مثال

for( int i=0; i<10; i++ ) { System.out.print("Hello Algorithm"); } 
		

إنتبه

كتابة الكود كله على سطر واحد لا تؤثر إطلاقاً على الذاكرة أو المعالج, و لكن المشكلة في هذا الأسلوب أنك ستجد صعوبة كبيرة في مراجعة الكود الذي كتبته أنت بنفسك إذا اعتمدت هذا الأسلوب في البرامج الكبيرة, فما بالك إذا كنت تعمل في شركة ضمن فريق و تحاول جعل زميلك يفهم الكود الذي قمت أنت بكتابته أو أنك بعد فترة من الزمن أردت تعديله أو تطويره.

تقليص حجم الكود بعدم كتابة أي كود يمكن الإستغناء عنه

في أغلب لغات البرمجة, يمكنك أن لا تضع أقواس البداية و النهاية { } مع الحلقات و الشروط إذا كنت قد وضعت بداخلهم أمر واحد فقط.
السبب في ذلك أنك بالمنطق تستخدم الحلقة لتكرار عملية واحدة على الأقل, و تضع شرط لكي تنفذ عملية واحدة على الأقل.
بمعنى آخر, عندما تستخدم حلقة أو شرط يتوقع منك البرنامج أن تضع فيهم على الأقل أمر واحد, لذلك إذا كنت تريد وضع أمر واحد بداخل الحلقة أو الشرط لا تضع أقواس البداية و النهاية لأنك لا تحتاجهم.



كتابة كود الحلقة بأفضل طريقة ممكنة

الآن إذا عدنا للمثال السابق, يمكننا كتابة الحلقة بدون أقواس البداية و النهاية لأنها تحتوي على أمر واحد فقط.
أسلوب كتابة الكود التالي يعتبر ممتاز و جميع المبرمجين يعتمدونه لسهولة مراجعته.

مثال

for( int i=0; i<10; i++ )
    System.out.print("Hello Algorithm"); 
		


كتابة كود الشروط بأفضل طريقة ممكنة

الآن سنرى كيف نستطيع التخلي عن أقواس البداية و النهاية في الشروط.
لنفترض أنه عندنا متغير عادي نريد إختبار قيمته.

مثال

int x = 5;

if( x > 0 )
{
    System.out.print(x+ " is positive.");
}
else if( x < 0 )
{
    System.out.print(x+ " is negative.");
}
else
{
    System.out.print(x+ " is zero.");
}
		

الآن سنستغني عن أقواس البداية و النهاية في كل شرط يحتوي على أمر واحد فقط لأنه لا حاجة لهم.
أسلوب كتابة الكود التالي يعتبر ممتاز.

مثال

int x = 5;

if( x > 0 )
    System.out.print(x+ " is positive.");

else if( x < 0 )
    System.out.print(x+ " is negative.");

else
    System.out.print(x+ " is zero."); 
		

أسلوب الكتابة هكذا يعتبر ممتاز و جميع المبرمجين يعتمدونه لسهولة مراجعته.

تقليص حجم الكود حسب أسلوب المبرمج و براعته في التحليل

أنت الآن تعلمت كيف تكتب الكود بشكل منطقي و مرتب كالمبرمجين الحقيقين, و تعلمت كيف تستطيع تقليص حجم الكود, و إذا كنت قد درست الخوارزميات من أول درس فأنت أيضاً تعلمت كيف تستطيع كتابة الكود بعدة طرق و أساليب و أنه يمكنك التلاعب بالكود كما تريد و الحصول على نفس النتيجة.

بما أنك أنهيت الخوارزميات, أنت الآن جاهز بإذن الله لتبدأ بدراسة لغة برمجة معينة, و سترى بنفسك كيف أنك ستطبق جميع المبادئ التي درستها في الخوارزميات و ستتعلم بالطبع أساليب و طرق جديدة و ستتطور قدراتك الذهنية كثيراً في التعامل مع الكود كلما إرتفع مستواك العلمي و العملي في البرمجة.

الدورات

أدوات مساعدة

الأقسام

دورات
مقالات أسئلة مشاريع كتب