Самодостаточность шаблона
Конечно, код пишется в первую очередь для машины, а потом уже для людей. Тем не менее, принимать кого-то нового и постороннего в свою среду, уж тем более ощущать его присутствие – бывает довольно-таки непросто. Например, вот проект, над которым я работаю. Вот тут у меня были функции: getUserHandler
, createUserHandler
, getUsersListHandler
. А вот кто-то создал рядом ещё одну, назвав её loadSettingOfUser
– это как это так?
Как ни странно, но нет, я назвал так те функции вовсе не для того, чтобы их назначение было как можно более понятно из названия. И даже не для какой-то абстрактной «красоты» / «чистоты» кода – это понятия субъективные. Я так их назвал ровно с одной целью – чтобы для каждой из них у меня был ответ на вопрос – почему она так называется? И вот этот ответ: а потому что другие называются аналогично. Всё. Остальное — это уже вопросы к шаблону, и они в данном случае второстепенны. Такая политика сформировалась у меня вполне естественным образом – путём долгой возни с самим собой на тему «какое же всё-таки название выбрать будет правильнее».
Задача самого шаблона тоже довольно нехитрая – чтобы его существование было ясно, и лишний раз никому в голову не приходило бы его нарушать – это должно ощущаться чем-то вроде испачканной белой рубашки, выбрасыванию окурка посреди чистого тротуара и т. п. Впрочем, переделать сам шаблон – почему нет, если никто не против, если хватит сил и энтузиазма. И на этом моменте про шаблоны, пожалуй, всё – либо понятно, либо нет: можно обосновывать дальше и дальше, но опыт подсказывает, что это бессмысленно. Человек даже может согласиться со всеми аргументами, но если трёх абзацев не хватило – вероятно, ему не хватит и целой книги на эту тему. Что впрочем вовсе не свидетельствует о его профнепригодности.