SAPL
23 يناير 2008
SAPL هي اختصار لـ Simple Arabic Programming Language ، اي لغة البرمجة العربية البسيطة .
انهيت العمل عليها قبل اسبوعين تقريباً ، واحببت هذا المساء مشاركتم هذا العمل ( كنت اتمنى ان اطرحه في وقت سابق ، لاكن الوقت لم يسمح بذلك )، لاجل سماع ارائكم ومقترحاتكم حول هذا العمل ، والاهم هو اتاحة الفرصة الحقيقية للمهتمين بهذا المجال ( الطامحين لصناعة لغة برمجة عربية ) ، فهذه هي اول خطوة في مشوار الالف ميل.
كل ماتستطيع ان تقوم به هذه اللغة حاليا
- تعريف المتغيرات واسناد القيم لها.
- طباعة ( اخراج ) النصوص.
- المقارنة بين قيمتين ( او متغيرن ) وتنفيذ امر في حال تحقق الشرط.
مثال على البرمجة بلغة SAPL :
س = 10 .
ص = 20 .
اذا كان ( س < ص ) اطبع " is smaller than ".
يقول المترجم ( Compiler ) بتحويل اللغة الى لغة وسطية ( Intermediate Code ) وهي Batches ( المقدمة من النظام ) ، حيث اعتمدت بشكل اساسي على برنامجي الآخر BatchX لتمثيل الجزء الآخر ( Back End ) ليقوم بمهمة التحويل الى لغة الآلة.
ساحاول تطوير العمل ، ليصبح لغة برمجية متكاملة ( بشكل بسيط ) ، من اجل تسهيل عملية تعليم البرمجة للاطفال.
لتحميل اللغة :
الكود ( C++Builder ) :
SURINI Academic قريباً
18 أكتوبر 2007مضى مايزيد عن الشهرين دون تدوين ، لم يكن ذلك مخطط له مسبقاً لذا لم يتم الإعلان ، لم اكتب اي اعتذار كإحترام لمن يزور هذه المدونة وذلك لبعدي عن العالم الرقمي. ولاكن كما اوضحت في صفحة لماذا ؟ ، ان التدوين لن يكون منضبطاً ، فارجوا المعذرة ممن كان يتردد هنا بإستمرار.
بعد مضي 8 اشهر من انطلاق هذا المشروع ( surini )، تحت هدف علمي بحت ، كخطوة اول ( تجريبيه ) في عالم التدوين ( على الرغم اني لااجد نفسي مجيداً للكتابة ) ، احببت ان اتقدم خطوة اخرى ، لأطلق المرحلة الثانية من هذا المشروع الفتي ![]()
تحت عنوان

وهو ماسيعكس surini بطبيعته الاكاديمية ، تحت مدونة مستقله ( لايماني بالتخصص ) ، ساتناول من خلالها موضوعات اكاديمية اجتماعية فكريه ، بعيداً عن الاوساط التقنية .
حيث ستضل هذه المدونة ( هي الاساس ) على منهجها في طرح الموضوعات التقنية فقط .
لم يزل العمل قائماً على انهاء هذه المرحلة ، لذا ساكتفي بهذه المعلومات حتى حال اكتمال العمل .
ساترك هذه التدوينة كمساحة لسماع الاراء والمقترحات ، واسكتب عما سيتجد في حال صدوره.
Symbian تحت المجهر
26 يوليو 2007
#مقدمة :
Symbian هو نظام تشغيل ( Real Time ) موجه لأجهزة الهاتف النقالة ( Smart Phone ) ،
تعود بداياته لعام 1980 ولاكن تم اطلاقة بشكل رسمي في عام 1998. يعد من اكثر انظمة التتشغيل شعبية،
تم تطويرة من قبل عملاقة مصنعي الاجهزة النقالة ( Nokia, Ericsson, Sony Ericsson, Panasonic, Siemens AG …. ).

#اصدارات النظام :
توجد هناك عدة اصدارات لهذا النظام ، وهي مقسمه حالياً على ثلاث فئات ، سنستعرضها بالتفاصيل
-
Series60 : نسخة خاصة بالهواتف النقالة ذات الشاشة الصغيرة والتي تستخدم المفاتيح الرقمية لإدخال المعلومات
-
S60 1st Edition
-
Nokia 7650
-
Nokia 3650 , 3600
-
Nokia 3660 , 3620
-
Nokia N-Gage
-
Nokia N-Gage QD
-
SendoX
-
Siemens SX1
-
-
S60 2nd Edition
- Nokia 6600
-
S60 2nd Edition with Feature Pack 1
-
Nokia 6630
-
Lenovo P930
-
Nokia 6680
-
Nokia 6681
-
Nokia 6682
-
-
S60 2nd Edition with Feature Pack 2
-
Nokia 6630
-
Lenovo P930
-
Nokia 6680
-
Nokia 6681
-
Nokia 6682
-
-
S60 2nd Edition with Feature Pack 3
-
Nokia N70
-
Nokia N90
-
-
S60 3rd Edition
-
Nokia E60
-
Nokia E61
-
NokiaE70
-
Nokia 3250
-
Nokia N71
-
Nokia N80
-
Nokia N91
-
Nokia N95
-
-
-
UIQ : نسخة موجهه للأجهزة التي تستخدم شاشة اللمس ( Touch Screen )
- UIQ 2.0
- Sony Ericsson P800, P802
- Motorola A920
- Motorola A925
- BenQ P30
- UIQ 2.1
- Sony Ericsson P910
- Sony Ericsson P900
- Motorola A1000
- FOMA M1000
- Arima U308
- UIQ 3.0
- Sony Ericsson M600
- Sony Ericsson W950
- Sony Ericsson P990
- UIQ 3.1
- Motorola MOTORIZR Z8
- UIQ 2.0
-
Series80 : نسخة موجهه للأجهزة المتطورة التي تحمل شاشة عريضة ولوحة مفاتيح موسعه ( حاسوبية )
- Nokia 9300
- Nokia 9500
#التطبيقات :
يتم تطوير التطبيقات لهذا النظام بطرق مختلفة
- C++ : لبناء تطبيقات موجهه لأنظمة Symbian ، وهو الخيار الاكثر شعبية .
- MS Visual C++
- Borland C++BuilderX or C++Builder6
- Metrowerks CodeWarrior
- Carbide
- Java : يعد الخيار الأمثل للتطبيقات المتنقلة ( Portable ) ، ولاكن يعتبر خيار محدود الامكانيات
- NetBeanse
- Eclipse
- JBuilder
- اخرى
- Flash Lite
- Python
- MobileVB and .net
تختلف امكانيات كل بيئة عن الاخرى ، ومايفضل الواحدة عن الاخرى هو احتياجاتك.
يتم التطوير التطبيقات بإستخدام ادوات التطوير ( SDK ) والتي سنستعرضها في الحزء القادم .
#SDK - software development kit:
توجد نسخ مختلفة لهذه الادواة حسب الاصدارات الموجهة لتلك الهواتف ( استعرضنها في الجزء الأول من الموضوع )
حيث تحوي هذه الحزمه مكتبات النظام ( APIs Libraries ) ، المحاكي ( emulator ) ، الامثلة ( Example ) ،
المجمع ( a target compiler ) ، والوثائق (user documentation) .
- SDK for C++
- S60
- UIQ
-ملاحظة : روابط التحميل هي لبيئات التطوير ( MS Visual C++ and Borland C++BuilderX ) ، للحصول على اصدارت اخرى
او للحصول على اصدارت SDKforJava ، يمكتك مراجعة الروابط التالية
KeyLayout
8 يوليو 2007بدأت الفكرة من هاهنا
فهي عبارة عن برنامج يقوم بتبديل النصوص مابين واجهات الإدخال
فعلى سبيل المثال : اردت كتابة نص باللغة العربية ، وليكن ” بسم الله الرحمن الرحيم”
بعدما انهيت الكتابة وجدت انك لم تعدل واجهة الادخال بل كانت اللغة الانجليزي
فاصبح النص الذي كتبته هو ” fsl hggi hgvplk hgvpdl ” ماذا ستعمل !!!
سيكون الحل البديهي هو مسح النص وكتابته من جديد
لاكن مع هذا البرنامج ، لن تعيد الكتابة بعد اليوم
، كل ماعليك هو تحديد النص
والضغط على المفتاج الساخن ( ctrl+alt+t ) ثم تحدد واجهة الادخال المناسبة
وستحصل على النص الصحيح
العمل مازال في بداتيه ، يمكنك متابعة تطورات العمل في ساحة النقاش
تم كتابة البرنامج في كل من
Delphi
C++ Builder
Paldo عشق من أول نظرة
15 يونيو 2007كعادتي احب ان افكر بالمسقبل كثيراً ، فهذه المرة كنت افكر بالانتقال القادم لنظام التشغيل
فبعد اصدار Microsoft لـ Windows Vista اصبح هناك مفرق للطرق
فجميع اعمالي متوافقه او مبنية على انظمة Windows السابقة ، ولاكن المستقبل سيحتم علي الانتقال الى ماهو جديد لامحالة
خلال الفترة السابقة كنت قد حصلت على توزيعات Linux المختلفة كـ Suse ، Ubuntu , Mandriva ..
ولاكن لم يكن هناك آلفه كما هو الحال مع XP
ولاكن !!
اليوم استطعت الحصول على احدى توزيعات Linux الجديدة والتي تدعى Paldo
بعد تجربة امتدت لـ 5 دقائق فقط حصلت هناك الفه غير مسبوقة سواء لي انا او لجهازي المحمول
فكانت متناغمه تناغم تام مع Hardware ، وكذلك ايضاً فهي نسخة موجهه للمبرمجين حيث تحتوي بشكل اساسي على اغلب بيئات التطوير لـ Linux
حتى اني أصبحت اشك بأن هذه التوزيعة صنعت لي انا خصيصاً ولجهازي انا بالتحديد ![]()
سنتحدث عنها بمزيد من التفاصيل في تدوينات قادمه
( والله يديم المحبه )





