Выработанная годами привычка подробно комментировать код иногда приводит к интересным последствиям. Вот, сегодня написал:
/*! * Вспомогательная функция для проверки наличия TLV и размера данных в TLV. * * \retval 0 если TLV не найдено или если длина его данных не совпадает * с указанной в \a expected_length. */ const smpp_pdu_1::opt_param_t * check_tlv_presence_and_value_length( //! Хранилище TLV, в котором нужно выполнять поиск. const smpp_pdu_1::opt_params_holder_t & tlv_holder, //! Идентификатор искомого TLV. const smpp_pdu_1::opt_param_t::tag_type_t tag, //! Ожидаемый размер значения TLV. const smpp_pdu_1::opt_param_t::length_type_t expected_length ) { const smpp_pdu_1::opt_param_t * tlv = tlv_holder.opt_params().find( tag ); if( tlv && expected_length == tlv->length() ) return tlv; return 0; } |
Сам смотрю и ужасаюсь – двадцать две строки, из которых полезных всего шесть! Но и заставить себя выбросить что-нибудь отсюда не могу, ДНК не позволяет.
Похоже, что я даже в Haskell-е за счет своего стиля писал бы код в 2-3 раза длиннее необходимого ;)))
дублирование - русский-латинский шрифты. Нужно или писать по русски или думать по английски :)
ОтветитьУдалитьНу осилить английский не дано, так что одним вариантом меньше :)
ОтветитьУдалитьЕсли серьезно, то после того, как стал много пользоваться doxygen-ом, то стал дублировать русскими комментариями даже простые названия функций/методов/аргументов. Потому, что в HTML варианте документации все это дело воспринимается по-другому. Оказалось, что даже комментарий вида "Это размер значения" перед параметром value_size для меня очень сильно повышает читабельность HTML-документации.