Страницы

Поиск по вопросам

понедельник, 2 декабря 2019 г.

Как правильно называть имена классов в Java?

#java #android #android_fragment


Как правильно называть имена классов в Java?

Есть у меня к примеру список классов. Удобнее читать так?

FragmentInternalCapitalization
FragmentWordsRunTogether
FragmentWordsStrungTogether
FragmentCamelHumpedWord
FragmentInternalCapitalization
FragmentWordsRunTogether
FragmentWordsStrungTogether
FragmentCamelHumpedWord


Или все так так?

InternalCapitalizationFragment
WordsRunTogetherFragment
WordsStrungTogetherFragment
CamelHumpedWordFragment
InternalCapitalizationFragment
WordsRunTogetherFragment
WordsStrungTogetherFragment
CamelHumpedWordFragment


Половина кода у меня так половина так)).  Это чем то похоже на 

Strings str[] и Strings []str

Конечно для коротких названий без разницы. А если названия будут из 3-5 слов.

Только не пишите как хочешь). А то ведь если так то я и так могу называть классы

OneTwoFragmentThreeFour =)

Просто в iOS к примеру там все названия классов идут с переди. Типо NSString NSlalal. 
    


Ответы

Ответ 1



Надо оттолкнуться от первоисточника, а именно Google Java Style Guide - именование Android'а следуют именно этому гайду. Про именование классов написано буквально следующее: Class names are written in UpperCamelCase. Class names are typically nouns or noun phrases. For example, Character or ImmutableList. Interface names may also be nouns or noun phrases (for example, List), but may sometimes be adjectives or adjective phrases instead (for example, Readable). Смысл этой белиберды состоит в том, что именование классов обычно состоит из существительных (иногда прилагательных) образующих или слова или фразу в виде CamelCase Возвращаясь к вопросу, ни один из представленных вариантов (на мой английский) не удовлетворяет критериям фразы, посему я бы таки рассмотрел такие варианты: FirstFragment SecondFragment ThirdFragment FourthFragment

Ответ 2



Стиль, как FragmentOne кажется удобнее тем, что в списке файлов классы будут сгруппированы по принадлежности, то есть сначала идут все активити, потом фрагменты и тд, так их удобнее искать в дереве проекта, если таких файлов достаточное количество. Однако, на самом деле, в поиске класса по имени не первостепенно важно, кто его родитель, более важно предназначение, которое выражается через собственное осмысленное имя. Если появляется необходимость в группировке по другому признаку, то обычно это делается через поддиректории в основной директории с кодом, как src/../service (то есть выделение в пакет), как в эталонном приложении Google I/O Sched Для расширяющих классов принято писать имя родительского класса в конце, как AppCompatActivity, ListFragment и тд. С точки зрения стиля Android правильным будет второй вариант

Ответ 3



Придерживаться единого стиля и смысловой нагрузки В Вашем случае FragmentOne - фрагмент один, OneFragment - один фрагмент, поэтому FragmentOne будет логичнее.

Комментариев нет:

Отправить комментарий