-
-
Notifications
You must be signed in to change notification settings - Fork 51
إطلاق الإصدار 4.0.0
لقد تم إطلاق الإصدار 4.0 من مكتبة PHP واللغة العربية في الثامن من شهر كانون الثاني / يناير 2016 بعد غياب دام قرابة الثلاثة أعوام منذ تقديم آخر إصدارات هذه المكتبة في بدايات العام 2013 وهو الإصدار 3.6.0 لتكون هذه بداية عهد جديد من عملية التطوير لمواكبة آخر المستجدات في عالم الويب وتقنياته. سنسعى في هذه المرحلة إلى زيادة تكاملية عمل وظائف المكتبة وتبسيط بنيتها الداخلية وواجهتها البرمجية، حيث تجدون بداية انعكاس هذا التوجه في إصدارنا العتيد 4.0 من خلال اعتماد نمط التحميل الكسول Lazy Loading للأصناف / الكلاسات الفرعية الداخلية. بمعنى آخر ليس المبرمج بحاجة بعد الآن إلى تحميل صريح للصنف الفرعي قبل استدعاء طرائق / توابع منه، وهكذا لم يعد مطلوبا منك كمطور أن تعلم البنية الداخلية للمكتبة وملفاتها بل عليك التركيز فقط على الوظائف التي ترغب باستدعائها، واترك مهمة تحميل الملفات ذات الصلة على آلية عمل الداخلية للمكتبة، وهو ما يعتبر خطوة جديدة على طريق التخلص من إرث البدايات حينما بنيت هذه المكتبة من ربط مكتبات صغيرة أخرى بوظائف متفرقة. من جهة أخرى فقد تم التخلص نهائيا من الصنف الفرعي CharsetC المخصص للتحويل ما بين مجموعات المحارف العربية المختلفة والذي كان ضروريا في فترة من الفترات نظرا لضعف الدعم المتوافر لتلك المحارف وعدم استقراره ما بين المخدمات المتنوعة، وقد تم تنحية وظائفها لصالح التابع iconv في لغة PHP والذي يقدم أداء أعلى وشيفرة برمجية داخلية أبسط وأكثر نظافة وبالتالي أقل عرضة للمشاكل والأخطاء.
وقد انصبت الكثير من التحسينات في هذا الإصدار على الصنف KeySwap بفعل الزخم والتجربة التي اكتسبها فريق التطوير من العمل على مشروع الكندي الاختباري، حيث تمت إعادة كتابة الشيفرة المصدرية لهذا الصنف / الكلاس وإضافة دعم التعامل مع لوحات مفاتيح AZERTY الخاصة باللغة الفرنسية، هذا عدى عن الوظيفة الجديدة fixKeyboardLang والتي تقوم بشكل آلي بتصحيح ضبط لغة لوحة المفاتيح وحالة الأحرف للنص المدخل اعتمادا على توابع إحصائية ومعادلات رياضية تختلف في مفهومها وتقنيتها عن أسلوب العبارات المنطقية التي كانت حتى الآن العمود الفقري لكافة وظائف هذه المكتبة.
من جهة أخرى فقد تضمن هذا الإصدار العديد من التصويبات للأخطاء البرمجية التي تم التبليغ عنها، كضرورة إهمال ذكر واحدات العملة في مخرجات التابع money2str من صنف Numbers وذلك في شق العدد الصحيح أو العشري من الرقم إن كانت قيمته الصفر! وأيضا تصحيح طريقة التعامل مع الأحرف اللاتينية غير الإنجليزية عند إجراء الترجمة اللفظية إلى العربية باستخدام التابع en2ar من صنف Transliteration بحيث تستبدل بالمحارف المشابهة لها. كذلك تم إضافة بعض التحسينات التي اقترحها مستخدموا المكتبة ومنها على سبيل المثال إمكانية عرض التاريخ الهجري باستخدام اللغة الإنجليزية عن طريق التابع data من صنف Date. أخيرا فقد تابعنا مسيرة ترقية شيفراتنا المصدرية لتبقى متوافقة مع الإصدارات 5.3 و 5.4 و 5.5 من لغة PHP وذلك باستخدام أداة PHP_CodeSniffer. يمكنكم الاطلاع على سجل التعديلات الكامل من خلال الرابط التالي:
https://github.com/khaled-alshamaa/ar-php/blob/master/CHANGELOG.md#whats-new-in-arphp-400-release-date-jan-8-2016
تجدر الإشارة إلى أنه كما حدث في الشرق الأقصى وأمريكا اللاتينية، كلما اتجهت الإنترنت إلى الجماهير، أرادها الناس بلغتهم الأصلية. إن مهمتنا في مشروع PHP واللغة العربية هي تطوير حلول حرة مفتوحة المصدر وتقديم دعم احترافي لمساعدة الشركات الصغيرة والمتوسطة في مواجهة التحديات التي ترافق تطوير مواقع عربية احترافية بلغة PHP وقاعدة MySQL للبيانات، حيث تساعد المكتبة التي نطورها شركائنا على اختصار الزمن وزيادة الفعالية. يقدم هذا المشروع مجموعة من الأدوات التي تمكن مطوري المواقع العربية من تقديم بحث وعرض ومعالجة احترافية للمحتوى العربي بلغة PHP.
كما جرت العادة أود أن أشكر جميع من ساهم في هذا الإصدار (لائحة الأسماء تتبع الترتيب الأبجدي) وأعتذر سلفا عن كل من غفلت عن ذكر اسمه هنا في هذه القائمة:
- دامين سيجاي
- سيدرك دوبونت
- عبد المجيد الحربي
- فريق تطوير مواقيت
- مصطفى الساحلي
في الختام، نتطلع شوقا إلى أسئلتكم واستفساراتكم ومقترحاتكم، فيها ننمو ومعها نتطور، وإن أهديتمونا عيوبنا فسنكون لكم من الشاكرين.