سؤال

بالنسبة للملف الذي يحتوي على الفئة المحددة، SomeCoolClass، ما هو اسم الملف المناسب أو القياسي؟

 1. somecoolclass.rb
 2. some_cool_class.rb
 3. some-cool-class.rb
 4. SomeCoolClass.rb

أو بعض الاختلاف الآخر؟

لقد لاحظت في Ruby stdlib أنه يتم استخدام الإصدارات 1 و 2 و 3.

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

المحلول

مع فقط روبي (أي.وليس القضبان)، التسمية هي مجرد اصطلاح.في القضبان ال مؤتمر من الضروري استخدام الشرطة السفلية (تقريبًا).

أعتقد الاتفاقية رقم 2 lowercase_and_underscore.rb هو أكثر شيوعا ويبدو جيدا، على الرغم من وجود مقال هنا يقول lowercasenounderscore.rb هي اتفاقية روبي.

اختر إما أي اتفاقية هي أكثر شيوعًا أو أي اتفاقية تفضلها أكثر.الشيء الأكثر أهمية هو أن تكون متسقة داخل المشروع.

نصائح أخرى

وأوصي أقل الأحرف الحال مع سفلية (رقم 2 في سؤالك). صحيح أن هذا المخطط التسمية هو اتفاقية في القضبان وليس من الضروري في مشاريع غير القضبان. ومع ذلك، وأود أن لا تزال مشدودة إلى اتفاقية القضبان لأن معظم المبرمجين روبي ربما تستخدم حصرا لروبي القضبان على أي حال.

أنا شخصياً أعتقد أن الواصلة كفاصل للكلمات توفر أقصى قدر من سهولة القراءة وإمكانية الكتابة بشكل عام، لذلك أوصي بذلك حيثما أمكن (في بعض السياقات، لا يمكن استخدام الواصلة، كما هو الحال في المعرفات في معظم اللغات).أحد الأشياء المهمة التي يجب وضعها في الاعتبار هو أن المخطط الذي تختاره سيكون له تأثير على بيان الطلب الذي سيستخدمه المستخدمون مع lib الخاص بك، وأنت تريد ذلك تجنب وجود اسم جوهرة مختلف عن اسم المكتبة.

سيء
# gem install my_cool_lib
require 'my-cool-lib'

# gem install MyCoolLib
require 'my_cool_lib'
جيد
# gem install my_cool_lib
require 'my_cool_lib'

# gem install my-cool-lib
require 'my-cool-lib'

لسوء الحظ، هناك عدد قليل من المكتبات تنتهك قاعدة سهولة الاستخدام البسيطة هذه.لا تكن من تلك المكتبات.:)

my-proj
├── README
├── lib
│   └── some_cool_class.rb
└── test
    └── some_cool_class_test.rb
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top