суббота, 4 февраля 2012 г.

[prog.flame] Все-таки я сторонник статической типизации…

…да еще и с обязательной аннотацией типов!

Для выполнения срочного заказа копаюсь в исходниках старого проекта, части которого надеюсь переиспользовать. И приятно, когда видишь объявление вроде:

/*!
* Выполнение подписки на сообщения msg_raw_package
* всех транспортных агентов.
 */
void
subscribe_to_msg_raw_package(
   const std::string & agent_name,
   const direction_state_ptr_vector_t & direction_states );

Сразу понимаешь какие типы у аргументов и что возвращается. А то, помнится, приходилось дорабатывать одну маленькую программку на Ruby. Заглянешь в код через год-полтора после последнего изменения и… Куришь потом бамбук :) Какой тип у аргументов, возвращает ли что-нибудь метод? Благо комментарии были.

Справедливости ради, нужно сказать, что с динамически типизированным Ruby была такая особенность – много времени приходилось тратить на восстановление в памяти деталей работы. Зато потом все очень легко было в уме держать. А вот с плюсами ситуация чуть иная – детали довольно быстро восстанавливаются за счет синтаксиса языка. Но потом с ними сложнее – может больше их, может еще чего (проекты на плюсах все-таки посерьезнее рубиновых были).

Тем не менее, лично я спокойнее берусь за доработку старого плюсового кода, чем Ruby-нового. Все-таки подробные аннотации в коде – это очень полезная штука.

Ну и на последок еще одна банальность – пишите комментарии. Чем больше напишите, тем проще будет затем разбираться с кодом. Проверено на себе ;)

PS. Написано под впечатлением от проекта, который был написан и запущен в эксплуатацию 3.5 года назад, а последний баг-фикс в нем был чуть больше года назад. Несмотря на то, что весь код там написал я сам, сейчас он воспринимается полностью как чужой, как будто и не я это делал.

PPS. И еще одно. Доходят до меня слухи, что одним из самых популярных языков программирования сейчас является динамически-типизированный JavaScript. На котором пишут все больше и больше, и даже есть какие-то проекты объемом в сотни тысяч строк (не знаю правда это или нет). Исходя из вышесказанного сочувствую тем, кто лет через надцать будет эту прорву JS-кода сопровождать. С другой стороны, возможно, это будет настоящее золотое дно. Похлеще знаменитой Y2K Problem ;)

пятница, 3 февраля 2012 г.

четверг, 2 февраля 2012 г.

[life] Интересная формулировка

Не могу сказать, что согласен с высказыванием, но сказано красиво:
Профессионалу платят за то, что он делает. Наёмник делает то, за что ему платят.
Найдено в блоге Анатолия Вассермана.

[life.photo] Ссылка на подборку победителей конкурса The Best Of Russia 2008-2011

Здесь. Мне очень понравилось.

Карточка оттуда на тему сегодняшней погоды за окном:

Белогоркий монастырь. Петр Захаров (Кунгур, Пермский край)

вторник, 31 января 2012 г.

[life.cinema] Очередной кинообзор (2012/01)

Как-то незаметно пролетел январь и подошло время очередного кинообзора, первого в этом году.

Два дня для убийства. Очень сильный, очень трогательный, пронизывающий фильм. Но смотреть его нужно от начала до самого конца.

О чем еще говорят мужчины. Очень понравился.

Шпион, выйди вон! Атмосферный фильм. Правда, в нем слишком много сюжетных линий переплетается, так что остается впечатление, что чего-то недопонял.

Необратимость. Суровый фильм. И снят необычно.

Бобро поржаловать! Хорошая, добрая комедия.

Елки-2. Первая часть мне понравилась больше, она была коммедийной, вторая же часть слишком сильно съехала в мелодраму.

Другой мир: Пробуждение. Как и первые две части, весь фильм держится на красоте затянутой в облегающий костюм Кейт Бекинсейл. Но динамично.

Однажды в Ирландии. Из-за активного пиара фильма на сайте Гоблина ждал многого. Оказалось нормально. Добротный фильм, но не шедевр. На мой взгляд, фильм очень атмосферный, но дубляж Гоблина (один голос переводчика для всех героев) эту атмосферу убил.

Живая сталь. Красивая, наивная, добрая сказочка для детей.

Маркиз. Простенькая француская комедия. Может быть даже слишком простенькая.

Миссия невыполнима: Протокол Фантом. Редкая по невероятности фантастика. Но Кремь взорвали красиво, этого не отнять.

Высоцкий. Спасибо, что живой. Не нужно было снимать этот фильм. Да и смотреть так же необязательно.

понедельник, 30 января 2012 г.

[life.sport.darts] “Случайные пары” – это наш турнир!

С третьей попытки, но гомельчане все-таки взяли победу в категории “Случайные пары”! На этот раз на 4-м международном турнире по дартсу памяти И.Д.Дубограева мой коллега Андрей Бузуверов в паре с Эльдаром Абдуллаевым заняли первое место, обыграв в финале российскую пару Сергей Дунаевский/Константин Медведев со счетом 4-2!

слева направо: Андрей Бузуверов (Гомель) и Эльдар Абдуллаев (Минск) – победители в категории “Случайные пары”, а так же Дмитрий Бех – один из организаторов и спонсоров турнира.

Так что в этот раз наша поездка на турнир оказалась очень удачной. Впечатлений масса, но нужно найти время и силы, чтобы их зафиксировать.