سؤال

في PHP, نحن (على الأقل جيدة المبرمجين) دائما تبدأ العامة أسماء المتغيرات مع أقل حدة الرسالة ، ولكن الطبقة المتغيرات/الكائنات مع upper-case letter لتمييزها.بنفس الطريقة نبدأ العامة أسماء الملفات مع حالة انخفاض الرسالة ، ولكن الملفات التي تحتوي على دروس مع الحالة العلوي الرسالة.

E. g:

<?php
$number=123;
$string="a string";
$colors_array=array('red','blue','red');
$Cat=New Cat();
?>

هي الاتفاقيات نفسه في جاوة ، هـ الكائنات بدءا upper-case ولكن بقية مع انخفاض الحالة ، أو يفعل كل شيء يبدأ مع انخفاض الحالة كما قرأت في أماكن أخرى ؟

هل كانت مفيدة؟

المحلول

وعموما، فإن جميع المتغيرات تبدأ بأحرف صغيرة:

int count = 32;
double conversionFactor = 1.5d;

وبعض الناس مثل لوضع الثوابت ثابتة في كل حالة:

public static final double KILOGRAM_TO_POUND = 2.20462262;

والامور أكثر مزعج عند التعامل مع الاختصارات، وليس هناك معيار حقيقي على ما إذا كان يجب استخدام:

HTMLHandler myHtmlHandler; 

أو

HTMLHandler myHTMLHandler.

والآن، وفي كلتا الحالتين، لاحظ أن أسماء فئة (كائن، سلسلة، HTMLHandler) تبدأ دائما بحرف كبير، ولكن المتغيرات الكائن الفردية تبدأ صغيرة.

نصائح أخرى

يمكنك العثور على التسمية في كود جافا الاتفاقيات.

ملخص سريع:

  • لدروس, استخدام UpperCamelCase.
  • لفئة أعضاء المتغيرات المحلية استخدام lowerCamelCase
  • عن حزم ، واستخدام عكس URI ، على سبيل المثال org.acme.project.subsystem
  • على الثوابت ، استخدام ALL_CAPS.
  • variablesAndMethodsLikeThis
  • ClassesLikeThis
  • CONSTANTS_LIKE_THIS

والاتفاقية هي أن أسماء فئة تبدأ بحرف حالة العليا. أسماء المتغيرات هي camelCase. حتى إذا كان المتغير يحيل الى كائن لا يزال يبدأ مع الحالة الأدنى.

من شأنه أن يساعد.

ما رأيك حول استخدام camelCase لمثيل أساليب وPascalCase بالنسبة لساكنة؟ أعتقد أنه يمكن أن يكون مفيدا للغاية، لأن لن يكون هناك أي مشاكل أثناء التحقق الأسلوب الذي هو ثابت. انها اقتراحي

والاتفاقيات تعتمد حقا على مكان الفرد كنت الترميز ل.

في عام، من وCamelCased الطبقات ما رأيته (مع حالة العلوي أولا)، وأساليب تبدأ بأحرف صغيرة، والمتغيرات رأيت في كل مكان (بعض CamelCased، بعض camelCase مع الحرف الأول أقل (تحرير : كما هو مذكور أعلاه، هذا هو المعيار)، بل ان البعض مع تدوين الهنغارية). ذلك يعتمد على أسلوبك وأسلوب أن المشروع الذي نعمل على تبنت.

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

public ConstructorMethod(MyVar variable) {
    this.variable=variable;
}

ولكن بعد ذلك بعض الناس يشعرون يجب عليك دائما استخدام هذا النمط - ولكن أنا لست مجنونا ذلك - اعتقد انها مبالغة اذا واصلتم أساليب والطبقات الصغيرة الخاصة بك

.

وكما أن بعض الناس استخدام نمط التسمية لمعلمات. هذا (مرة أخرى) تأتي في متناول اليدين عند تعيين من منشئ إلى متغير مثيل:

public ConstructorMethod(MyVar pVariable) {
    variable=pVariable;
}

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

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top