Вже писали раніше, що треба вивчати тільки якщо плануєш вирішувати практичні задачі і використовувати в роботі
З власного досвіду C вчив заради цікавості, а також в університеті грався з асемблером, який дійсно допоміг краще зрозуміти, що під капотом if, while, for, break, continue звичайне go to
Поэтому, я считаю, что трата времени на изучение основ этого языка — это долгосрочная инвестиция в своё профессиональное образование. Конечно, с оговоркой на то, что при выборе глубины изучения нужно руководствоваться здравым смыслом.
Обязательно ли знать Си современному веб- или мобильному разработчику? Я думаю, что нет. В большинстве случаев в ежедневной разработке знание Си ему не потребуется. С другой стороны, будет ли вредно понимание основ и концепций этого языка? Точно нет. Я уверен, что интересы «настоящего» программиста (в моем субъективном понимании) должны выходить за пределы ежедневной рутины.
Язык Си действительно один из самых старых и популярных инструментов для разработки ПО. Его используют там, где необходима высокая производительность и низкоуровневая работа с железом: системное программирование, работа с микроконтроллерами, разработка операционных систем. Очевидно, что программисты, работающие над ПО такого рода, должны хорошо знать свой основной инструмент.
Изучать какой-либо язык программирования, не имея планов по дальнейшему применению этих знаний на практике, к сожалению, бессмысленная затея. Знания, не подкреплённые практикой, как минимум будут неполными, ну а как максимум — «улетучатся» через полгода-год.
Если есть интерес заглянуть поглубже и понять работу компьютерных систем, надо ориентироваться не столько на язык, сколько на разработку какого-либо системного программного обеспечения. Например написать собственный драйвер под какое-либо устройство (например подключаемое через USB). В процессе работы над подобной задачей потребуется изучить, каким образом происходит взаимодействие операционной системы и внешнего устройства, особенности системных API и протоколов и многое другое.
5 комментариев
Добавить комментарий