Ник (Часть 3) (Ясинский) - страница 79

— Ну, да. Тут сложно. Видеть-то его можно, но изменить его нам почти невозможно, только разрушить. Однако можно сделать свое плетение-переходник, которое могло бы как-то реагировать на процессы, протекающие в эльфийском плетении. Например, тут в саду я видела, что кто-то из интеграторов сделал такой переходник на эльфийское плетение, наложенное на землю под растениями. Оно реагирует на изменения в эльфийском плетении и подает сигнал, когда необходимо полить растения, или когда у какого-то растения проблемы, болезнь, например.

— То есть, тебе приходится полностью разбираться в чужих плетениях, чтобы состыковать их?

— Ага.

Круто! Вместо того, чтобы упростить сам процесс стыковки, вывести какие-то стандарты, используют местных гениев с математическим складом ума. Я новыми глазами и с уважением посмотрел на девушку. Ее рейтинг в моих глазах резко взлетел. Мне всегда нравились девушки с мозгами в голове.

— А что, принцип черного ящика вы не используете?

— Это что такое? — Криса с интересом посмотрела на меня. Она не думала, что я скажу что-то умное в этом плане, раз не знаю что такое магическая интеграция, но сам по себе я для нее странный субъект, может, что и скажу интересное.

Я хмыкнул.

— Все очень просто. Представь себе плетение черным ящиком, то есть это понятие обозначает, что неизвестно, что находится внутри. Однако мы знаем, что подается на вход этого ящика, и какой результат получается на выходе. Простая матрица зависимости выходных данных от входных, или математическая зависимость. Или же разработать стандарты стыковок для разных классов плетений — сюда подавать такие-то сигналы, чтобы получить на выходе такую реакцию. И все проблемы.

Заметив напряженное раздумьями лицо Крисы, понял, что явно переборщил с терминологией. Проще нужно быть, Ник, проще, и люди-гномы к тебе за это потянутся.

Какие, блин, математические зависимости, какая матрица! В гномьем языке ведь даже слов таких нет — я просто, сам того не замечая, транслитерировал на гномье звучание привычные мне понятия.

— Вот смотри, разработал какой-то эльфийский маг-растениевед садовое плетение. Он знает, что использовать его будут не только такие же, как он, эльфы-садовники. Поэтому как нормальный программер… то есть маг, он должен вывести все нити или точки воздействия для управления плетением в одно место и приложить описание, как с ними работать, чтобы любой другой маг не мучился, изучая эльфийское плетение, а просто знал: если «дёрнуть» за ту или иную нить (напрямую или через своё плетение), можно добиться той или иной реакции плетения. То же самое и с событиями садоводческого плетения: сделать специальные нити, сигнализирующие о том или ином состоянии растения, вынести их в какое-то одно, удобное для наблюдения место, и снабдить инструкцией как и какая сигналка что показывает. Тебе абсолютно не нужно знать КАК работает эльфийское плетение, ты только знай да «дёргай» за заранее выведенные и описанные ниточки, я называю их интерфейсами, и цепляй к ним то, что захочешь. А если ещё и все интерфейсы сделать стандартными, похожими друг на друга по виду и работе, то и проблем особых не будет: смотришь на интерфейс плетения и как болт вставляется в гайку, также и ты вставляешь свои выходные нити в его входы. Вот и все проблемы.