Стандартные соглашения об именах файлов в Ruby
Для файла, содержащего данный класс SomeCoolClass, какое 9X_variable-naming имя файла будет правильным или стандартным?
1. somecoolclass.rb 2. some_cool_class.rb 3. some-cool-class.rb 4. SomeCoolClass.rb
или 9X_convention какой-нибудь другой вариант?
Я заметил, что 9X_convention в stdlib Ruby используются версии 1, 2 и 9X_ruby 3.
Ответ #1
Ответ на вопрос: Стандартные соглашения об именах файлов в Ruby
При использовании только Ruby (т.е. не Rails) именование 9X_casing-conventions является лишь условием. В Rails convention использование 9X_variable-naming подчеркивания необходимо (почти).
Я думаю, что 9X_file соглашение №2 lowercase_and_underscore.rb
более распространено и выглядит 9X_variable-naming довольно хорошо, хотя в статье Here говорится, что 9X_naming-conventions lowercasenounderscore.rb
- это соглашение Ruby.
Выберите, какое соглашение 9X_casing-conventions является более распространенным, или какое 9X_casing-conventions вам больше нравится. Самое главное - быть последовательным в рамках проекта.
- Статья, которую вы процитировали для `lowercasenounderscore.rb`, старая, и я не видел, чтобы кто-то еще утверждал, что это конвенция. Подчеркивани ...
Ответ #2
Ответ на вопрос: Стандартные соглашения об именах файлов в Ruby
Я лично считаю, что дефис в качестве разделителя 9X_naming-conventions слов обеспечивает максимальную читаемость 9X_casing-conventions и типизируемость в целом, поэтому я рекомендую 9X_conventions это везде, где это возможно (в некоторых 9X_files контекстах дефис не может использоваться, например, в 9X_variable-naming идентификаторах на большинстве языков). Следует 9X_variable-naming иметь в виду, что выбранная вами схема будет 9X_convention иметь отношение к оператору require, который 9X_casing-conventions пользователи будут использовать с вашей 9X_files библиотекой, и вы хотите, чтобы имя гема отличалось от имени библиотеки.
Плохой
# 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'
К сожалению, небольшая 9X_files горстка библиотек нарушает это простое правило 9X_convention удобства использования. Не будь одной из 9X_ruby этих библиотек. :)
Ответ #3
Ответ на вопрос: Стандартные соглашения об именах файлов в Ruby
Я бы порекомендовал символы нижнего регистра 9X_convention с подчеркиванием (цифра 2 в вашем вопросе). Это 9X_casing-conventions правда, что эта схема именования является 9X_ruby соглашением в Rails и не обязательна в проектах, отличных 9X_convention от Rails. Однако я бы все равно придерживался 9X_files соглашения Rails, потому что большинство 9X_file программистов Ruby, вероятно, в любом случае 9X_variable-naming используют Ruby исключительно для Rails.
Ответ #4
Ответ на вопрос: Стандартные соглашения об именах файлов в Ruby
my-proj ├── README ├── lib │ └── some_cool_class.rb └── test └── some_cool_class_test.rb
9X_file
-
5
-
1
-
2
-
5
-
5
-
3
-
11
-
18
-
28
-
38
-
2
-
9
-
14
-
6
-
10
-
12
-
10
-
6
-
19
-
5
-
7
-
7
-
5
-
4
-
8
-
3
-
8
-
2
-
5
-
3
-
5
-
6
-
4
-
5
-
5
-
1
-
5
-
3
-
1
-
4
-
3
-
2
-
3
-
1
-
2
-
7
-
9
-
3
-
4
-
1