النتائج 1 إلى 15 من 15

الموضوع: Zizwar : بالمصادفة اكتشفت أن الجافا سكريبت تقبل المتغير العربي ومنها بدأت الانطلاقة

  1. #1

    Zizwar : بالمصادفة اكتشفت أن الجافا سكريبت تقبل المتغير العربي ومنها بدأت الانطلاقة



    بيدي: بالمصادفة اكتشفت أن الجافا سكريبت تقبل بالمتغير العربي ومنها بدأت انطلاقة المشروع


    شكل يوضح هيكلية تعامل المتصفح مع لغة الوينو

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

    من يكون ابراهيم بيدي؟
    - إبراهيم بيدي 25 سنة أمازيغي الأصل مسقط الرأس الأطلس الكبير بمدينة ورززات جنوب المملكة المغربية، أقيم حاليا مع أسرتي بمدينة الدار البيضاء، كانت دراستي الفنون التشكيلية، إلى أن تعرفت على الزائر الجديد الانترنت سنة 1998، حيث رافقني صديق لي رغما عني إلى أحد نوادي الانترنت، لم أكن أريد أن أذهب معه لأني لم أكن أفقه شيئا عن الحاسوب، فكيف بالإنترنت، تعلمت التعامل مع الانترنت قبل أن أتعلم كيف أتعامل مع سطح المكتب، شيئا فشيئا بدأت أتعلم، إلى أن اكتسبت و لله الحمد خبرة في البرمجة، بلغات البرمجة القياسية ECMAScript JScript و ActionScript و خصوصا JavaScriptوإتقان اللغات التي تتوافق مع المنضمة العالمية w3s كHtml Xhtml Css Dom Svg Xml.

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

    ماهي لغة الوينوسكريبت WinoScript - وما هو الهدف والفكرة من ورائها وماذا يعني هذا الاسم؟
    - بالمصادفة اكتشفت أن الجافا سكريبت تقبل بالمتغير العربي بمعنى أنها تقبل كود آسكي كمتغير، وكنت اعرف من قبل ما تقدمه الجافا سكريبت من سهولة في التوصيف، وانه يمكن بسهولة أن يحمل أي متغير قيم الدوال، أو أن نجعل دوال جديدة على أساس الموجودة، ففكرت مباشرة بعد هذا في استغلال هذه القدرات التي تمكنني إياها الجافا سكريبت في كتابة أول وسيط بين اللغة العربية والبرمجة.
    والوينوسكريبت إن قلنا عليها لغة فهي لغة برمجة نصية وليست هيكلية أي هي ترجمة للغة أخرى Scripting Languages.

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

    أصل التسمية:
    سكريبت: نص برمجي غالبا يترجم من طرف برنامج ك javascript من طرف المتصفح و ActionScript من طرف flashPlayer وmircScript من طرف الميرك وليس كباقي لغات البرمجة الهيكلية. وينو: للتملك بالأمازيغية تعني (لي) بالعربية كهذا لي وينو سكريبت كأنك تقول (لي برمجتي النصية).

    كيف طورت هذه اللغة (السكريبت) وهل تعمل على جميع المتصفحات؟
    - في الإصدار التجريبي الأول، كان ملزما أن تبرمج باللغة العربية وسط الصفحة ضمن الوسم سكريبت، والبرمجة تكون محصورة بيني علامتي التجاهل - هنا البرمجة - حتى يتم تجاهل مضمون السكريبت ويتم تفادي الأخطاء التركيبية الsynatax الناتجة عن أخطاء الكتابة كون البرمجة بالعربية ستعتبر خطأ ما لم تترجم، وما إن تحمل الصفحة حتى يقوم ملف ال wino.script بسحب ذاك الكود العربي ويقوم بترجمتها ثم إعادة تفعيلها.

    الآن أصبح بالإمكان البرمجة في ملف نصي مستقل وبدون شروط، واستدعاء هذا الملف بسطر واحد وسط الصفحة، وثم الاستعانة بتقنية أجاكس (جافا سكريبت التزامنية بالإضافة إلى xml) لاستدعاء ملف البرمجة وكذا المكتبات الخاصة بالدوال والكائنات العربية الموجودة في ملفات مستقلة عن بعضها أو قد تكون مخزنة في قواعد البيانات، نضع مثلا ملف به ترجمة لصفحات الأنماط الانسيابية(css)، هذا الملف يكون مستقلا عن الوينوسكريبت ولا يتم استدعاؤه إلا حينما يطلب المبرمج ذلك من خلال الكود، نفس الأمر مع باقي دوال الجافا سكريبت الخاصة بالزمن أو تلك الخاصة بالتعامل مع المستندات و كائنات (أكتف.إكس)، وتم الاعتماد على DOM(نموذج مستند اتحاد الشبكة العالمي) حتى تعمل على جميع المتصفحات القياسية.

    هل تعتزم على طرح منصة IDE يمكن استخدامها لكتابة سكريبتات بلغة WinoScript ؟
    - أفكر بهذا؟ لكن كل بأوانه، الأولوية الآن لآلية (نواة) الوينوسكريبت بعد طرح النسخة الرسمية وتم الإقبال عليها، قد تتحقق إن شاء الله أرضية لمنصة خاصة بالوينوسكريبت.

    القواعد اللغوية والأوامر البرمجية في اللغة (مثل الجمل الشرطية مادام أو الوظائف مثل صاين) هل تم الرجوع لقاموس مصطلحات اللغة العربية في الحاسب أم تم الاجتهاد في بناء التعبيرات البرمجية؟ وكيف يمكن البرمجة بهذه اللغة (السكريبت)؟
    - المصطلحات البرمجية ك ادا() مادام() مع() تجزيء() الصاين() استدعي() او جيب التمام هم من اجتهادي، وضعت مؤقتا وهي قابلة للتغير، لأنني لا يمكن أن أجزم أنها صحيحة 100 ٪.
    و أكرر أن هذه الطريقة في كتابة الكود ليست حكرا على اللغة العربية فقط فالصيني والهندي والفارسي والألماني بإمكانه أن يكتب برنامجه أو سكريبته بهذه الطريقة بلغته التي يتقنها حتى أن الإنجليزي الذي مل من المصطلحات الخاصة بجافا سكريبت يستطيع أن يقوم بالبرمجة بطريقته الخاصة وبمصطلحاته التي يراها ملائمة له.. لكن آلية البرمجة تبقى واحدة.
    لبرمجة كود بالوينو سكريبت، نفتح ملفا نصيا عاديا، وتكون التقنية كما ECMAscript القياسية، أي لتجاهل السطر نستعمل علامتي // و لتجاهل عدة اسطر /**/ ولإعلان المتغير
    المتغير الف = 1000 ;
    المتغير ا = ب = ج = د = ه = و = ز = «هذه حروف عربية» ;
    الدالة دالة_جديدة(){} او دالة_جديدة = الدالة(){}
    الفاصلة المنقطة غير مهمة طالما أننا قفزنا السطر في البرمجة، ولإعطاء متغير قيمة ما نستعمل = ولإضافة + ولإضافة قيمة عليه += و للمقارنة == وللمخالفة ! ...وهكذا.

    هل تحتاج لغة WinoScript إلى مترجم خاص بها؟ إذا نعم ما هو هذا المترجم ومن قام بنائه وكيف يمكن تضمينه في المتصفح؟
    - بطبيعة الحال وينو سكريبت تحتاج إلى مترجم خاص بها، بعد أن ننتهي من ملف البرمجة بالعربية نقوم بتضمينه في المتصفح أي باستدعاء المفسر أولا كما نستدعي أي ملفjs لكن ببعض الإضافات الخاصة على الشكل رقم (1)، فيقوم المتصفح أولا بإدخال ملف ال wino.script أي المفسر الذي هو أصلا مبرمج بالجافا سكريبت وفق المعايير القياسية، حينها يقوم المفسر بجلب الملف الذي يكون في التعريفة link، بعد جلبه يقوم بترجمة الجمل الشرطية وإعادتها لصيغتها البرمجية ثم يُفعل الكود، لكن عند تفعيلها قد تكون هناك استدعاءات من داخل الملف العربي لبعض الدوال أو الكائنات أو مكتبات، فيقوم المفسر بإدخالها وتفعيلها ثم إتمام الكود سطر سطر، وهذه الكائنات أو المكتبات ممكن أن تكون مرفقة مع الوينو سكريبت كما يمكن إضافتها من طرف المبرمج أو المطور، فمثلا كائن HttpRequest فالمفسر سيقوم بكل المعاملات الخاصة بهذا الكائن والمبرمج قد لا يحتاج ان يكون ملما بتقنية أجاكس للتعامل بها فيكفي المبرمج ان يكتب في الحالات العادية الموجود في شكل رقم (2).
    بذلك يمكن للمطورين أن يضعوا ملفات وكودات كبيرة بال js وتحويله لكائن له خصائص ومناهج سهلة الوصول والتعامل باللغة العربية، كالكود مبيان سكريبت الذي يعوض ما تقدمه مكتبة GD في إظهار المنحنيات، برمجتها والتعديل عليه شبه معقد، لكن يمكن أن يحوله المطور لكائن سهل التعامل معه، نستدعيه وقت حاجتنا له في البرمجة العربية.
    وهذا المفسر قمت ببنائه بنفسي، حسب خبرتي وتجربتي المتواضعة.

    كم استغرق بناء لغة WinoScript وهل هناك أمثلة تطبيقية عليها... وكيف وجدت إقبال المبرمج العربي عليها؟
    - النسخة التجريبية استغرقت حوالي ثلاث أشهر، هذا الإصدار الجديد فيه تغييرات جوهرية، قد شارفت على انتهائه، استغرق تطويره مدة سنة ونصف.
    من الأمثلة التطبيقية على الوينو سكريبت هي إعادة برمجة الساعة العربية كله باللغة العربية، حيث يفوق عدد اسطر برمجته 400، عندما طرحت الإصدار التجريبي الأول كان هناك تشجيع من جميع من رآه هناك من نصحني بتجنب بعض الأخطاء وآخرون دعوني لاستفادة من تجاربهم السابقة وبعض قام بإنجاز كومبايلر بطريقة مختلفة، والبعض قدمه وشرحه أفضل من واضعه وكلهم مستعدون للبرمجة بها، لكن كانت هناك مشكلة هي انه لم يتم الاتفاق على أسماء الدوال وكيف تكون البرمجة رغم أن قاعدة البرمجة هي نفسها ECMAScript القياسية، لم تكن لي إستراتيجية محكمة لضبط اتجاه اللغة، خصوصا أنها تصادفت آنذاك مع مشاكل خاصة لكن في حين الإصدار الرسمي للغة الوينوسكريبت النسخة العربية سيكون الإصدار وفق معايير قياسية مضبوطة متفق عليها من لدن الجميع، إن شاء الله وموقعه سيكون اكبر مثال عليه.

    لمن يريد أن يجرب اللغة كيف يمكن له البدء باستخدامها؟
    - يمكن له أن يحمل النسخة التجريبية من سوالف أو موقع مركز السكريبتات العربية، لكن سيبرمج وفق نهجي الخاص الذي وضعت له آنذاك، لكن يمكن أن يجرب ويضيف فيه ليكتشف قدرات اللغة، إلى حين صدور الإصدار النهائي في الموقع الرسمي www.winoscript.com

    هل هناك نية لطرح اللغة (السكريبت) كمصدر مفتوح... أو إرسالها لأحد المهتمين لتبنيها سواء كان في العالم العربي أو الغربي؟
    - لا يمكن للوينوسكريبت إلا أن تكون مصدرا مفتوحا، ولا يمكن أن تكون غير ذلك، وتبني للوينو سكريبت على أساس أن يبقى مصدرا مفتوحا ومتاحا للجميع أمر مقبول، رغم إني أفضل دعمه فقط، معنويا بالدرجة الأولى، وماديا بالدرجة الثانية.

    ماهي خططك المستقبلية؟
    - بعد إتمام الوينو سكريبت سأحول كل سكربتاتي القديمة إليها وأبرمج بها مشاريع كبيرة إن شاء الله، وبعدها سأبدأ بمشروع إدخال الحرف الأمازيغي (تفناغ) إلى الحاسوب والانترنت ليواكب التكنولوجيا الحديثة، والاستفادة من التجربة التي مرت بها العربية قبل دخولها، حتى أكون أول واحد يبرمج باللغة الأمازيغية


    http://www.alriyadh.com/2005/12/20/article116639.html





    __________________
    لاَ اِلَهَ اِلاَّ اَنْتَ سُبْحَانَكَ اِنِّي كُنْتُ مِنَ الظَّالِمِينَ


  2. #2


    السلام عليكم ،،،
    ولله الحمد أول لغة برمجة عربية (مخصصة للويب) ، قد لا تكون لغة برمجة ولكن يكفي Zizwar فخراً أنها تكتب بلغة القرآن ...
    شكراً "مراقب1" على الحور ، ولي عودة ...






  3. #3
    عضو نشيط جدا
    تاريخ التسجيل
    Nov 2001
    المشاركات
    320


    اصلا هذا الانسان مبدع في مواضيعه
    وللامام والله يوفقك





    __________________
    http://www.swalif.net/softs/
    جامعه العرب الالكترونية

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2005
    المشاركات
    517


    ما شاء الله عليك اخونا مراقب1 وللأمام ومزيدا من التقدم





    __________________
    =================
    مدونة أيفونك
    http://iphone-k.com/wp
    =================

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Jun 2005
    المشاركات
    180


    الله يوفق الجميع لما يحبه ويرضاه






  6. #6


    ما شاء الله ..وبالتوفيق لأخونا الأستاذ إبراهيم

    والشكر موصول للأخ العزيز مراقب1 على الموضوع





    __________________
    -
    لا إله إلا الله العظيم الحليم، لا إله إلا الله رب العرش العظيم، لا إله إلا الله رب السموات ورب العرش الكريم
    -

  7. #7
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2004
    المشاركات
    723


    الله يوفق أخونا إبراهيم والبقية إن شاء الله





    __________________
    سبحان الله وبحمده---سبحان الله العظيم
    برامج عربية:
    البوابة العربية
    المدونه العربيه
    MySmartBB

  8. #8
    عضو فعال
    تاريخ التسجيل
    Jun 2003
    المشاركات
    1,329


    دعائي له و لكل المسلمين بالتوفيق و السداد






  9. #9
    مُجَاهِد سابقاً
    تاريخ التسجيل
    Apr 2004
    المشاركات
    12,000


    الله يكون في عونه ..

    والله يوفقه ..

    والى الامام ..





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

  10. #10
    عضو نشيط
    تاريخ التسجيل
    Jun 2003
    المشاركات
    39


    ماشاءالله تبارك الرحمن


    بالتوفيق يا غالي





    __________________
    معهد روعه ديزاين التعليمي

    www.rww3a.com

  11. #11


    مع تمنياتي لك بمزيد من التقدم والازدهار






  12. #12
    عضو نشيط جدا
    تاريخ التسجيل
    May 2002
    المشاركات
    389


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

    والشكر موصول للأخ العزيز مراقب1 على الموضوع
    والنعم في اخينا ابراهيم نعم الرجل يستاهل كل خير





    __________________
    PixStyle.com

  13. #13
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    378


    ما شاء الله عليه الأخ إبراهيم :

    خبره + تواضع + حرص على مساعدة إخوانه وهذا كله = حب الجميع له وتقديرهم .

    ولا يخسر شيء بالطبع .





    __________________
    اللهم عجل بفرجك لأمة نبيك محمد عليه الصلاة والسلام .

  14. #14
    خبير JavaScript
    تاريخ التسجيل
    Jul 2002
    المشاركات
    2,920


    آخر ماكنت أتوقع هو ان يكون المراقب1 هو من له السبق الموضوع :nice:
    شكرا لكم إخوتي على ردودكم الطيبة
    بالمناسبة كانت سوالف سوفت اول منتدى طرحت فيه الموضوع عند اول مرة اكتشفت فيها ان جافاسكريبت تقبل بالمتغير العربي في هذا الموضوع
    لن تصدقو لكن صدقو
    ثم تلاه بعد ثلاث أشهر موضوع مميز به أمثلة
    WinoScript البرمجة بالعربية حقيقة أم خيال
    بعدها أعدت برمجة الساعة العربية بالوينو سكريبت
    Clock Arabic V3 WS ساعة عربية في موقعك شكلا و مضمونا

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

    وهنا بعض الأمثلة
    سنضع مثال لكود ننشأ به صورة، وعند النقر على هذه الصورة تتغيرالى صورة أخرى، والعكس اذا نقرنا مرة أخرى تعود الصورة الأولى :
    ==========

    ادخل.مكتبة("الوسوم") // ندخل مكتبة التي ستكون بها دوال لإنشاء الوسوم
    المتغير الصورة_الأولى = "img/images1.gif" // نعطي للمتغير قيمة امتداد الصورة الأولى
    المتغير الصورة_الثانية = "img/images2.gif" // نعطي للمتغير قيمة امتداد الصورة الثانية
    المتغير مقبض_الصورة = انشأ.العنصر("الصورة") // ننشأ وسم الصورة والمتغير سيكون هو المقبض
    الوسم.امتداد(مقبض_الصورة, الصورة_الأولى ) // هذه الدالة ستركب لنا امتداد الصورة في المقبض
    مع
    (الوسم){ // الدالة مع ستجعلنا دائما مع الوسم حتى لانكرره
    الطول(مقبض_الصورة, 200 ) // نحدد طول الصورة
    العرض(مقبض_الصورة, 100 ) // عرض الصورة
    العنوان(مقبض_الصورة, "اضغط هنا لتغيير الصورة" ) // عنوان الصورة
    }
    عند.النقر(مقبض_الصورة, "غير_الصورة()" ) //عند النقرعلى الصورة يتم استدعاء الدالة غير_الصورة()
    غير_الصورة = الدالة(){ // نفتح الدالة
    اذا(الوسم.امتداد(مقبض_الصورة) == الصورة_الأولى){ // اذا الإمتداد يساوي الصورة_الأولى
    الوسم.امتداد(مقبض_الصورة, الصورة_الثانية ) // غير امتدا الصورة الى الصورة الثانية
    } مالم { // مالم يتحقق الشرط
    الوسم.امتداد(مقبض_الصورة, الصورة_الأولى ) // غير امتدا الصورة الى الصورة الأولى
    }
    }

    ========
    مثال آخر لإستعمال كائن CDO.Message الذي يرسل بريد الكتروني من الجهاز مباشرة لأي بريد آخر، لكن شرط ان يكون الجهاز يدعم هذا الكائن.
    نريد ان نرسل ثلا ث رسائل دفعة واحدة لثلاث اشخاص ومضمون الرسالة يكون واحد ، وبعد الانتهاء من الإرسال تظهر لنا نافذة تحذيرية تفيد اننه قد تم الإرسال بنجاح
    ========
    المتغير البريد = ["s@s.com","w@w.com","z@z.com"]
    المتغير عنوان_الرسالة = "السلام عليكم"
    المتغير موضوع_الرسالة = "رسالة تجريبية"
    المتغير كائن_رسالة = استدعيى("الملقم")
    اذا(! كائن_رسالة ){
    نافذة.تحذير("لا يوجد كائنCDO.Message ")
    } مالم {
    مادام(المتغير ب=0 ;ب>3; ب++){
    مع(كائن_رسالة){
    من("x@x.com")
    الى(البريد]ب[)
    العنوان(عنوان_الرسالة)
    الموضوع(موضوع_الرسالة)
    }
    }
    نافذة.تحذير("ثم الإرسال للجميع بنجاح")
    }
    ========
    ، بعد ان ننتهي من ملف البرجة بالعربية نقوم بتضمينه في المتصفح أي باستدعاء المفسر اولا كما نستدعي أي ملف ال js لكن ببعض اللإضافات الخاصة على الشكل التالي
    كود PHP:
    <script lang="winoscript" src="wino.script" link="test.ws" ></script> 
    او بطريقة مبتكرة و جميلة في آن واحد
    كود PHP:
    <script //بسم الله الرحمن الرحيم
    lang "winoscript"//نحدد لغة البرمجة
    src "wino.script"//إمتداد ملف المفسر
    link "test.ws"//إمتداد الملف المبرمج عربيا
    ></script> 
    ستكون لي عودة أخرى ان شاء الله






  15. #15
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2005
    المشاركات
    343


    بالتوفيق أخوي Zizwar ومن أحسن إلى أحسن ..

    وأنا أشهد إن مواضيعك تدل على إنك شخص عاقل لانها كلها مفيدة مو مثل بعض الأشخاص الله يستر علينا وعليهم

    وكمان لك أعمال تفتخر بها سوالف سوفت

    تحياتي لك
    وإلى الأمام











ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض