Показать сообщение отдельно
Старый 02.04.2018, 21:19   #31  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от ax_mct Посмотреть сообщение
API означает более или менее неизменный интерфейс и определяет границы дозволенного.

Самый расширяемый язык X++ (читай D365FO) не имеет таких интерфейсов, а предлагает сверлить и подвешиваться где только сможешь.
При этом нигде не говорится о концепции и границах дозволенного. Все рассматривается только со стороны технических возможности.
Я думаю на эту тему в терминах design-by-contract, ковариантности, контравариантности и обратной совместимости.

Цитата:
Уверены? По идее все от зависит от нюансов. Что-то можно, а что-то нельзя, но кто это будет оценивать и на какой стадии?
Я имею ввиду гипотетичекскую альтернативную реальность в которой разделяем приложение разделено на две части - в одном модули которые можно легко обновить на новую версию с продуманным интерфейсом расширения, а в другой - "скрипты", которые можно править, но при этом новая версия не является обратно совместимой. То есть возможен ли некий компромисс. Условно говоря, как в линуксе - можно написать приложение, используя API, а можно поменять исходный код ОС. Или как в игровых движках (тут я не специалист но вроде там так) ядро .из основных понятий и скрипты (насколько я знаю, там даже другие языки для них используют чем для ядра - типа lua).