damner2
Новичок
Я всегда считал, что использовать в лексемах языков программирования (названиях переменных, констант, функций) что-либо отличное от латинского алфавита, является неправильным. А тут вот понадобилось описать константами роли людей в компании, которые заказчик называет 3-6 буквенными аббревиатурами (например: МОПКУ, ЗНДСРК, НОИО).
Вижу несколько вариантов как поступить:
1. Называть константы на английском, после транслитерации аббревиатуры. (МОПКУ -> MOPKU)
2. Называть константы на английском, после перевода роли на английский язык. (МОПКУ -> SMCS)
3. Называть константы на русском.
4. Не использовать константы, а сделать ассоциативный массив с русскими аббревиатурами в качестве ключей и везде передавать строку, а не константу.
У каждого решения вижу минусы
Кто, как поступил бы?
PS. Использовал бы примерно так:
Вижу несколько вариантов как поступить:
1. Называть константы на английском, после транслитерации аббревиатуры. (МОПКУ -> MOPKU)
2. Называть константы на английском, после перевода роли на английский язык. (МОПКУ -> SMCS)
3. Называть константы на русском.
4. Не использовать константы, а сделать ассоциативный массив с русскими аббревиатурами в качестве ключей и везде передавать строку, а не константу.
У каждого решения вижу минусы
Кто, как поступил бы?
PS. Использовал бы примерно так:
PHP:
<?php
class Role {
const USER = 1;
const EMPLOYEE = 2;
const ADMIN = 3;
}
$user = new User();
$user->setRole(Role::EMPLOYEE);