إرشيف التصنيف: ‘برمجة’

نصائح PHP الجزء الأول

January 26, 2009 - الاثنين 30 محرم 1430

بسم الله الرحمن الرحيم،

سلسلة من النصائح لمبرمجي PHP لا أعلم كم جزء ولكن أعدكم بأنها ستكون نصائح مفيدة!

(اقرأ المزيد …)

هل استخدام أطر العمل أمر جيد؟

January 20, 2009 - الثلاثاء 24 محرم 1430

هذا هو السؤال اليوم في منتديات البرمجة العربية، أخص لغة PHP وإطارات العمل فيها (CakePHP, CodeIgniter, Zend, Symfony).

(اقرأ المزيد …)

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

January 19, 2009 - الاثنين 23 محرم 1430

السلام عليكم،

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

(اقرأ المزيد …)

لماذا يجب أن تستخدم نظام التحكم بالإصدارات

January 15, 2009 - الخميس 19 محرم 1430

بسم الله الرحمن الرحيم،

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

(اقرأ المزيد …)

محررات الـ PHP المتقدمة

January 5, 2009 - الاثنين 09 محرم 1430

السلام عليكم،

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

(اقرأ المزيد …)

مكتبة PHP القياسية

November 28, 2008 - الجمعة 30 ذو القعدة 1429

SPL أو مكتبة PHP القياسية، عبارة عن مكتبة برمجية (عدة أصناف وتوابع) لحل المشاكل الأكثر شيوعاً وتقديم بنى معطيات (Data Types)، استخدام هذه المكتبة خاص بنسخة PHP 5 فما فوق. سنتعرف عليها الآن وعلى المشاكل التي تقدم لها حلولاً وعندها ستدرك أهميتها الشديدة في حياتك البرمجية اليومية.

(اقرأ المزيد …)

سؤال وجواب عن الكيك

November 27, 2008 - الخميس 29 ذو القعدة 1429

السلام عليكم،

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

لحين صدور الكتاب بإذن الله قبل نهاية العام الحالي، ستكون هذه التدوينة مكاناً لتجمع الأسئلة حول الكيك ومهمتي هي الإجابة عنها بإذن الله. أي سؤال يخطر ببالك عن الكيك ضعه هنا وسأحاول الرد عليه بأقصى سرعة.

وشكراً لاهتمامكم ومتابعتكم معي.

أفضل الأدوات لرفع الملفات

November 20, 2008 - الخميس 22 ذو القعدة 1429

السلام عليكم،

كثيراً مانحتاج لصنف أو سكربت لرفع الملفات في الموقع، غالباً نستعمل الطريقة الاعتيادية بوضع حقل input file ورفع الملف بشكل عادي. طبعاً هذه الطريقة تعمل وبكفاءة لكن ماذا لو أردنا عرض شريط الحالة (Progress Bar) أي شريط تقدم رفع الملف. أو لو أردنا رفع عدة ملفات بوقت واحدة (الرفع المتزامن) أو التحكم بالملفات عند رفعها، هنا تأتي أهمية هذه السكربتات فهي تقوم بهذا العمل وبعضها عن طريق الأجاكس.

لم أجد مثل هذا الموضوع في المواقع والمدونات التطويرية، وأحببت أيضاً أن يبقى هذا الموضوع المميز فائدة لي ولكم عند اختيار أداة أو سكربت لرفع الملفات، فالمرء لا يقدر هذا الموضوع إلا عند البحث عن هكذا سكربت (لم أجد تعريب مناسب لهذه الكلمة!).

(اقرأ المزيد …)

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

November 19, 2008 - الأربعاء 21 ذو القعدة 1429

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

  • البساطة
  • النتائج الصحيحة
  • المتانة أو الثباتية (scalability)
  • قابلية التوسع والتطوير

قصة ترخيص ExtJS

October 7, 2008 - الثلاثاء 08 شوال 1429

كثر الكلام في الآونة الآخيرة عن ترخيص مكتبة الجافا سكربت الضخمة ExtJs، وقد تسنى لي متابعة الموضوع في بدايته وطبعاً لاقى هذا التغيير في الترخيص الكثير من المعارضة فدعونا نستعرض الأحداث كما يرويها Jack Slocum مبتكر هذه المكتبة في مدونته:

  • في البداية عمل جاك على تطوير YUI-Ext (في بداية عهدها كانت ExtJs عبارة عن إضافة لمكتبة YUI ثم تطورت هذه الإضافة بسرعة (أيضاً أخذت العديد من الأفكار من jQuery) لتصبح مكتبة كاملة ومستقلة) لمدة سبعة أشهر بدوام كامل في المنزل وعلى الرغم من ذلك لم يأتيه أي دعم مادي من الياهوو وكان يعيش على التبرعات (donations) التي تصله من محبي المكتبة، وعندما رزق بابنه الثالث زادت عليه أعباء الحياة ففكر بأن تكون المكتبة تحت ترخيص تجاري وناقش هذا الشيء مع مطوري المكتبة وتوصلوا لقرار ترخيص المكتبة برخصة LGPL أي ترخيص حر.
  • بعد أن تم تغيير الترخيص إلى LGPL وقبل أن تصدر النسخة 1.0 من هذه المكتبة، شاهد جاك العديد من “النسخ” لمكتبته وقد تم سرقة الستايل وملفات CSS منها، وصدرت هذه “النسخ” قبل أن تصدر النسخة الرسمية من المكتبة. أثار هذا الشيء غضب جاك ووضع رخصة شديدة (Assets) على ملفات CSS والقوالب.
  • وعندما كانوا يطورون النسخة 2 لاحظوا أن العديد من الأطر والمكاتب تستخدم مكتبتهم تجارياً بدون الإشارة إليهم (باختصار سرقة!)، وهذا مادفعه إلى وضع رخصتين على المكتبة منذ الإصدار 2.1:

- رخصة LGPL للتطوير المفتوح المصدر، التعليمي، الغير ربحي أو للاستخدام التجاري من غير أن تكون مكتبة برمجية أو إطار عمل.

- رخصة تجارية للاستخدام التجاري في تطوير إطار عمل أو مكتبة برمجية.

  • طبعاً واجه جاك العديد والعديد من الانتقادات ولكن برأيه هو وبرأي مطوري المكتبة لم يرتكبوا أي خطأ بل فعلوا الصواب، فالمكتبة لاتزال حرة ولكن يوجد استخدام تجاري لها بنطاق ضيق ومحدود.
  • معظم الانتقادات توجهت لخوف المستخدمين من أن تصبح المكتبة في يوم من الأيام تجارية لكل الاستخدامات ولكن وضح جاك ورفاقه بأنهم لن يفعلوا هذا أبداً.

(اقرأ المزيد …)