[uquote="murzistor",url="/forum/viewtopic.php?p=3466035#p3466035"]https://habr.com/post/423889/
Я занимаюсь программированием уже 15 лет. Но в последнее время при разработке не принято думать об эффективности, простоте и совершенстве: вплоть до того, что мне становится грустно за свою карьеру и за IT-отрасль в целом.
Для примера, современные автомобили работают, скажем, на 98% от того, что физически позволяет нынешняя конструкция двигателя. Современная архитектура использует точно рассчитанное количество материала, чтобы выполнять свою функцию и оставаться в безопасности в данных условиях. Все самолёты сошлись к оптимальному размеру/форме/нагрузке и в основном выглядят одинаково.
Только в программном обеспечении считается нормальным, если программа работает на уровне 1% или даже 0,01% от возможной производительности. Ни у кого вроде нет возражений. Люди даже гордятся, насколько неэффективно работает программа, типа «зачем беспокоиться, компьютеры достаточно быстрые»
[/uquote]
все это не столько от конечного программера зависит сколько от навязывания всяких методов программирования вроде ооп-а
например настройка пересыла байтов по уарт на МК (атмегах) вмещается в страницу, а тоже самое со стороны винды уже несколько страниц, на виндовом уарте появляется куча параметров без которых атмеги нормально исползуют уарт.
И ещё куча простейших функций на винде(да и скорее в любой большой ОС) делается маразматически, например пытался как то сделать прогу записи экрана в память а по команде скидывании отрезка записи в файл. Понятно что есть записыватели экрана но они пишут все время записывая огромные файлы и кодируют все время нагружая процессор.
Из прог которые кидали сначала в ОЗУ а потом в файл была только одна но глючная и почемуто привязанная к сети.
Вообщем как должно быть функция_Скриншот(индетификатор области,указатель на массив изображения)
, но в винде все завязано на сферически вакуумных битмапах

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

.
К тому же и кодеки по сжатию видео тоже требуют что то типа битмапов, то есть если даже скопирвать "битмап" в массив ОЗУ то потом его опять надо перетаскивать в "битмап" обратно.
Короче пришлось делать с битмапами, решил сделать просто массив битмапов и туда копировать скриншоты, впринципе прога работала и качество отрезков видео получше чем в обыных программах, но проблема втом что количество битмапов ограничено(возможно они расположены не в ОЗУ а видео памяти) и видео получлаось не длиннее 1-2 секунд.