Программирование на ВМК

Я очень часто повторяю, что на ВМК не учат программировать. Большинство людей такие фразы абсолютно не понимают, а объяснять мне обычно лень. Но вот недавно я увидел код ВМКшника, в котором была задача прочитать бинарный файл. Задача несколько осложнялась тем, что ожидаемый (а может быть и требуемый) язык реализации был C/C++. Как бы вы считали бинарный файл? Я бы открыл его fopen’ом (плохо знаю плюсы, надо бы, конечно, какой-нибудь datastream использовать). А по возможности использовал бы Qt, который позволил бы удалиться на более высокий уровень, почти не потеряв в скорости. Этот товарищ использовал системные вызовы. Он читал файл через open и read. Это ужасно. Совершенно не к месту системные вызовы, которые еще и медленнее будут, если что-то пойдет не так с кешами. А если хочешь кеши — придется их самому написать. Может возникнуть вопрос — а зачем использовались системные вызовы то? Ответ прост — нам рассказывали только их. Поэтому, если вы видите странный код, изобилующий системными вызовами вместо нормальных библиотечных функций — перед вами с большой вероятностью ВМКшник. Этот пример не единственный. Я уже насмотрелся на однострочные комментарии «конструктор», «деструктор», «выделение памяти», «освобождение памяти», а также удаление дефолтных операторов присваивания, дефолтных конструкторов и прочей ереси, которую удалять совсем не обязательно.

Короче, учат не тому. А после просмотра подобного кода сразу видно какие курсы посещал человек. И не дай бог ему понравился ассемблер…

Программирование на ВМК: 4 комментария

    1. vlad Автор записи

      А в голове остается всё равно то, чем занимался больше времени. Одного семестра хватило на то, чтобы остались только системные вызовы. ВМКшник, я более чем уверен, нормальный, так как он окончил СУНЦ.

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

      1. Станислав

        Мне кажется, что нужно научить учиться, ведь если преподавать все полезное и нужное, то не хватит никаких ресурсов: ни времени, ни людей.

        1. vlad Автор записи

          Единственный нормальный метод, который я знаю, — это написание проектов. Но каждый раз, когда кто-то пытается раздавать проекты всем желающим и не очень желающим (ЕВА / истории из физтеха), это заканчивается какими-то фейлами.

          Традиционно, хотели как лучше, а получилось как обычно

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *