تم بناء Discourse على Rails و Ember، وهما خياران رائعان يدعمان نجاح Discourse. ومع ذلك، تم اتخاذ هذا القرار في عام 2012، وأتساءل كيف قد تختلف الخيارات لو بدأ المشروع في عام 2020؟ أتساءل ما هو رأي فريق تطوير Discourse في البدائل:
هل ستفيد الأطر أو اللغات الأسرع مثل Node أو Go حالة الاستخدام المستهدفة.
هل ستعمل أطر الواجهة الأمامية الأخف وزناً (مثل React أو Vue) أو حتى عدم استخدام أي إطار للواجهة الأمامية بشكل أفضل أو بنفس الكفاءة لـ Discourse؟
أعجبني أنك تشارك مقترحاتك مع فريق مطوري Discourse.
( رأيي الشخصي )
أعمل على Discourse منذ ثلاث سنوات (Rails و Ember.js)، كما عملت على مشاريع أخرى مبنية باستخدام Angular و React وغيرها. كما عملت كثيراً على Canvas LMS (Rails و React.js).
أجد أن السرعة والأداء في Discourse أفضل بكثير مقارنة بمنتجات كبيرة أخرى، بما في ذلك العديد من المشاريع مفتوحة المصدر. Discourse سريع جداً، وسلس كالحرير، وقوي. الأحداث في الوقت الفعلي هي الجزء السحري في Discourse.
في الوقت الحاضر، لا يهم كثيراً لغة البرمجة التي تم تطويرها بها. الجزء الاستثنائي هو كيف تم تطويره بذكاء وكيف تم دمج كل شيء. إنه المجتمع الذي يعمل ليلاً ونهاراً لجعله أفضل كل يوم.
إنه دائماً الخيار الأفضل تحسين وتحسين ما نملكه.
فقط فكر:
إذا كان Discourse إنساناً، فإن Ember.js هو دمه. ولكن نعم، يمكنك القول إن Ember.js هو “نوع A+” من الدم، بينما اللغات الأخرى تشبه الأنواع الأخرى مثل B و O و AB وما إلى ذلك. الخلاصة هي أنه يمكنك تقديم نظام غذائي جيد وحياة صحية لـ Discourse (المُعتبر كإنسان) للحفاظ على صحته؛ بدلاً من تغيير الدم بالكامل بنوع جديد مثل B+. هذا لن ينجح.
بالإضافة إلى ذلك، لدينا مجموعة كبيرة من الإضافات المطورة بـ Ember.js لـ Discourse، وستتوقف عن العمل إذا قمنا بتغيير اللغة وما إلى ذلك (بعد كل شيء، Discourse مبني على Ember.js).
يرجى مشاركة أفكارك حول ما ينقصه، فهذا سيساعد فريق Discourse على تحسينه.
يرجى إخبارنا إذا لاحظت أي معايير قبل التفكير في لغة مختلفة.
شكرًا لك @codinghorror@ashishprajapati على مشاركة الرؤى. لم يكن سؤالي مقصودًا كتلميح أو شكوك في الخيارات، بل تساءلت عن الإيجابيات والسلبيات التي ترونها في هذه المرحلة من المشروع.
أتفق تمامًا على أن اختيار الإطار أو اللغة في النهاية أقل أهمية من المجتمع والتنفيذ.