А зря вы так. Конечно, абстракции во вред производительности сторятся (и в ограничение гибкости), НО!
В Unix действительно хорошая идея представлять все в виде файлов. Так как приложение становится масштабируемым, легко поддается совершенствованию и изменению.
Например,
$ cat /dev/audio > ~/1.au
Поболтали в микрофон
$ cat ~/1.au > /dev/audio
И проиграли в колонках :-)
Красивая абстракция, не заставляет вас изучать устройство аудио-системы.
В действительность 1C бухгалтерские продукты - средние по функционалу на рынке. У нас на эту тему был курс.
Их ключ к успеху - грамотная раскрутка.
PS. Живя в 21ом веке меня крайне удивляют обновления для 1C в виде ТЕКСТОВЫХ ФАЙЛОВ где написано - скопируйте этот файл туда-то, тот файл еще куда-то. Это ПОЗОР просто нереальный. Но ведь раскрутили! И многие юзают!
Е
Р
Т
И
К
А
Л
Ь
Е
Р
Т
И
К
А
Л
Ь
Да, мноджественность подсистем - это полный отстой, что тут спорить.
Абстракция используется там, где быстродействие не критично.
Не использовать абстракцию там, где нет проблем с быстродействием - ну это себе проблемы просто создавать.
Чтобы издать звук бипером вы обращаетесь к микшеру, эквалайдеру и еще двадцати компонентам?
Если бы для каждой задачи использовались прямые инструменты без абстракций - человечество не имело бы и 1/10 софта, который сейчас есть.
Блокноту ни к чему знать о том, что файл лежит на FTP-сервере если операционная система дает такую абстракцию.
А если бы производители блокнота сидели и добавляли сотни видов источников и файловых систем - они бы рехнулись.
Любое углубление должно быть оправдано.
Если надо просто записать и воспроизвести - в консоли это делается мгновенно. Если нужно смешивание, регуляция и тп. - тут уже другой подход.
Любой API многократно дублирует свою функциональность (или доступ к функциональности) ради такого удобства.
На клиенте:
$ cat 1.txt > /socket
На сервере:
$ cat /socket > 1.txt
Абстракции - штука полезная и элегатная. Главное - понимать где их не юзать.
В Unix действительно хорошая идея представлять все в виде файлов. Так как приложение становится масштабируемым, легко поддается совершенствованию и изменению.
Например,
$ cat /dev/audio > ~/1.au
Поболтали в микрофон
$ cat ~/1.au > /dev/audio
И проиграли в колонках :-)
Красивая абстракция, не заставляет вас изучать устройство аудио-системы.
Их ключ к успеху - грамотная раскрутка.
PS. Живя в 21ом веке меня крайне удивляют обновления для 1C в виде ТЕКСТОВЫХ ФАЙЛОВ где написано - скопируйте этот файл туда-то, тот файл еще куда-то. Это ПОЗОР просто нереальный. Но ведь раскрутили! И многие юзают!