Должен ли «настоящий» программист знать язык Си

04.12.2019
Должен ли «настоящий» программист знать язык Си

Существует стереотип о том, что знание языка программирование Си "прокачивает" навыки разработчика, даёт ему глубокое понимание работы компьютерных систем и повышает шансы на успешное развитие карьеры. О том, так ли это и нужно ли всем программистам в обязательном порядке учить Си, высказались ведущие отраслевые эксперты, в числе которых издание TProger опросило директора по технологическому развитию компании "АйДи - Технологии управления" Дмитрия Рогова

"Ответ на вопрос о роли владения Си на сегодняшнем рынке услуг программной разработки будет зависеть от конкретной области: например веб-разработчику знание языка С в его профессиональной карьере пригодится навряд ли.

При этом разработчики по мере роста своего профессионализма в области разработки ПО неизбежно приходят к необходимости изучения С, поскольку на этом языке написан огромный массив кода, лежащий в основе множества современных ИТ-продуктов и систем. И даже в тех случаях, когда речь не идёт о непосредственном использовании С, идеи этого языка так или иначе применялись в других языках, его влияние переоценить невозможно.

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

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

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

Сейчас кадров с таким бэкграундом в подготовке становится всё меньше, поэтому заявление «если не знаешь С — то ты не программист» теряет актуальность. Прикладные задачи можно спокойно решать и без системного понимания сферы ИТ и места в ней поставленной задачи".

Подробнее: https://tproger.ru/experts/is-c-a-must-learn-for-all-programmers/