/** Правило минимального изменения кода: Если нет предпочтений к оформлению какой-то многострочной конструкции в коде, то следует писать так, чтобы при дальнейшем возможном изменении кода, количество изменяемых строк было минимально. Это упрощает жизнь при работе с системой контроля версии и анализе изменений. Примеры: Конструктор класса нужно оформлять так: */ object() : m_active(false) , m_name("object") , m_value(0) { } /** При добавлении нового члена класса в список инициализации просто появляется новая строка, другие не изменяются. У enum после последнего значения нужно ставить запятую: */ enum type_id { type_id_one, type_id_two, }; /** При добавлении нового значения или удалении изменится только одна строка. Не следует выравнивать аргументы функции по открывающей скобке. так как если длина имени функции изменится, то придётся выравнивать и аргументы, что приведёт к лишим изменениям кода. */ /// Плохо: void myfunction(int a1, int a2, int a3); /// Хорошо: void myfunction( int a1, int a2, int a3); /// И так далее.
среда, 21 августа 2013 г.
minimum rule
Подписаться на:
Комментарии к сообщению (Atom)
> Не следует выравнивать аргументы функции по открывающей скобке.
ОтветитьУдалитьспорный момент, по мне, так твой "плохой" вариант более красивый, его и использую. Изменения количества пробелов, не такая сложная операция, да и любая мержилка из любой современной VCS такое переварит на ура.
Согласен, это спорный момент, в том то и идея, что между красотой и минимальным количеством изменяемых строк, я предпочту минимальное кол-во изменяемых строк.
Удалить