***لغات البرمجة المفتوحة***

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

***لغات البرمجة المفتوحة***

مُساهمة من طرف karim mouzoune في الجمعة 15 فبراير - 4:11

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

السلام على من أتبع الهدى
"لأن بعض الذين يقرؤن المقالات غير مسلمين"

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

اولا لغات البرمجة الجديدة وكذلك المفتوحة المصدر:
أشهرها:
1- لغة باثيون "الثعبان"
2- لغة روبي "الحجر الكريم الاحمر"
3- لغة بي اتش بي
4- لغة بو "تطوير للغة باثيون"

ثانيا لغات برمجة سابقة تم اعادة برمجتها من الصفر
اشهرها
1- جافا
2- بيسك
3- سي
4- سي بلس بلس
5- مونو (مجموعة فيجول استوديو دوت نت على آخر اصدار)

ثالثا قواعد البيانات:
اشهراها
MySQL

رابعا الواجهات المتحكمة IDE:
أشهرها حاليا
شارب دليفيبور خاصة بلغات الفيجول دوت نت

والبقية مثل لغات الذكاء الصناعي والواجهات IDE والكثير من اللغات سوف نتناولها في النقاش ان شاء الله

سوف ابدأ بمشروع مونو
موقع المشروع http://www.monoproject.com
كان الغرض منه في البداية ادخال لغات فيجول استديو الى لينكس ولكن تحول الان لغة يمكن استخدامها في اي نظام تشغيل

ماذا يحتوي:
سي شارب آخر اصدار C#
أي إس بي دوت نت آخر اصدار ASP.NET
فيجول بيسك دوت نت آخر اصدار VB.NET
بوو "تطوير للغة باثيون الشهيرة"
جميع تقنيات ميكروسوفت مثل ADO.NET و سيرفر شبيه بـ IIS
جميع مكتبات ميكروسوفت مع تغير طفيف للمكتبات التي تحوي اسم ميكروسوفت
إضافات جديدة للعمل على جميع الأنظمة

مميزاته:
1- مجاني + مفتوح المصدر "أي قابل لتطويرات جديدة"
2- يواكب تحديثات ميكروسوفت الاساسية للفيجول استديو دوت نت
3- إضافات خاصة غير موجودة لدى ميكروسوفت
4- العمل على اي نظام تشغيل
5- مدعومة من شركة نوفل

عيوبه:
1- يحتاج الى بعض الوقت لاضافات ميكروسوفت الجديدة
2- عدم ادخال تسهيلات الفيجول بيسك دوت نت مثل كتابة اول الحروف من for حتى يكملها لك
3- اختلاف اسماء بعض المكتبات "ولكن حلت بوجود منول للتوضيح"
4- غير مشهورة خاصة لدينا

***اود ان نناقش ايضا لغة برمجة عربية***

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

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

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

مع ذلك يبقى السؤال: لم لا؟

هل هناك لغات البرمجة أجنبية؟
كنت أظن أن جميع لغات البرمجة تستخدم اللغة الإنجليزية، لكن تبين لي بعد البحث عن أن هناك لغات برمجة صينية، كورية، إسبانية، ألمانية، روسية وعبرية، وركزوا على العبرية … ركزوا عليها كثيراً، لأن العبرية تكتب من اليمين إلى اليسار تماماً كالعربية، وتشترك مع العربية في الكثير من الكلمات، ثم هي لغة دولة العدو، فلماذا يستطيع هؤلاء جميعاً إنشاء أدوات برمجة بلغاتهم ولا نتمكن نحن من إنشاء لغة برمجة عربية؟

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

لغة Logo موجهة للأطفال بالمناسبة، وليست لغة إنشاء برامج، بل هي لغة رسم منطقية تهدف إلى تعليم الأطفال منطق البرمجة.

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

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

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

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

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

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

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

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

برنامج مثل هذا وباللغة العربية؟ سيكون أمراً رائعاً، من الجميل أن نوفر للناس أداة للبرمجة والإبداع لا تحتاج لمعرفة تقنية كبيرة.

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

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


تحياتي للجميع

لاتنسو دعائكم اصالح لي مع الردود المشجعة

[center]

karim mouzoune
تلميد نشيط
تلميد نشيط

عدد الرسائل : 90
العمر : 24
تاريخ التسجيل : 14/02/2008

معاينة صفحة البيانات الشخصي للعضو

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: ***لغات البرمجة المفتوحة***

مُساهمة من طرف هشام عدي في الجمعة 15 فبراير - 9:48

موضوع رائع أخي كريم واصل تقدمك إلى الأمام

هشام عدي
تلميذ جد فعال
تلميذ جد فعال

عدد الرسائل : 342
العمر : 23
الموقع : http://www.facebook.com/hicham.addy2
المستوى الدراسي : سنة أولى كلية العلوم الإقتصادية
تاريخ التسجيل : 11/02/2008

معاينة صفحة البيانات الشخصي للعضو

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى