Давно подозреваю, что адобы практикуют при написании своих продуктов конкуренцию между группами разрабочиков и они, эти группы, стремительными домкратами гадят друг другу в код.
Нет, думаю признаков какого-то злого умысла или японской забастовки тут не наблюдается. Все дело в элементарной неспособности (и нежелании) адобы контролировать процесс написания своих монструозных пакетов. В данный момент все силы ее пущены на маркетинг - все мобилизовано на то, чтобы так исхитриться, чтобы продать один и тот же кал под видом конфетки, причем, многократно одним и тем же людям. При этом, само реальное улучшение продукта отодвинуто на задний план и делается постольку, поскольку это будет красивее и "современнее", "стильнее" выглядеть снаружи, часто в ущерб функциональности.
Я уже давно говорил, что чем больше я ковыряю внутреннюю организацию адобовских программ, тем больше убеждаюсь в полнейшем отсутствии какой то общей концепции построения даже не всего пакета CS, а даже одного конкретного продукта, даже, казалось бы, такого простого, как акробат. Любая адобовская программа (в отличие, кстати, от презираемого всеми б-мерзкого корела) представляет собой лоскутное одеяло из отдельных модулей-плагинов, абсолютно разных по внутренней структуре и концепциям работы и явно написанных разными группами индусов. Причем, там видимо, принято считать, что чем уже бутылочные горлышки интерфейсов, через которые эти модули друг с другом сшиты на живую нитку, тем меньше шансов все напортить. В итоге, когда выясняется, что какое-то действие в рамках данного разбиения невозможно выполнить (не пролазит в эти горлышки) - просто нанимается очередная группа индусов, которая пишет на данное действие свою залепуху, частично дублирующую уже готовые, но работающую кардинально по другому. Этим объясняется тот факт, что каждое действие можно сделать несколькими разными способами, причем с разным результатом. Соответственно, чтобы писать что-то свое под адобу, надо едва ли не собственную графическую библиотеку писать с нуля, ибо пользоваться готовым весьма чревато: теоретически правильно работающий код может коварно подвести при выходе очередной индусской заплатки.