|
![]() |
#1 |
Участник
|
*Теоретически* (то есть отвлекааясь от Аксапты данной нам в ощущениях) при создании расширения надо руководствоваться публичным контрактом метода включая побочные эффекты а не его исходным кодом (реализацией).
Контракт может быть описан как неформально (в XML документации) так и формально (например, набором тестов, Code Contracts). Цитата:
Ничего страшного в подмене нет. Это даст больше управляемости и надежности. А проверять конфликты можно и компилятором.
Цитата:
Ничего страшного в подмене нет. Это даст больше управляемости и надежности. А проверять конфликты можно и компилятором.
Последний раз редактировалось belugin; 05.10.2017 в 09:15. |
|
|
За это сообщение автора поблагодарили: Vadik (1), mazzy (2). |
![]() |
#2 |
Участник
|
вот это прямо золотые слова! это ж похоже на одного из трёх китов ООП!
__________________
Felix nihil admirari |
|
![]() |
#3 |
Banned
|
Цитата:
Чтение из файла например. А вот создание строки заказа уже по сути интерфейс к процессу. А там где процесс без исходного кода никак. Ничем. Да, хуже. От того что пытаются уйти от ошибок компиляции сам по себе оверлееринг никуда не исчезает. Его просто не видно. А со старым оверлеерингом - было видно. Ведь какая цель у нас программистов в большинстве случаев? Именно что логический оверлей какого-то процесса, просто потому что это в сути стоящих перед нами задач. Мало того что процессную систему прибили ООП так теперь еще и запретили менять процессы. Без возможности оверлееринга/подмены мы не можем вносить изменения в процесс, мы можем только подключать свои собственные независимые процессы. Это может быть нормально само по себе, но это совершенно недостаточно для (1 закона Кибернетики) тех требований которые предьявляет наш типичный клиент. Ладно бы не дурили голову себе и другим и закрыли систему намертво, это было бы и честно и логично. Но продолжать пропагандировать систему как платформу для разработки - это разрывает мозг. Вот EVGL хорошо иллюстрирует. Цитата:
Это все только слова и теоретические рассуждения. На практике все происходит с точностью до наоборот, и я могу это доказать на цифрах. При переходе с 7.1 на 7.2 наше приложение согласно отчету анализа обновления было затронуто 119 (прописью: сто девятнадцать) уничтоженными полями или таблицами, и это только data dictionary. Весь код, который это использовал - расширения, перекрытия, классы с бизнес-логикой - может идти лесом. Т.е. мастера по redesign / reengineering в Microsoft плевали на доработки и партнерские решения. Они ломали и будут ломать, с корнем удалять, менять внутреннюю логику. При этом самое худшее, что может случиться, это формально компилируемый код расширений, который просто перестал вызываться или работать из-за изменения порядка исполнения объектов.
Последний раз редактировалось ax_mct; 05.10.2017 в 23:17. |
|
|
За это сообщение автора поблагодарили: Link (1). |
![]() |
#4 |
Участник
|
Цитата:
Цитата:
А вот создание строки заказа уже по сути интерфейс к процессу. А там где процесс без исходного кода никак.
Цитата:
Ничем. Да, хуже. От того что пытаются уйти от ошибок компиляции сам по себе оверлееринг никуда не исчезает. Его просто не видно. А со старым оверлеерингом - было видно.
Цитата:
Ведь какая цель у нас программистов в большинстве случаев? Именно что логический оверлей какого-то процесса, просто потому что это в сути стоящих перед нами задач.
Цитата:
Без возможности оверлееринга/подмены мы не можем вносить изменения в процесс, мы можем только подключать свои собственные независимые процессы.
Цитата:
Вот EVGL хорошо иллюстрирует.
|
|
Теги |
chain of command, extensions |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|