Прозрачность (взаимодействие человека с компьютером) - Transparency (human–computer interaction)
Эта статья нужны дополнительные цитаты для проверка.Февраль 2019 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Любые изменения в вычисление система, такая как новая функция или новый компонент, прозрачный если система после изменения придерживается предыдущей внешний интерфейс в максимально возможной степени изменяя его внутреннее поведение. Цель состоит в том, чтобы защитить от изменений все системы (или пользователей-людей) на другом конце интерфейса. Как ни странно, термин относится к общему невидимость компонента, это не относится к видимость внутреннего устройства компонента (как в белая коробка или же открытая система ). Период, термин прозрачный широко используется в компьютерном маркетинге вместо термина невидимый, так как срок невидимый плохо коннотация (обычно рассматривается как нечто, что пользователь не видит и не может контролировать), пока термин прозрачный имеет хороший оттенок (обычно ассоциируется с тем, что ничего не скрывает). В подавляющем большинстве случаев термин прозрачный используется вводящим в заблуждение способом для обозначения фактической невидимости вычислительного процесса.[нужна цитата ] Из-за этого вводящего в заблуждение и противоречащего интуиции определения современная компьютерная литература предпочитает использовать выражение "агностик "сверх" прозрачного ".
Этот термин особенно часто используется в отношении слой абстракции который невидим ни из верхнего, ни из нижнего соседнего слоя.
Также временно использовался позже примерно в 1969 году в руководствах по программированию IBM и Honeywell.[нужна цитата ] термин относился к определенному компьютерное программирование техника. Код приложения был прозрачным, когда он не содержал низкоуровневых деталей (таких как управление конкретным устройством) и содержал только логику, решающую основную проблему. Это было достигнуто за счет инкапсуляция - размещение кода в модулях, которые спрятался внутренние детали, что делает их невидимыми для основного приложения.
Примеры
Например, Сетевая файловая система прозрачен, потому что он предоставляет доступ к файлам, хранящимся удаленно в сети, таким же образом, как и предыдущий локальный доступ к файловая система, поэтому пользователь может даже не заметить этого при использовании иерархии папок. Рано протокол передачи файлов (FTP) значительно менее прозрачен, поскольку требует от каждого пользователя научиться получать доступ к файлам через ftp клиент.
Точно так же некоторые файловые системы позволяют сжатие и декомпрессия данных, позволяющая пользователям хранить больше файлов на носителе без каких-либо специальных знаний; некоторые файловые системы прозрачно шифруют файлы. Этот подход не требует запуска утилиты сжатия или шифрования вручную.
В программная инженерия, также считается хорошей практикой разрабатывать или использовать уровни абстракции для база данных доступ, чтобы одно и то же приложение работало с разными базами данных; здесь уровень абстракции позволяет другим частям программы получать прозрачный доступ к базе данных (см. Объект доступа к данным, Например).
В объектно-ориентированного программирования, прозрачность достигается за счет использования интерфейсы которые скрывают фактические реализации, выполненные с разными базовыми классы.
Типы прозрачности в распределенной системе
Прозрачность означает, что любая форма распределенная система должен скрывать свою распределенную природу от пользователей, представляясь и функционируя как обычная централизованная система.
Есть много видов прозрачности:
- Прозрачность доступа - независимо от того, как доступ к ресурсам и их представление должны выполняться на каждом отдельном вычислительном объекте, пользователи распределенной системы всегда должны получать доступ к ресурсам единым и единообразным образом. Пример: SQL-запросы.
- Прозрачность местоположения - Пользователи распределенной системы не должны знать, где физически расположен ресурс. Пример: страницы в Интернете.
- Прозрачность миграции - пользователи не должны знать, обладает ли ресурс или вычислительный объект возможностью перемещаться в другое физическое или логическое местоположение.
- Прозрачность перемещения - если ресурс перемещается во время использования, это не должно быть заметно для конечного пользователя.
- Репликация прозрачность - если ресурс реплицируется между несколькими местоположениями, он должен отображаться для пользователя как один ресурс.
- Одновременный прозрачность - хотя несколько пользователей могут конкурировать за один ресурс и совместно использовать его, это не должно быть очевидным ни для кого из них.
- Прозрачность отказа - Всегда старайтесь скрыть любые отказы и восстановление вычислительных объектов и ресурсов.
- Упорство прозрачность - для пользователя не имеет значения, находится ли ресурс в энергозависимой или постоянной памяти.
- Прозрачность безопасности - Согласование криптографически безопасного доступа к ресурсам должно требовать минимального вмешательства пользователя, в противном случае пользователи будут обходить безопасность, предпочитая производительность.[нужна цитата ]
Формальные определения большинства этих понятий можно найти в RM-ODP, эталонная модель открытой распределенной обработки (ISO 10746).
Степень, в которой эти свойства могут или должны быть достигнуты, может широко варьироваться. Не каждая система может и должна все скрывать от пользователей. Например, из-за существования фиксированного и конечного скорость света всегда будет больше задержки при доступе к ресурсам, удаленным от пользователя. Если ожидается взаимодействие с распределенной системой в реальном времени, это может быть очень заметно.