bb:nohost
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева
Предыдущая версия
|
Следующая версия
Следующая версия справа и слева
|
bb:nohost [2016/04/06 20:12] prospero78 [Устранение зависимостей от подсистемы Host] |
bb:nohost [2016/04/06 20:14] prospero78 [Модификация модуля Kernel] |
Эти зависимости не позволяют нам произвести безопасную замену модуля ''Kernel'', например, при замене операционной системы. Безопасность, в данном случае, это //соблюдение контрактов интерфейса//. Текущий интерфейс модуля ''Kernel'' явно зависит от модуля ''WinApi'', что предполагает изменение этого интерфейса (а значит контрактов), при смене ОС. Это и есть нарушение герметичности системного слоя **БлэкБокса**. | Эти зависимости не позволяют нам произвести безопасную замену модуля ''Kernel'', например, при замене операционной системы. Безопасность, в данном случае, это //соблюдение контрактов интерфейса//. Текущий интерфейс модуля ''Kernel'' явно зависит от модуля ''WinApi'', что предполагает изменение этого интерфейса (а значит контрактов), при смене ОС. Это и есть нарушение герметичности системного слоя **БлэкБокса**. |
| |
В целях устранения данного нарушения герметичности предлагается разделение интерфейса модуля ''Kernel'' на платформо-независимую (условно: Pascal_kernel) и платформо-зависимую части(условно: Win32kernel, Win64kernel, Lin32kernel, Lin64kernel и т. д.). | В целях устранения данного нарушения герметичности предлагается разделение интерфейса модуля ''Kernel'' на платформо-независимую (условно: ''(Kernel)Pascal'') и платформо-зависимую части(условно: ''(Kernel)Win32'', ''(Kernel)Win64'', ''(Kernel)Lin32'', ''(Kernel)Lin64'' и т. д.). |
| |
Плюсом данного решения является **полное изолирование** клиентских модулей от платформы. | Плюсом данного решения является **полное изолирование** клиентских модулей от платформы. |
bb/nohost.txt · Последнее изменение: 2020/10/29 07:08 (внешнее изменение)