C мёртв, да здравствует С!!!

Является ли язык С мёртвым? Для сегодняшних студентов изучение языка С чем-то схоже с изучением латыни. Да, язык С это история, но это далеко не мёртвый язык. С по прежнему является доминирующим и быстро развивающимся языком программирования, в частности в части разработки программного обеспечения для встраиваемых систем.

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

0001

Разрыв в диаграммах сделан потому, что формулировка вопроса, который задавался разработчикам, изменялась. До 2005-го года вопрос звучал как «Какие именно языки из ниже приведённых вы использовали на протяжении последних 12-ти месяцев для разработки ПО для встраиваемых систем», а в 2005-м году формулировка изменилась на «Мои последние embedded проекты написаны на ____». До 2005-го года вопрос предусматривал возможность нескольких ответов, то есть предусматривалось, что респонденты могли сделать выбор двух и более языков.

Наибольшее влияние наявности выбора одного и более вариантов ответа можно проследить по статистике использования ассемблера. До 2005-го года мы можем видеть уровень порядка 62%, что выглядит, по меньшей мере, странно. Объяснение довольно простое: большинство проектов требуют незначительных вставок ассемблерного кода.

После 2005-го года всё стало на свои места: уровень ассемблера упал до 8% в 2005-м году и до 5% в 2009-м.

Если же вернуться к нашей сегодняшней теме – языку С, то мы можем наблюдать его доминирование на протяжении всех 13-ти лет. Также интересно отметить тенденцию к росту использования С за счёт ассемблера и С++.

Также нельзя не обратить внимание на статистику использования С++, который набирал популярность с конца 90-х годов с пиком в 2001-м, и медленное падение его доли в дальнейшем.

Суть в том, что разработчики встраиваемых систем не собираются отказываться от использования С в своих проектах. И на то есть несколько причин. Во-первых, это наявность компиляторов для подавляющего большинства 8-ми, 16-ти и 32х разрядных процессоров. Во-вторых, С предусматривает идеальное сочетание средств для работы как на низком, так и на высоком уровне, что делает его идеальной кандидатурой, для написания, например, драйверов. Даже в будущем, когда язык С будет терять его популярность, его знание всё равно будет цениться…

Конечно, язык С не сможет выжить, если количество людей, которые его используют будет сокращаться. На данный момент происходит противоположное явление. Около 98% процессоров, которые производяться ежегодно – это процессоры для встраиваемых систем. А ежегодное производство процессоров имеет долгосрочную тенденцию к росту.

0002

На этой диаграмме отображена зависимость объема производства процессоров от индекса NASDAQ.

Во-первых, очень интересна зависимость сама по себе, а также то, что за последние 15 лет производство выросло более чем в два раза.

Отдельно стоит остановиться на том, что сейчас есть тенденция к тому, что в ВУЗах всё меньше уделяется внимания языку С и всё чаще программисты изучают язык С уже на работе. Эта тенденция менее актуальна для постсоветского пространства, и более актуальна для ВУЗов США и Европы, но, тем не менее, рано или поздно это может стать прорехой в системе образования.

В заключение, можно сказать «С умер, да здравствует С!». Иными словами, этот язык, хоть и практически перестал использоваться для написания прикладного ПО для х86/х64 процессоров, но это с лихвой компенсировано использованием его при разработке ПО встраиваемых систем, доля которых продолжает активно расти.

По мотивам: www.embedded.com


Leave a Reply

You must be logged in to post a comment.

blog comments powered by Disqus