اصطلاحات التسمية (البرمجة)
في برمجة الحاسوب ، اتفاقية التسمية هي مجموعة من القواعد لاختيار تسلسل الأحرف الذي سيتم استخدامه للمعرفات التي تشير إلى المتغيرات والأنواع والوظائف والكيانات الأخرى في التعليمات البرمجية المصدرية والوثائق .
قد يكون اختيار اصطلاحات التسمية مسألةً مثيرةً للجدل، إذ يرى مؤيدو كل اصطلاح أن اصطلاحهم هو الأفضل، بينما يرون أن اصطلاحات أخرى أدنى منه. ويُقال في اللغة الدارجة إن هذا الأمر مسألة عقيدة . [ 1 ] وقد وضعت العديد من الشركات أيضاً اصطلاحاتها الخاصة.
العناصر المشتركة
تختلف القواعد الدقيقة لاتفاقية التسمية باختلاف السياق الذي تُستخدم فيه. ومع ذلك، توجد عدة عناصر مشتركة تؤثر على معظم، إن لم يكن كل، اتفاقيات التسمية الشائعة الاستخدام اليوم.
الأحرف الكبيرة والصغيرة والأرقام
تُقيّد بعض قواعد التسمية استخدام الأحرف الكبيرة أو الصغيرة. بينما لا تُقيّد قواعد أخرى حالة الأحرف، بل تُحدّد تفسيراً دقيقاً بناءً على حالتها. وتُحدّد بعض قواعد التسمية أيضاً إمكانية استخدام الأحرف الأبجدية أو الرقمية أو الأبجدية الرقمية، وفي حال استخدامها، تُحدّد ترتيبها.
معرّفات متعددة الكلمات
من التوصيات الشائعة استخدام مُعرّفات ذات دلالة. قد لا تكون الكلمة الواحدة بنفس دلالة أو دقة الكلمات المتعددة. لذا، تُحدد بعض اصطلاحات التسمية قواعد للتعامل مع المُعرّفات "المركبة" التي تحتوي على أكثر من كلمة.
بما أن معظم لغات البرمجة لا تسمح باستخدام المسافات البيضاء في المعرّفات، فمن الضروري وجود طريقة لفصل كل كلمة لتسهيل فهم الأحرف التي تنتمي إلى كل كلمة على القراء اللاحقين. تاريخيًا، سمحت بعض اللغات المبكرة، ولا سيما FORTRAN (1955) و ALGOL (1958)، باستخدام المسافات داخل المعرّفات، حيث كان السياق يحدد نهاية المعرّف. وقد تم التخلي عن هذه الطريقة في اللغات اللاحقة لصعوبة تجزئة النص إلى رموز . من الممكن كتابة الأسماء ببساطة عن طريق دمج الكلمات، ويُستخدم هذا أحيانًا، كما هو الحال في mypackageأسماء حزم Java، [ 2 ] إلا أن وضوح الاسم يتأثر سلبًا في المصطلحات الطويلة، لذا يُستخدم عادةً نوع من الفصل.
الكلمات المفصولة بفواصل
إحدى الطرق هي فصل الكلمات المنفصلة بحرف غير أبجدي رقمي . الحرفان الشائعان لهذا الغرض هما الواصلة ("-") والشرطة السفليةtwo words ("_")؛ على سبيل المثال، يُكتب الاسم المكون من كلمتين " " على النحو التالي: " two-words" أو " two_words".
تُستخدم الواصلة بشكل شائع عند كتابة COBOL (1959) و Forth (1970) و Lisp (1958)؛ كما أنها شائعة في Unix للأوامر والحزم، وتستخدم في CSS . [ 3 ]
وعلى النقيض من ذلك، فإن اللغات في تقليد FORTRAN/ALGOL، ولا سيما اللغات في عائلتي C و Pascal ، استخدمت الواصلة لعامل الطرح الداخلي ، ولم ترغب في اشتراط وجود مسافات حولها ( كلغات حرة الشكل )، مما يمنع استخدامها في المعرفات.
يُعدّ استخدام الشرطات السفلية بديلاً شائعاً في عائلة لغات C (بما فيها بايثون)، حيث تُستخدم الأحرف الصغيرة في كتابة الكلمات، كما هو موضح في كتاب " لغة برمجة C" (1978) [ 4 ] ، ويُعرف هذا الأسلوب باسم " حالة الثعبان " أو "حالة الحلزون" . أما استخدام الشرطات السفلية مع الأحرف الكبيرة، كما في UPPER_CASE، فيُستخدم عادةً في وحدات الماكرو الخاصة بمعالج C المسبق ، ولذلك يُعرف باسم MACRO_CASE، وفي متغيرات البيئة في أنظمة يونكس، مثل BASH_VERSION في bash . ويُشار إلى هذا الأسلوب أحياناً بشكلٍ فكاهي باسم SCREAMING_SNAKE_CASE (أو SCREAMING_SNAIL_CASE).
الكلمات المفصولة بأحرف كبيرة وصغيرة
ثمة طريقة أخرى تتمثل في تحديد حدود الكلمات باستخدام الأحرف الكبيرة في وسط الكلمة، وتُعرف باسم " camelCase " و"PascalCase" وغيرها من الأسماء، ما يجعل " two words" تُكتب على التوالي " twoWords" أو " TwoWords". يُستخدم هذا الأسلوب بشكل شائع في لغات Pascal و Java و C# و Visual Basic . أما التعامل مع الأحرف الأولى في المعرّفات (مثل " XML " و" HTTP " في XMLHttpRequest) فيختلف. فبعضها يُلزم بكتابتها بأحرف صغيرة (مثل XmlHttpRequest) لتسهيل الكتابة والقراءة والتقسيم ، بينما يُبقيها البعض الآخر بأحرف كبيرة (مثل XMLHTTPRequest) لضمان الدقة.
البيانات الوصفية والاتفاقيات الهجينة
تمثل بعض اصطلاحات التسمية قواعد أو متطلبات تتجاوز متطلبات مشروع معين أو مجال مشكلة معين، وتعكس بدلاً من ذلك مجموعة شاملة أكبر من المبادئ التي تحددها بنية البرمجيات أو لغة البرمجة الأساسية أو نوع آخر من منهجية المشاريع المتعددة.
التدوين المجري
لعلّ أشهرها هو الترميز المجري ، الذي يُشفّر إما الغرض ("تطبيقات مجرية") أو النوع ("أنظمة مجرية") للمتغير في اسمه. [ 5 ] على سبيل المثال، يشير البادئة "sz" للمتغير szName إلى أن المتغير عبارة عن سلسلة نصية منتهية بـ null.
الترميز الموضعي
يمكن أن يكون النمط المستخدم للاختصارات القصيرة جدًا (ثمانية أحرف أو أقل) كالتالي: LCCIIL01، حيث يمثل LC التطبيق (خطابات الاعتماد)، وC لـ COBOL، وIIL لمجموعة العمليات الفرعية المحددة، و01 رقم تسلسلي.
لا يزال هذا النوع من الاصطلاح قيد الاستخدام النشط في الحواسيب المركزية التي تعتمد على JCL، كما يظهر أيضًا في نمط MS-DOS 8.3 (بحد أقصى ثمانية أحرف مع فاصلة نقطية متبوعة بنوع ملف من ثلاثة أحرف).
مخطط الكلمات المركبة (لغة OF)
تم توثيق لغة "OF" الخاصة بشركة IBM في دليل نظام إدارة المعلومات (IMS ). وقد شرح الدليل بالتفصيل مخطط الكلمات PRIME-MODIFIER-CLASS، والذي يتضمن أسماءً مثل "CUST-ACT-NO" للدلالة على "رقم حساب العميل". كانت الكلمات PRIME تُستخدم للإشارة إلى "الكيانات" الرئيسية ذات الأهمية للنظام. أما الكلمات MODIFIER فكانت تُستخدم لمزيد من الدقة والتحديد وسهولة القراءة.
من الناحية المثالية، ينبغي أن تكون كلمات CLASS قائمة قصيرة جدًا من أنواع البيانات ذات الصلة بتطبيق معين. من أمثلة كلمات CLASS الشائعة: NO (رقم)، ID (معرّف)، TXT (نص)، AMT (مبلغ)، QTY (كمية)، FL (علامة)، CD (رمز)، W (عمل)، وما إلى ذلك. عمليًا، لا تتجاوز قائمة كلمات CLASS المتاحة عشرين مصطلحًا. وتؤدي كلمات CLASS، التي توضع عادةً على اليمين (اللاحقة)، وظيفة مشابهة لبادئات الترميز المجري .
كان الغرض من كلمات CLASS، بالإضافة إلى ضمان الاتساق، هو تحديد نوع بيانات حقل بيانات معين للمبرمج . قبل قبول الحقول المنطقية (ذات القيمتين فقط)، كانت FL (علامة) تشير إلى حقل ذي قيمتين محتملتين فقط.
انظر أيضاً
- التصنيف: اصطلاحات التسمية
- قواعد البرمجة – المعايير والإرشادات لكتابة التعليمات البرمجية
- اتفاقية التسمية – مخطط متفق عليه عمومًا لتسمية الأشياء
مراجع
- ↑ ريموند، إريك س. (29 ديسمبر 2003). "قضايا دينية" . ملف المصطلحات ( الإصدار 4.4.7 ). مؤرشف من الأصل في 24 مايو 2026. تم الاسترجاع في 30 يونيو 2026. قضايا دينية: اسم .
أسئلة يبدو أنه لا يمكن طرحها دون إثارة "جدل عقيم"، مثل "ما هو أفضل نظام تشغيل (أو محرر، أو لغة برمجة، أو بنية، أو واجهة سطر أوامر، أو قارئ بريد، أو قارئ أخبار)؟"، "ماذا عن ذلك الرجل هاينلاين؟"، "ما الذي يجب أن نضيفه إلى ملف المصطلحات الجديد؟" انظر "جدل عقيم"؛ انظر أيضًا "علم اللاهوت"، و"متعصب"، و"قارن بـ rathole".
- ↑ "تسمية حزمة" . أوراكل . تم الاطلاع عليه بتاريخ 6 أبريل 2026 .
- ↑ ويوم لي، هاكون؛ بوس، بيرت. "أوراق الأنماط المتتالية، المستوى 1" . اتحاد شبكة الويب العالمية . تم الاطلاع عليه في 6 أبريل 2026 .
- ↑ كيرنيغان، برايان ؛ ريتشي، دينيس (1988). لغة البرمجة سي ( الطبعة الثانية). ص 35.
- ↑ "جعل الكود الخاطئ يبدو خاطئًا" . جويل حول البرمجيات . 11 مايو 2005.
- شفرة المصدر
- اصطلاحات التسمية
