16 методов программиста.
Метод 6-й. «Уважай предшественников»

Полезный эффект: экономия времени, сил, обучение и более быстрое развитие.

Диагностика: изобретаем каждый раз что-то новое, предыдущий исходный код выкидывается без разбора.

Многое уже изобретено и, ознакомившись с опытом предшественников, вы сильно сэкономите время. Существующий код – это тоже изобретение. Кто-то сотворил его до вас, и вы не знаете, сколько было потрачено времени и какие опасности были разрешены предшественником. Цените его. Выкидывать можно только по причине обнаружения фундаментальных ошибок. Их нужно доказать, а для этого нужно разобраться в текущих листингах. В случае если вы просто выкидываете решение, вы не используете потраченное время предыдущих разработчиков и практически 100% пройдетесь по тем же самым ошибкам, что были у них. По тому, что они выявляли за период опытной и промышленной эксплуатации. Поэтому, если вам встретилось что-то непонятное, какой-то «костыль» на ваш взгляд – перепроверьте. Задайте вопрос автору или обсудите с товарищем. Как говорит Константин Горский, бывший директор дизайн-направления Yandex: “Часто кажется, что сделано криво или просто не так, но при вникании в детали оказывается, что для этого есть весьма веские причины».

Приведу забавный пример из своей практики. Как-то довелось работать с моим старшим товарищем, который когда-то шефствовал над моими первыми шагами в олимпиадном программировании. Мы работали вдвоем над заказом московского Центробанка. Писали подсистему на Sharepoint, попутно создавая в помощь множество утилит. Одна из них генерировала списки Sharepoint по схеме базы данных, созданной через визуальный редактор. Т.е. быстро накидав таблички, связи между ними и запустив генератор, можно было получить схему в виде списков Sharepoint. При реализации столкнулись с полями, имеющими зарезервированные имена, причем конфликтующие с некоторыми полями в схеме данных. Наткнувшись на данную ситуацию, я написал кастомную обработку данных полей. Через пару дней вновь ошибка – нет моей обработки. Добавляю – через какое-то время вновь нет. Задал вопрос. Оказывается, мой товарищ посчитал данный код ненужным «костылем» и каждый раз, удивляясь, удалял. Решением было написать поясняющий комментарий, что дает участок кода.

Возможно все: ошибки программиста, тимлида, клиента, плохая реализация, но у всего есть своя вероятность. В случае если вы относитесь с уважением к предшественникам, полученному коду, принятым решениям, наработанному ими опыту, изучаете его, а в своих решениях основывайтесь на фактах – вы будете расти! И расти быстро!

Быстрого роста вам! И превзойти учителя!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *