Skip to content

Посты

Незнание — это блаженство при использовании фреймворков

31 августа 2015 г. • 2 мин чтения

Незнание — это блаженство при использовании фреймворков

В программной инженерии существует распространённое мнение, что инженер должен использовать фреймворк только тогда, когда он понимает его внутреннее устройство. Это заблуждение.

Почему мы должны знать внутреннее устройство — имеют ли значение эти детали настолько много? Некоторые могут сказать, что незнание — это блаженство.

Двигатель автомобиля

Давайте рассмотрим двигатель автомобиля:

Сколько людей действительно знают, как работает двигатель?

Можете ли вы мне объяснить, почему он называется четырёхтактным двигателем?

Что делает каждый такт?

В чём разница между четырёхтактным и двухтактным двигателем?

Кто-нибудь?

И всё же мы ездим на наших автомобилях, не думая о том, “как” машина доставляет нас в пункт назначения.

Мы управляем автомобилем с помощью руля, рычага переключения передач, педали газа и тормозов.

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

Основная компетенция компании

В бизнесе компания обладает специализированными знаниями, которые позволяют ей быть конкурентоспособной. Это называется основной компетенцией компании.

Основная компетенция может быть процессом или продуктом.

Чтобы оставаться конкурентоспособной, компания должна неустанно совершенствовать свою основную компетенцию. Использование ресурсов для деятельности, не связанной с поддержкой основной компетенции компании, ослабляет её конкурентное преимущество. Это открывает окно возможностей для конкурентов, чтобы перехватить конкурентное преимущество компании.

Эта идея лучше всего иллюстрируется примером.

Apple

Apple известна своей простотой и красивыми продуктами. Можно подумать, что это легко скопировать, но это не так, спросите у Samsung, HTC и Microsoft.

Почему эти компании потерпели неудачу? Потому что простота — это сложно, а Apple — эксперт в простоте.

Основная компетенция человека

Основная компетенция может применяться и к людям.

Что вас отличает от других?

Чтобы развить свою основную компетенцию, вам пришлось сосредоточиться на одной области, иногда в течение многих лет, накапливая знания и опыт, которые отличают вас от других.

Как и в компании, чтобы сохранить своё конкурентное преимущество, вы должны постоянно совершенствовать свою основную компетенцию.

Использование отдельных компонентов

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

Понимание внутреннего устройства каждого используемого нами фреймворка непрактично и отнимает много времени. Я ожидаю, что автор фреймворка является экспертом в области фреймворка, поэтому мне не нужно знать его внутреннее устройство.

Разве не в этом суть программного обеспечения — использовать чёрные ящики функциональности для создания более крупной и сложной работы? Я верю, что это так.

В конце концов, всё сводится к сосредоточенности и времени, оба из которых ограничены.

Автор: Chuck Conway — инженер AI с почти 30-летним опытом разработки программного обеспечения. Он создает практические системы AI — конвейеры контента, агенты инфраструктуры и инструменты, которые решают реальные проблемы — и делится тем, что он узнает на этом пути. Свяжитесь с ним в социальных сетях: X (@chuckconway) или посетите его на YouTube и на SubStack.

↑ Вернуться в начало

Вам также может понравиться