Cтраница 3
![]() |
Мастер Interface Wizard. [31] |
Активизация Interface Wizard значительно упрощает задачу реализации интерфейса. Мастер перечисляет методы и свойства класса, необходимые для реализации данного интерфейса ( или интерфейсов), он добавит в реализацию класса все необходимые члены. Обратите внимание, что для всех методов, добавленных в класс, вам необходимо лишь предоставить значимый программный код. На рис. 11.3 мастер оценивает TAthlete для его интерпретации IWalker и IJumper, а также предлагает изменения, которые необходимы для правильной реализации этих интерфейсов. [32]
Базовым интерфейсом, которому прямо или опосредованно наследуют все интерфейсы, является Ilnterface, объявленный в модуле System. Если в объявлении нового интерфейса не указан родительский интерфейс, то данный интерфейс наследует непосредственно интерфейсу Ilnterface. В приложениях Win32 интерфейс Ilnterface эквивалентен интерфейсу ITJnknown, который считался базовым в прежних версиях Delphi и который имеется во всех объектах СОМ. В этом интерфейсе объявлено три метода: Query Interface, AddRef и Release, которые обязательно надо реализовать в любом классе, использующем интерфейс. NET эти методы не объявлены и реализовывать их не надо. [33]
Появились также функции, относящиеся к поддержке интерфейса. Две обновленные версии малоизвестной функции Support позволяют проверить: чем поддерживается данный интерфейс - объект или класс. [34]
Выполнение заданий по конструированию интерфейса требует от студента только умения составить схему расположения элементов в основном логическом устройстве, устройстве синхронизации и в блоке усиления или ослабления аналоговых сигналов. Затем студент подбирает заранее скомпонованные съемные модули, подходящие для конструирования данного интерфейса. При этом не требуется знания таких тонкостей, как организация преобразования уровня аналоговых сигналов, логическое преобразование или устранение шумов. [35]
Интерфейсы могут выполняться односвязными и мно-госвязньши. В односвязном интерфейсе общие для всех устройств шины используются всеми подключенными к данному интерфейсу устройствами на основе разделения времени. [36]
Однако, в приложении могут создаваться переменные типа интерфейса. Через эти переменные можно обращаться к объявленным в интерфейсе методам объектов классов, использующих данный интерфейс, точно так же, как это делается при непосредственном обращении к объектам. [37]
В дополнение к этому, СОМ безразличен язык программирования. СОМ определяет двоичный интерфейс, который должны поддерживать объекты, поэтому объекты СОМ можно создавать на любом языке, способном поддерживать данный интерфейс. Обращаться к методам этих объектов можно на любом языке, позволяющем осуществлять вызовы данного двоичного интерфейса. Ни объект, ни его клиент не знают, на каком языке он написан. Правда, некоторые языки лучше подходят для создания программ, использующих технологию СОМ, однако сама по себе СОМ является независимой от языка. [38]
Асинхронный телекоммуникационный интерфейс с буферной памятью ( 2227В) служит для расширения возможностей системы в части приема-передачи больших массивов информации. Микропроцессор и буферная память ( 1 Кбайт) контроллера существенно упрощают процедуру обмена данными и, кроме того, уменьшают требования к процедуре отработки передачи центральным процессором. Данный интерфейс позволяет системе ВАНГ-2200 функционировать так же, как и многие другие асинхронные терминалы ( например, телетайп IBM 2741SEL, ВАНГ-1200), либо взаимодействовать с другой системой ВАНГ-2200. Скорость передачи составляет от НО до 9600 бит / с при наличии возможности выбора формата передаваемых данных. [39]
Управление всеми аппаратами системы фильтрации полностью автоматизировано. Контроль работы системы организован на основе PC-совместимого компьютера, оснащенного системой ввода - вывода, использующей стандартный интерфейс RS-232. Как известно, данный интерфейс обеспечивает двухстороннюю связь между последовательными портами компьютера и контроллерами исполнительных устройств. [40]
Интерфейсы во многом напоминают интерфейсную часть классов, особенно - абстрактных классов. Реализация должна осуществляться в классах, поддерживающих данный интерфейс. Поэтому объекты интерфейсов создаваться в приложении не могут. Могут создаваться только объекты классов, использующих интерфейс. [41]
При проектировании вычислительных систем интерфейс подлежит стандартизации. Стандартизация распространяется на форматы передаваемых через интерфейс информации и команд, схемы шин интерфейса, алгоритмы функционирования интерфейса и управляющие сигналы, которыми устройства обмениваются между собой во время сеанса связи. Стандартный интерфейс предполагает наличие общих информационных магистралей ( шин) для всех устройств данного интерфейса. [42]
Классы - это образцы, из которых операциями create или new могут быть созданы объекты с указанными в образце свойствами. Объекты одного класса обладают одними и теми же операциями и вследствие этого - одним и тем же поведением. Классы обладают одним или несколькими интерфейсами, которые перечисляют операции, доступные клиентам через данный интерфейс. Тело класса содержит реализации всех операций, перечисленных в интерфейсе. Кроме того, оно содержит внутренние переменные, которые служат для отображения состояния объекта; для абстрактных интерфейсов внутренние переменные скрыты в теле класса, для неабстрактных интерфейсов - являются их частью. [43]
Среда Delphi обеспечивает двустороннее отображение между WSDL и интерфейсами. Это означает, что вы можете сгенерировать интерфейс на основе имеющегося у вас файла WSDL. В результате вы получаете возможность создать клиентскую программу, которая может отправлять запросы SOAP при помощи данного интерфейса. [44]
Добавить уровень SIO в любой системе весьма непросто, поскольку для этого требуется введение нового макроопределения или новых параметров, а также включение в состав системы новых модулей работы с устройствами, возможно, напоминающих модули, реализующие уровень ЕХСР, и, кроме того, изменение макрокоманд открытия файлов и правил их применения. Ио независимо от технических сложностей, связанных с определением нового уровня, большие трудности возникают при попытке переноса старых прикладных программ в среду новой системы. Если некоторый интерфейс был когда-то определен, то, значит, существуют программы, жестко с ним связанные, и иногда возможность обращения через данный интерфейс приходится поддерживать в течение долгого времени, уже после того, как этот интерфейс реально потеряет всякий смысл и перестанет обеспечивать какие-либо удобства. Эта проблема стоит достаточно остро, так как отражает до сих пор не преодоленные противоречия между стремлениями обеспечить эффективные низкоуровневые интерфейсы и создать такие универсальные способы общения с системой, которые не меняются даже при изменении ее внутренней структуры. [45]