[نقاش] لماذا لا يتفقون على لغة برمجية واحدة ؟

AbdullahMY

ان تخرج لغة جديدة يتفق عليها كل الشركات لدرجة هذة اللغه يمكن برمجة بها اي شيء !! ويندوز - اندرويد - IOS - العاب على جميع المنصات - ويب وكل شيء لكي تسهل هذة العملية على المبرمج الذي يحتاج الى تعلم اكثر من لغه برمجة

اذا كان يدير شركتة وحيدا

السؤال هنا : ما هي الصعوبات التي تواجة هذة الفكرة

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

بسبب التغيير السريع جداً للتقنيه , الويب كمثال اختلف جداً عن ماكان في السابق مجرد html - css - small Vanilla JS blah blah

الان يوجد stacks كثيره ولغات برمجيه لاكمال المشروع او النظام البرمجي حتى تطبيقات الاندرويد يجب ان يتم دعمها عبر سيرفر الخ اي انها تقنيات مترابطه وسريعه التغير

التقنيه تتغير بشكل سريع لايسمح للشركات العملاقه او المبرمجين الكبار بان يوحدو المقاييس وبدون توحيد المقاييس لن تستطيع ايجاد لغة تبرمج لك شي مع ذالك يوجد محاولات رائعه من عدة شركات مثال توظيف الjavascript لبرمجه تطبيقات الهواتف

مع ذالك تختلف المكتبات وحتى طريقه كتابه الاكواد مثال بعض المكتبات تستخدم typescript التي يتم تحويلها الى js لاحقاً واخرى javascript هذا يعني ان حتى ال javascript syntaxقد يتم التخلي عنه للتبسيط على البرمج وهذا ايضاً يفتح مجال تخصص للمبرمجين وكذالك تعقيدات اخرى لمبرمجين اخرين وتنفتح مجالات اخرى وهكذا !

أرى أن الموضوع معقّد ومستحيل، تمامًا كما أرى استحالة توحيد لغات البشر إلى لغة واحدة كالعربية أو الإنجليزية، فالتنوّع والاختلاف سنّة من سنن الحياة.

لان كل لغة لها ميزاتها و لها عيوبها، و قربها من لغة التجميع

الفكرة غير واقعية وغير عملية، تصميم لغات البرمجة يخضع لعدد من العوامل والاهداف لا يمكن تحقيقها جميعا بنفس المقدار فبينهم trade-off فعلي سبيل المثال الجافا يمكنها التعامل مع عدد من المنصات المختلفة ولكن يأتي هذا علي حساب الكفاءة والسرعة والحجم، السي والسي بلس بلس قادرة علي التعامل مع تفاصيل علي أدني مستوي ولكن ياتي هذا علي حساب سهولة تعلمها

هذه مجرد لمحة بسيطة جدا إذا أردت تفاصيل أكثر اقرأ

وهذا ويوجد جانب تجاري بالموضوع لكن لنتجاهله فالفكرة غير قابلة للتنفيذ عمليا من الأساس.

من الصعب ذلك لكن من وجهت نظري الشخصية رغم لست على دراية كبيرة بلغات البرمجة لكن هذه المشكلة

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

صحيحة ان لكل لغة ميزة عن الأخرى لكن تبقى كل شركة متشبثه بافكارها و مبادئها

وجهة نظر قاصرة

لأن اللغات موجهة حسب البيئة و الهدف

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

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

أنت كمن يقول "لما لايتفقون على سيارة واحدة"

لن نختلف على صعوبة الامر او استحالته

لكن لوهلة لو كان فعلا هناك لغة واحدة مثل C++ تدعم جميع المنصات ويمكن تحويل انماطها

مثل السيارات الجديدة

بضغطة زر تتحول للوضع الرياضي وبزر اخر للوضع الاقتصادي واخر العادي

فعلا اتمنى ان تكون هنالك لغة وحده لان الامر مزعج

لكي اتمكن من اطلاق تطبيقي احتاج لتعلم لغة للسيرفر مثل PHP او Nodejs

وللموقع احتاج Js

وللاندرويد Java

وللايفون سويفت

وللعمل C#

فعلا الموضوع مززززعج

باختصار شديد الاختلاف الجوهري الذي يميز لغة برمجية عن أخرى هو تعاملها مع العتاد أو ما يعرف بالهاردوير فكل لغة لديها طريقة معينة لمعالجة المدخلات والمخرجات وكيفية تنظيمها

هنالك صعوبات كثيرة تواجه هذه الفكرة أهمها

1- التنافس على الربح والسيطرة على السوق التقني بسبب تعدد الشركات

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

والتنافس الشديد بين هذه الشركات سيجعلها بعيدة جداً عن الاتفاق حول هكذا أمر

2- صعوبة التخلص من التاريخ التراكمي للبرمجة والبرامج

كثير من لغات البرمجة هي لغات قديمة نسبيا وقد تم استخدامها والتعامل معها لسنين طويلة وكثير من البيئات والبرامج الكبيرة اصبحت مرتبطة بهذه اللغات البرمجية القديمة

فمن الصعب والمكلف جداً أن تأتي لغة جديدة من الصفر لتكون بديل عن كل التراكمات والبناء السابق

3- التفاوت في الأذواق والاختيارات

مثلاً شخصيا أن لا أطيق عدم وجود الحواصر {} كما في لغة البايثون أبغض لغة البايثون بسبب اعتمادها على المسافات بدلاً من الحواصر

لكن شخص أخر ربما سيعشق البايثون لنفس السبب الذي يجعلني أكره البايثون

وهذا التفاوت في الأذواق والاختيارات موجود على مستوى الأفراد وعلى مستوى الشركات والمؤسسات فطبيعي أن تتعدد لغات البرمجة كانعكاس طبيعي لهكذا اختلاف

وهنالك أسباب أخرى لكن أكتفي بما سبق

محبتي

-2

لااحد يهتم بصعوبه اللغه فهناك من يتقنها دوماا