Инструменты пользователя

Инструменты сайта


codingguidelines

Различия

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

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
codingguidelines [2019/11/07 17:30]
l1ght
codingguidelines [2019/12/17 00:58]
nightfly [Сохранение Legacy]
Строка 239: Строка 239:
 **По поводу сохранения легаси на уровне предсказуемости поведения системы**:​ если вы делаете функционал меняющий поведение системы по-умолчанию,​ помните,​ что делаете вы его в первую очередь не для себя а для кучи сетей, которые надеются,​ что после обновления поведение их системы будет предсказуемым и привычным,​ а девочки кассирши не начнут писать заявления об увольнении,​ параллельно с выкидывающимися из окон системными администраторами. Если для реализации запланированного вами функционала требуется изменить поведение системы,​ этот функционал должен быть отключаем при помощи файлов конфигурации и быть отключенным по-умолчанию. Согласитесь,​ вы не будете обрадованы тем, что после обновления при попытке попасть в профиль пользователя,​ вы вместо него увидите фотку сисек, пускай даже очень красивых. Каждый раз когда вам хочется сделать "​для всех"​ что-то,​ что кажется вам очень крутым,​ посмотрите для [[http://​stats.ubilling.net.ua/​graph/​|скольки]] сетей вы хотите сделать жизнь "​веселее"​ и адекватно оцените шансы на попадание этого в мейнстрим. **По поводу сохранения легаси на уровне предсказуемости поведения системы**:​ если вы делаете функционал меняющий поведение системы по-умолчанию,​ помните,​ что делаете вы его в первую очередь не для себя а для кучи сетей, которые надеются,​ что после обновления поведение их системы будет предсказуемым и привычным,​ а девочки кассирши не начнут писать заявления об увольнении,​ параллельно с выкидывающимися из окон системными администраторами. Если для реализации запланированного вами функционала требуется изменить поведение системы,​ этот функционал должен быть отключаем при помощи файлов конфигурации и быть отключенным по-умолчанию. Согласитесь,​ вы не будете обрадованы тем, что после обновления при попытке попасть в профиль пользователя,​ вы вместо него увидите фотку сисек, пускай даже очень красивых. Каждый раз когда вам хочется сделать "​для всех"​ что-то,​ что кажется вам очень крутым,​ посмотрите для [[http://​stats.ubilling.net.ua/​graph/​|скольки]] сетей вы хотите сделать жизнь "​веселее"​ и адекватно оцените шансы на попадание этого в мейнстрим.
  
-**По поводу сохранения легаси на уровне кода**: на данный момент,​ мы вынуждены и поддерживаем работоспособность Ubilling от PHP 5.3 до PHP 7.0, из за большого количества старых установок,​ которые менять никто не будет, так как они успешно работают годами. Поэтому воздержитесь как от использования нового синтаксиса массивов с квадратными брекетами в виде ​+**По поводу сохранения легаси на уровне кода**: на данный момент,​ мы вынуждены и поддерживаем работоспособность Ubilling от PHP 5.3 до PHP 7.4 (да, это возможно и не сложно), из за большого количества старых установок,​ которые менять никто не будет, так как они успешно работают годами. Поэтому воздержитесь как от использования нового синтаксиса массивов с квадратными брекетами в виде ​
  
 <code php> <code php>
Строка 391: Строка 391:
 Правда ведь, не сложно написать пару слов, о том, чего делает метод, что, какого типа и в каком виде лежит в переменной?​ Вы даже не догадываетесь насколько это в будущем упрощает жизнь вам и тем, кто будет пытаться работать с этим кодом. Если вас дальше терзают сомнения,​ можете бегло пробежаться глазами по существующему коду например [[https://​github.com/​nightflyza/​Ubilling/​tree/​master/​api/​libs|тут]] и сделать выводы,​ о том, что от вас ожидается в дальнейшем. Исключениями для комментирования,​ являются случаи,​ в которых вы пишите свой модуль на [[brainfuck|Brainfuck]] - там и без комментариев все очевидно. Правда ведь, не сложно написать пару слов, о том, чего делает метод, что, какого типа и в каком виде лежит в переменной?​ Вы даже не догадываетесь насколько это в будущем упрощает жизнь вам и тем, кто будет пытаться работать с этим кодом. Если вас дальше терзают сомнения,​ можете бегло пробежаться глазами по существующему коду например [[https://​github.com/​nightflyza/​Ubilling/​tree/​master/​api/​libs|тут]] и сделать выводы,​ о том, что от вас ожидается в дальнейшем. Исключениями для комментирования,​ являются случаи,​ в которых вы пишите свой модуль на [[brainfuck|Brainfuck]] - там и без комментариев все очевидно.
  
-===== Workflow ​=====+===== Codeflow ​=====
  
 ==== Пример в картинках ==== ==== Пример в картинках ====
codingguidelines.txt · Последние изменения: 2020/04/22 13:32 — nightfly