مرحبًا بك في الريبو الرسمي لتصميم لغة C#. هذا هو المكان الذي يتم فيه تطوير ميزات لغة C# الجديدة واعتمادها وتحديدها.
تم تصميم لغة C# بواسطة فريق تصميم لغة C# (LDT) بالتنسيق الوثيق مع مشروع Roslyn، الذي ينفذ اللغة.
يمكنك أن تجد:
إذا اكتشفت أخطاء أو أوجه قصور فيما ورد أعلاه، فيرجى ترك مشكلة لرفعها، أو حتى الأفضل: طلب سحب لإصلاحها.
بالنسبة لمقترحات الميزات الجديدة ، يرجى رفعها للمناقشة، وتقديم اقتراح فقط كإصدار أو طلب سحب إذا تمت دعوتك للقيام بذلك من قبل أحد أعضاء فريق تصميم اللغة ("المؤيد").
يتم وصف عملية التصميم الكاملة هنا. نظرة عامة أقصر أدناه.
يتم إجراء النقاش المتعلق بميزات اللغة في شكل مناقشات في هذا الريبو.
إذا كنت تريد اقتراح ميزة، أو مناقشة ملاحظات أو مقترحات التصميم الحالية، وما إلى ذلك، يرجى فتح موضوع مناقشة جديد.
من المرجح أن تتم قراءة المناقشات القصيرة والتي تبقى حول الموضوع. إذا تركت التعليق رقم خمسين، فمن المحتمل ألا يقرأه سوى عدد قليل من الأشخاص. لتسهيل التنقل في المناقشات والاستفادة منها، يرجى مراعاة بعض القواعد الأساسية:
يمكن تحقيق مقترحات اللغة التي تمنع حدوث بناء جملة معين باستخدام محلل روزلين. سيتم رفض المقترحات التي تجعل بناء الجملة الحالي غير قانوني بشكل اختياري من قبل لجنة تصميم اللغة لمنع زيادة تعقيد اللغة.
عندما يجد أحد أعضاء C# LDM أن الاقتراح يستحق النظر فيه من قبل الفريق الأوسع، فيمكنه دعمه، مما يعني أنه سيقدمه إلى اجتماع تصميم لغة C#. تتم مناقشة المقترحات دائمًا في المناقشات المرتبطة، وليس في قضية البطل. لم نتبع هذه السياسة دائمًا، لذا ستتم مناقشة العديد من القضايا الرئيسية حولها؛ نقوم الآن بقفل المشكلات لمنع حدوث مناقشات جديدة بشأنها. سيكون لكل قضية بطل رابط للمناقشة عليها.
تتطور المقترحات نتيجة للقرارات المتخذة في اجتماعات تصميم اللغة، والتي تسترشد بالمناقشات والتجارب وأعمال التصميم غير المتصلة بالإنترنت.
في العديد من الحالات، سيكون من الضروري تنفيذ ومشاركة نموذج أولي لميزة ما من أجل الوصول إلى التصميم الصحيح، وفي النهاية تحديد ما إذا كان سيتم اعتماد الميزة أم لا. تساعد النماذج الأولية على اكتشاف مشكلات التنفيذ وسهولة الاستخدام الخاصة بالميزة. يجب تنفيذ النموذج الأولي في شوكة من مستودع Roslyn ويلبي الشريط التالي:
بمجرد الموافقة عليها، يجب تنفيذ الميزة بالكامل في Roslyn، وتحديدها بالكامل في مواصفات اللغة، وعندها يتم نقل الاقتراح إلى المجلد المناسب للميزة المكتملة، على سبيل المثال مقترحات C# 7.1.
إخلاء المسؤولية : هناك اقتراح نشط قيد الدراسة النشطة لإدراجه في إصدار مستقبلي من لغة البرمجة C#، ولكن ليس مضمونًا بأي حال من الأحوال تضمينه في النهاية في الإصدار التالي أو أي إصدار آخر من اللغة. قد يتم تأجيل الاقتراح أو رفضه في أي وقت خلال أي مرحلة من العملية المذكورة أعلاه بناءً على التعليقات الواردة من فريق التصميم أو المجتمع أو مراجعي التعليمات البرمجية أو الاختبار.
لدينا بعض المعالم المختلفة للمشكلات المتعلقة بالريبو:
يتم عقد اجتماعات تصميم اللغة (LDMs) بواسطة LDT والضيوف المدعوين من حين لآخر، ويتم توثيقها في Design Meeting Notes في مجلد الاجتماعات، ويتم تنظيمها في مجلدات حسب السنة. تم توضيح عمر مذكرة اجتماع التصميم في الاجتماعات/README.md. LDMs هي المكان الذي يتم فيه اتخاذ القرارات بشأن إصدارات C# المستقبلية، بما في ذلك المقترحات التي سيتم العمل عليها، وكيفية تطوير المقترحات، وما إذا كان سيتم اعتمادها ومتى.
يمكن العثور على مواصفات ECMA-334 الحالية في نموذج تخفيض السعر في مستودع لغة C# القياسية.
يمكن العثور على التطبيق المرجعي للغة C# في مستودع Roslyn. يتتبع هذا المستودع أيضًا حالة التنفيذ لميزات اللغة. حتى وقت قريب، كان هذا أيضًا هو المكان الذي يتم فيه تعقب آثار تصميم اللغة. يرجى إتاحة بعض الوقت حتى ننتقل إلى المقترحات النشطة.