مدونة الويب 2.0

  • الرئيسية
  • تعريف بالمدونة
  • المصادر
  • تواصل معي
  • أخبار المدونة
  • أفكار
  • إضافات
  • برمجة
  • تصميم
  • تطوير
  • فعاليات
  • كتب
  • لقاءات
  • مدونات عربية
  • مشاريع
  • مهمات
  • مواقع

كيف تحسن مستواك البرمجي

November 19, 2008 - الأربعاء 21 ذو القعدة 1429 التصنيف: برمجة

بسم الله الرحمن الرحيم،
مجموعة نصائح قيمة لتحسين مستواك البرمجي وبالتالي تحسين إنتاجيتك. في البداية سرد لما يجب أن يكون عليه برنامجك أو ملفاتك المصدرية وبعدها شرح لكيفية الوصول لهذا المستوى.

  • البساطة
  • النتائج الصحيحة
  • المتانة أو الثباتية (scalability)
  • قابلية التوسع والتطوير
  • اكتب ابسط حل تتوصل إليه، عندما يكون لديك عدة حلول لمشكلة ما فاختر الحل الأبسط حتى ولو كان أطول من الحل المعقد. لأن الحل الأبسط أسهل عند برمجته وأسهل عندما تطور عليه في المستقبل، أيضاً فهمه أسهل على غيرك من المطورين الذين سيتابعون عملك في المستقبل.
  • الذكاء، أي أن يكون حلك ذكياً بحيث تقلل من حدوث الأخطاء قدر الإمكان. حاول أن تجد حلاً ذكياً يشمل كل الحالات الممكنة فالحل البسيط لا يعني الغبي! والحل المعقد لا يعني الذكي. الأفضل هو الحل البسيط الذكي.
  • إزالة العلاقات المتشابكة قدر الإمكان بين الملفات، حاول قدر الإمكان أن تجعل كل صنف أو تابع مستقل بحد ذاته عن غيره، مهمة جداً في حالة التوسع بالمشروع، فالأصناف المستقلة لن تتأثر بالتوسع أما المتشابكة فيما بينها فتغيير سطر واحد في ملف واحد يؤدي إلى أخطاء بالجملة، حدثت معي كثيراً والآن عندما أرى هذا النوع من البرمجة أقوم على الفور بتغيير البنية كلها حتى ولو اضطررت للبدء من جديد، فالبدء من جديد على أساسات متينة أفضل من البقاء على أساسات مخلخلة ستسقط لا محالة، لكن السؤال هو متى ستسقط.
  • الاختبار، الاختبار جزء مهم من عملية التطوير، استعمل لهذا التجريب اليدوي والتجريب البرمجي (unit testing).
  • الأمان مهم جداً في تطبيقات الويب وأهم نصيحة هي: لاتثق بأي متحول عام، عنوان (URL) أو طلب من المستخدم وافحص كل شيء.
  • وضع خطة للحالات الطارئة، افترض أن المخدم تعطل أو تعرض الموقع لهجوم لا سمح الله، كل هذا ممكن أن يحدث وغالباً مايحدث ولكن السؤال هو هل أعددت خطة للطوارىء؟ هل ستقفل الموقع؟ هل ستوقف الحسابات؟ هل هل …؟؟ الأفضل أن تضع هذه الخطة الآن قبل أن يحدث مالا يحمد عقباه، فعند وقوع المصيبة يتشوش التفكير.
  • الثباتية هي مواجهة المشروع لظروف قاسية، مثل عدد الطلبات الكبير، زيادة المخدمات. أهم النصائح هي: استقلالية البنى عن بعضها كما ذكرت وقياس الأداء عند كل تغيير أو تطوير.
  • فعل إظهاء الأخطاء والتحذيرات أثناء التطوير، وألغي تفعليها عند تشغيل الموقع أو تسليم المشروع.
  • اتبع المعايير المشهورة في كتابة الشيفرة المصدرية: كل لغة لها معاييرها، تعرف على هذه المعايير وتقيد بها فهي خبرة كبار المبرمجين، تبسط عليك عملك وعلى غيرك ممن سيطور على عملك لاحقاً.
شارك هذه التدوينة:
إضافة 'كيف تحسن مستواك البرمجي' إلى Del.icio.usإضافة 'كيف تحسن مستواك البرمجي' إلى diggإضافة 'كيف تحسن مستواك البرمجي' إلى Technoratiإضافة 'كيف تحسن مستواك البرمجي' إلى Stumble Uponإضافة 'كيف تحسن مستواك البرمجي' إلى Google Bookmarksإضافة 'كيف تحسن مستواك البرمجي' إلى FaceBookإضافة 'كيف تحسن مستواك البرمجي' إلى MySpaceإضافة 'كيف تحسن مستواك البرمجي' إلى Twitterإضافة 'كيف تحسن مستواك البرمجي' إلى FriendFeed
الوسوم: أفكار, برمجة, تطوير, تكتيك, نصائح
أرسل هذه التدوينة لصديق أرسل هذه التدوينة لصديق
طباعة هذه التدوينة طباعة هذه التدوينة

    إقرأ أيضاً:

    • أدوات لإدارة المشاريع وتنظيم الوقت
    • حقيقة السيو
    • موضة CMS
    • تنقيح الكود باستخدام PDT + Xdebug
    • نصائح php الجزء الثالث

12 تعليق في “كيف تحسن مستواك البرمجي”

  1. RedMan: November 19, 2008 - الأربعاء 21 ذو القعدة 1429 في 1:40 م

    رائعة استاذ خالد

    بانتظارىالمزيد بارك الله لك في وقتك


  2. عمر الدليمي: November 19, 2008 - الأربعاء 21 ذو القعدة 1429 في 8:57 م

    شكراً


  3. خالد: November 19, 2008 - الأربعاء 21 ذو القعدة 1429 في 9:53 م

    @بسام: أهلاً بك أخي بسام بارك الله فيك فأنت الأستاذ.

    @عمر: كيف الجامعة؟ لم تعد تراسلني!


  4. علي اللواتي: November 20, 2008 - الخميس 22 ذو القعدة 1429 في 12:33 م

    شكرا جزيلا،

    تعلمنا هذه الدروس بالطريقة الصعبة و هي برؤية النتائج المزعجة عند عدم اتباع هذه النصائح

    اتمنى من قراء هذه المدونة ان يستفيدوا من هذه النصائح كونها ستوفر عليهم الكثير من ساعات الضغط النفسي


  5. bassem: November 20, 2008 - الخميس 22 ذو القعدة 1429 في 9:10 م

    شكرا كتير خالد
    انت الاستاذ و لست انا
    انا خبرتي بسيطة مجرد كنت عم قول راي الشخصي حول المقالة
    على عكس حضرتك فانت قاطع شوط اكبر بكتير من في PHP
    شكرا كتير


  6. احمد على: November 22, 2008 - السبت 24 ذو القعدة 1429 في 9:15 م

    موضوع رائع , لكن كيف يمكننى معرفة معايير اللغة التى تحدثت عنها فى اخر نقطة
    مثلا ال php ما معايره


  7. خالد: November 22, 2008 - السبت 24 ذو القعدة 1429 في 9:20 م

    سؤال جيد، الكلمة المفتاحية لهذا هي “conventions” لذلك إذا أردت مثلاً البحث عن معايير C# اكتب في غوغل التالي:
    C# conventions


  8. ابراهيم: November 27, 2008 - الخميس 29 ذو القعدة 1429 في 9:27 م

    مشكووور على النصائح الجميلة


  9. al-mohana: December 4, 2008 - الخميس 07 ذو الحجة 1429 في 5:28 م

    أشكرك أستاذ خالد

    فعلاً مقال قيم

    تعلمت هذا بعد وقعي بالمشكله (كتابة الكود بطريقه السهله)

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

    فعلاً نصائح قيمة


  10. خالد: December 4, 2008 - الخميس 07 ذو الحجة 1429 في 11:14 م

    شكراً لك، بالنسبة للمشاريع القائمة فعلاً شيء مزعج وتحتاج لوقت كي تبسط ويعاد ترتيبها بالشكل الصحيح.


  11. Besada Hanna: April 23, 2009 - الخميس 28 ربيع الثاني 1430 في 1:50 م

    مقال رائع أخى الكريم و المدونة ما شاء الله تحفة

    تسلم الأيادى ،

    أخوك بسادة من مصر


  12. خالد: April 23, 2009 - الخميس 28 ربيع الثاني 1430 في 6:38 م

    أهلاً بك أخي بسادة


شاركنا برأيك؟

الرجاء الكتابة باللغة العربية الفصحى، وإذا كنت تريد كتابة سؤال حاول البحث في غوغل أولاً فغالباً ستجد عنده الخبر اليقين.

  • الأكثر قراءة
  • الأحدث
  • الأرشيف
  • تعلم الكيك وتطوير المواقع بالبيت
  • أفضل الأدوات لرفع الملفات
  • تنظيم الوقت البرمجي
  • مقدمة في CakePHP
  • أفكار ومواقع ويب 2 شهيرة
  • لماذا غوغل شريرة!
  • الخطوط العربية
  • هل تريد أن تكسب 1000 دولار؟
  • تصميم قاعدة البيانات
  • مواقع عربية بالدروبال
    1. كتب مطلوبة
    2. إصلاح علة أمنية في دروبال 7.3 و 7.4
    3. حل المشكلة أم الترقيع؟
    4. مراجعة كتاب 50 Tips and Tricks for MongoDB Developers
    5. تعريب الوحدات الإضافية
    6. البرامج العربية
    7. تعريب الدروبال 7 – العد التنازلي للنواة
    8. تعريب الدروبال 7 – اليوم الثالث
    9. تعريب الدروبال 7 – اليوم الثاني
    10. تعريب الدروبال 7 – اليوم اﻷول
    11. تعريب الدروبال 7
    1. يونيو 2011
    2. مايو 2011
    3. أبريل 2011
    4. مارس 2011
    5. فبراير 2011
    6. يناير 2011
    7. ديسمبر 2010
    8. نوفمبر 2010
    9. أكتوبر 2010
    10. أغسطس 2010
    11. مارس 2010
    12. فبراير 2010
    13. يناير 2010
    14. ديسمبر 2009
    15. سبتمبر 2009
    16. أغسطس 2009
    17. يوليو 2009
    18. يونيو 2009
    19. مايو 2009
    20. مارس 2009
    21. فبراير 2009
    22. يناير 2009
    23. ديسمبر 2008
    24. نوفمبر 2008
    25. أكتوبر 2008
    26. سبتمبر 2008
    27. أغسطس 2008
    28. يوليو 2008
    29. يونيو 2008
    • اشترك بآخر الأخبار RSS

      Feeds Counter

      أو

    • أشارك بتعريب دروبال 7

    • أراجع كتب Oreilly

      I review for the O'Reilly Blogger Review Program
    • أفضل هدية تقدمها لي

    • تقنية الطماطم

      I Use the Pomodoro Technique
    • عشرون عام لمشروع اللينكس

      I'll be celebrating 20 years of Linux with
The Linux Foundation!
    • وسوم

      Ajax css IDE jQuery php SEO TinyMCE أخبار المدونة أذكار أطر العمل أفكار أمازون إدارة المحتوى إدارة محتوى إضافات استبيان الأجاكس الأمان الاختبارات الآلية الكيك اللغة العربية برمجة تحديثات تحميل تدوينات رمضان تصميم تطوير تعريب تعلم الكيك وتطوير المواقع بالبيت تكتيك تنظيم الوقت جوائز حديث دروبال دعاية فايرفوكس فرص عمل كتب مسابقات مشاريع مهمات مواقع نصائح هندسة برمجيات وورد بريس

    حول المدونة

    • 2008-2012 مدونة الويب 2.0.
    • يمكنك نقل المحتويات أو اقتباس أي جزء منها ويفضل ذكر المصدر.
    • من الممكن أن تساعدك خريطة الموقع.

    عروض العمل

    • يمكنك أن تناقشني حول عروض العمل للمدونات أو لمواقع الويب 2.0.
    • أيضاً يمكنك استشارتي في وضع التفاصيل لمدونة أو لفكرة مشروع جديد.
    • سيرتي الذاتية على My Linkedin Profile

    تواصل معي

    • خالد الحوراني مطور ويب 2.0
    • تابع أخباري على My Twitter account
    • أو راسلني فوراً

    Switch to our mobile site