Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 04.03.2014
Сообщений: 32

Нужно ли пользоваться префиксами m и s для именования переменных или это устарело?

09.07.2016, 20:22. Показов 1415. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер всем, подскажите пожалуйста, используете ли вы префиксы m и s для переменных/полей класса?
Дело в том что у андроида написано что надо :

Follow Field Naming Conventions
Non-public, non-static field names start with m.
Static field names start with s.
Other fields start with a lower case letter.
Public static final fields (constants) are ALL_CAPS_WITH_UNDERSCORES.
а вот тут у Гугла написано что не надо:

5.1 Rules common to all identifiers
Identifiers use only ASCII letters and digits, and, in a small number of cases noted below, underscores. Thus each valid identifier name is matched by the regular expression \w+ .
In Google Style special prefixes or suffixes, like those seen in the examples name_, mName, s_name and kName, are not used.
я смотрю кто-то использует, кто-то нет, как правильно?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.07.2016, 20:22
Ответы с готовыми решениями:

Правила именования переменных
Один из самых сложных вопросов для меня, как назвать переменную? Некоторое время я называл currentDoc, потом ndCurrent, теперь вообще как...

Правила именования переменных
Доброго времени суток! У нас в коллективе нередко возникают споры вот по поводу чего: как правильно именовать переменные-объекты...

Проблема именования переменных / полей
Как вы думаете, неприемлимо ли именование полей что-то типа MoiDom, т.е. транслитом. Постоянно встречаюсь с проблемой, что лезу в лингву,...

6
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
11.07.2016, 11:34
u-geen, на любителя. Вначале они действительно призывали к использованию m, иногда в проектах это попадается, да и многие их примеры для Андроида так и написаны. Честно говоря, чушь полная. Во-первых, неудобно, смысла никакого. Во-вторых, пока разрабатываешь, часто делаешь переменные то public, то static, так что теперь, каждый раз переименовывать из s в m? Так и до методов можно добраться. Я бы ещё понял, если бы это был VB с их знаменитыми i, l, s и др.
1
0 / 0 / 0
Регистрация: 04.03.2014
Сообщений: 32
15.07.2016, 10:16  [ТС]
Спасибо большое, теперь буду знать
0
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
15.07.2016, 21:08
u-geen, не за что. Единственное, там может быть проблема, например, при обращении в конструкторе класса или в методах к переменным. Поскольку они пишутся чаще без m, то в конструкторе может быть, например, такое:
Java
1
2
3
public MyClass(int variable){
    this.variable = variable;
}
Т.е. надо не забыть this.
Если из потока обращаться к некоторой переменной, то может быть другая неоднозначная ситуация типа i = i. В этом случае надо писать так: MainActivity.this.variable = variable.
0
77 / 40 / 14
Регистрация: 14.01.2016
Сообщений: 203
16.07.2016, 01:07
статические поля? когда я последний раз их объявлял? тем-более в java.
а вот отличать поля от локальных переменных - полезно, поэтому m использую
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
16.07.2016, 12:50
Цитата Сообщение от Борис Верещагин Посмотреть сообщение
когда я последний раз их объявлял?
да хотя бы константы
Цитата Сообщение от Борис Верещагин Посмотреть сообщение
а вот отличать поля от локальных переменных - полезно, поэтому m использую
если рефакторить по полной и делать короткие методы то не составит особого труда отличать локальные переменные от полей класса
да и сами поля класса чаще всего нужны в каких-нибудь POJO классах

в инете полно бездарных примеров, кода в активити объявляют и делают полями активити десяток кнопок, лаяутов и прочего
от 3/4 их них можно избавиться сразу если нормально переписать код
0
16.07.2016, 15:28

Не по теме:

Паблито,

да хотя бы константы
ДЛЯ_КОНСТАНТ_СВОИ_ПРАВИЛА))

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.07.2016, 15:28
Помогаю со студенческими работами здесь

Особенности именования переменных во флеше
Допустим, если вы хотите сделать переменную и геттер\сеттер к ней, вы мощете объявлять переменную как private var m_someValue:int; а...

Вопрос о правилах именования переменных
Как я знаю, что первая буква любой переменной (int, string, массива, объявленной переменной структуры, объекта) всегда должны начинаться с...

Нужно создать класс или метод в который будет служить для загрузки и инициализации переменных
Нужно создать класс или метод который будет служить для загрузки и инициализации переменных. Есть куча переменных который можно достать...

Нужно ли в данном случае делать класс статическим ? или пользоваться экземпляром класса?
Всем привет , уже давно написал программу в стиле говнокода , так как уже более вник в язык хочу переписать красиво , вот тут немножко...

Есть именования классов в kebab-case, я хочу нормализовать именования классов в camelCase
Добрый день. У меня есть html файл в котором есть именования классов в kebab-case, я хочу нормализовать именования классов в camalCase...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru