Изобретайте велосипед часто
Переводчик не несет ответственности за несовпадение мнения автора с точкой зрения читателя
«Просто используйте то, что существует — это глупо, изобретать колесо...»
Вы когда-нибудь это слышали в том или ином виде? Конечно, слышали! Каждый разработчик и студент часто слышит нечто подобное. Почему? Почему изобретать велосипед так постыдно? Потому что, чаще всего, существующий код — рабочий код. Он уже прошел через какой-то контроль качества, тщательное тестирование, и в настоящее время успешно используется. Кроме того, время и усилия, вложенные в изобретение обычно не окупаются так же, как при использовании существующего продукта или кодовой базы. Нужно ли заморачиваться изобретением велосипеда? Зачем? Когда?
Может быть вы видели публикации о паттернах в разработке или книги по проектированию программного обеспечения. Эти книги могут всё еще ждать своего часа, независимо от того, насколько великолепна информация, содержащаяся в них. Точно так же как смотреть кино о парусном спорте это совсем не то, что самому ходить под парусом, так и использовать существующий код, по сравнению с разработкой собственного программного обеспечения с нуля, тестируя его, ломая и исправляя его.
Изобретать велосипед — это не просто упражнение в размещении управляющих конструкций, оно в том, как получить глубокие знания о внутренней работе различных существующих компонентов. Вы знаете, как работают менеджеры памяти? Подкачка? Можете ли вы осуществить это сами? Как насчет двусвязных списков? Классов динамических массивов? ODBC-клиентов? Вы можете написать графический интерфейс, который работает не хуже, чем ваш любимый популярный интерфейс? Вы можете создавать свои собственные виджеты для браузера? Вы знаете, когда писать мультиплексную систему, а когда многопоточную? Как сделать выбор между файл- и память-ориентированной базой данных? Большинство разработчиков просто не реализовывали эти базовые вещи сами, и поэтому не имеют глубоких знаний о том, как они работают. Как следствие, всё это рассматривается как таинственные черные ящики, которые просто работают. Понимания только того что на поверхности не достаточно, чтобы выявить скрытые в толще опасности. Незнание глубоких вещей в разработке будет ограничивать вашу способность создавать действительно блестящие работы.
Изобрести велосипед с квадратными колёсами более ценно, чем сразу же получить его идеальным. Есть уроки, извлеченные из проб и ошибок, с эмоциональной составляющей в них, которые просто невозможно получить читая техническую книгу!
Заученные факты и книжная мудрость очень важны, но становление великим программистом требует больше приобретения опыта, чем простого сбора фактов. Изобретать велосипед так же важно для образования разработчика, как поднятие тяжестей для бодибилдера.
Взято отсюда: Хабрахабр: Изобретайте велосипед часто
«Просто используйте то, что существует — это глупо, изобретать колесо...»
Вы когда-нибудь это слышали в том или ином виде? Конечно, слышали! Каждый разработчик и студент часто слышит нечто подобное. Почему? Почему изобретать велосипед так постыдно? Потому что, чаще всего, существующий код — рабочий код. Он уже прошел через какой-то контроль качества, тщательное тестирование, и в настоящее время успешно используется. Кроме того, время и усилия, вложенные в изобретение обычно не окупаются так же, как при использовании существующего продукта или кодовой базы. Нужно ли заморачиваться изобретением велосипеда? Зачем? Когда?
Может быть вы видели публикации о паттернах в разработке или книги по проектированию программного обеспечения. Эти книги могут всё еще ждать своего часа, независимо от того, насколько великолепна информация, содержащаяся в них. Точно так же как смотреть кино о парусном спорте это совсем не то, что самому ходить под парусом, так и использовать существующий код, по сравнению с разработкой собственного программного обеспечения с нуля, тестируя его, ломая и исправляя его.
Изобретать велосипед — это не просто упражнение в размещении управляющих конструкций, оно в том, как получить глубокие знания о внутренней работе различных существующих компонентов. Вы знаете, как работают менеджеры памяти? Подкачка? Можете ли вы осуществить это сами? Как насчет двусвязных списков? Классов динамических массивов? ODBC-клиентов? Вы можете написать графический интерфейс, который работает не хуже, чем ваш любимый популярный интерфейс? Вы можете создавать свои собственные виджеты для браузера? Вы знаете, когда писать мультиплексную систему, а когда многопоточную? Как сделать выбор между файл- и память-ориентированной базой данных? Большинство разработчиков просто не реализовывали эти базовые вещи сами, и поэтому не имеют глубоких знаний о том, как они работают. Как следствие, всё это рассматривается как таинственные черные ящики, которые просто работают. Понимания только того что на поверхности не достаточно, чтобы выявить скрытые в толще опасности. Незнание глубоких вещей в разработке будет ограничивать вашу способность создавать действительно блестящие работы.
Изобрести велосипед с квадратными колёсами более ценно, чем сразу же получить его идеальным. Есть уроки, извлеченные из проб и ошибок, с эмоциональной составляющей в них, которые просто невозможно получить читая техническую книгу!
Заученные факты и книжная мудрость очень важны, но становление великим программистом требует больше приобретения опыта, чем простого сбора фактов. Изобретать велосипед так же важно для образования разработчика, как поднятие тяжестей для бодибилдера.
Взято отсюда: Хабрахабр: Изобретайте велосипед часто
Похожие материалы:
Комментарии:
23 Мая 2012 (19:48:31)
Ярослав
(гость)
• ответить
Истинно, так! Со временем самостоятельно дошел до такого вывода -)