В вычислениях , атрибут является спецификацией , которая определяет свойство в качестве объекта , элемент или файл. Он также может ссылаться или устанавливать конкретное значение для данного экземпляра такового. Для ясности, атрибуты правильнее считать метаданными . Атрибут часто и обычно является свойством свойства. Однако при фактическом использовании термин «атрибут» может и часто рассматривается как эквивалент свойства в зависимости от обсуждаемой технологии. Атрибут объекта обычно состоит из имени и значения; элемента, типа или имени класса; файла, имя и расширение.
- Каждый именованный атрибут имеет связанный набор правил, называемых операциями: никто не суммирует символы, не манипулирует и не обрабатывает массив целых чисел как объект изображения - текст не обрабатывается как тип с плавающей запятой ( десятичные числа ).
- Отсюда следует, что определение объекта может быть расширено путем наложения типизации данных : формат представления, значение по умолчанию, а также допустимые операции (правила) и ограничения («Деление на ноль недопустимо!») - все они потенциально участвуют в определении объекта. Атрибут или, наоборот, можно назвать атрибутами типа этого объекта. Файл JPEG не декодируется с помощью тех же операций (какими бы похожими они ни были - это все форматы графических данных), что и файл PNG или BMP, а также не обрабатывается типизированное число с плавающей запятой по правилам, применяемым к типизированным длинным целым числам.
Например, в компьютерной графике линейные объекты могут иметь такие атрибуты, как толщина (с реальными значениями), цвет (с описательными значениями, такими как коричневый или зеленый, или значения, определенные в определенной цветовой модели, такой как RGB), штриховые атрибуты и т. Д. Круговой объект может быть определен с помощью аналогичных атрибутов, плюс начало координат и радиус. Применительно к компьютерным системам атрибуты определены, в частности, для атрибутов чтения или записи для определенных операций чтения или записи.
Использование атрибута [ править ]
Если рассматриваемый элемент может считаться свойством ( CUSTOMER_NAME
) другой сущности (скажем CUSTOMER
), элемент может иметь ноль или более собственных атрибутов (свойств) ( CUSTOMER_NAME
есть TYPE = "KINDOFTEXT"
).
C # [ править ]
В языке программирования C # атрибуты - это метаданные, прикрепленные к полю или блоку кода, например сборки , члены и типы , и эквивалентны аннотациям в Java . Атрибуты доступны как компилятору, так и программно через отражение .
Пользователи языка видят множество примеров, когда атрибуты используются для решения сквозных проблем и других механизмов или платформ. Это создает ложное впечатление, что это их единственное предназначение.
Их конкретное использование в качестве метаданных остается на усмотрение разработчика и может охватывать широкий спектр типов информации о любом конкретном приложении, классах и членах, не зависящих от экземпляра. Решение о раскрытии любого заданного атрибута в качестве свойства также остается за разработчиком, как и решение использовать их как часть более крупной инфраструктуры приложения.
Атрибуты реализованы как классы, производные от . Они часто используются службами CLR , например, совместимостью с COM , удаленным взаимодействием , сериализацией и могут запрашиваться во время выполнения.System.Attribute
В этом примере показано, как атрибуты определены в C #:
[Obsolete ("Use class C1 вместо", IsError = true)] // вызывает сообщение компилятора о том, что общедоступный класс C {...} // что C устарелоткрытый класс ObsoleteAttribute : Attribute { // имя класса заканчивается на "Атрибут" общедоступная строка Message { get ; } // но может использоваться как «устаревшее» public bool IsError { get ; набор ; } public ObsoleteAttribute () {...} public ObsoleteAttribute ( string msg ) {...} public ObsoleteAttribute ( string msg , bool error ) {...}}[Устаревший] [Устаревший («Это устаревший»)] [Устаревший («Устаревший», ложь)] [Устаревший («Это устаревший», IsError = false)]
Позиционные параметры, такие как первый параметр указанной выше строки типа, являются параметрами конструктора атрибута. Параметры имени, такие как логический параметр в примере, являются свойством атрибута и должны иметь постоянное значение. [1]
Атрибуты следует противопоставлять документации XML, которая также определяет метаданные, но не включена в скомпилированную сборку и, следовательно, не может быть доступна программным способом.
HTML и JavaScript [ править ]
Отображать отмеченный атрибут и свойство флажка по мере их изменения.
<! doctype html> < html lang = "ru" > < head > < body > < input name = "food" type = " food " id = " food " > < meta charset = "utf-8" > < title > attr demo </ title > < style > p { border ; Сплошной черный 1px ;семейство шрифтов ; ариал без засечек ; выравнивание текста по центру ; } b { цвет : синий ; } </ style > < script src = "https://code.jquery.com/jquery-1.10.2.js" > </ script > </ head > < body > < input id = "check1" type = "checkbox" checked = "checked" > < label for = "check1" > Проверьте меня </ label > < p > </ p > < скрипт > $ ( "ввод" ) . change ( function () { var $ input = $ ( this ); $ ( "p" ). html ( ".attr ('checked'): <b>" + $ input . attr ( "checked" ) + "< / b> <br> " + " .prop ('проверено'): <b> " + $ input . prop ( " проверено " ) + " </b><br> " + " .is (': проверено'): <b> " + $ ввод . is ( ": проверено" ) + "</b>" ); }) . изменить (); </ script > </ body > </ html >
перед нажатием [ редактировать ]
. attr ( 'checked' ) : проверено . prop ( 'проверено' ) : ложь . is ( ': checked' ) : false
после щелчка [ редактировать ]
. attr ( 'checked' ) : проверено . prop ( 'проверено' ) : правда . is ( ': checked' ) : true
Многозначные базы данных [ править ]
Во многих постреляционных или многозначных системах баз данных относительно SQL таблицы - это файлы, строки - это элементы, а столбцы - это атрибуты. Как в базе данных, так и в коде атрибут является синонимом свойства и переменной, хотя атрибуты могут быть дополнительно определены, чтобы содержать значения и подзначения.
Первой из этих баз данных была операционная система Pick . Две текущие платформы включают Universe от Rocket U2 и Caché от InterSystems .
XML [ править ]
В XML , атрибут представляет собой конструкция разметки , состоящая из пары имени / значения , которое существует в пределах стартового тега или пустой элемент тега . Языки разметки, такие как HTML и XML , используют атрибуты для описания данных и форматирования данных.
Хорошим примером является процесс присвоения значений свойствам (элементам) XML. Обратите внимание, что значение элемента находится перед (отдельным) закрывающим тегом, а не в самом элементе. Сам элемент может иметь набор атрибутов set ( NAME = "IAMAPROPERTY"
).
Если рассматриваемый элемент может считаться свойством ( CUSTOMER_NAME
) другой сущности (скажем CUSTOMER
), элемент может иметь ноль или более собственных атрибутов (свойств) ( CUSTOMER_NAME
есть TYPE = "KINDOFTEXT"
).
См. Также [ править ]
- Пара атрибут – значение
- Атрибут файла
- Расширенные атрибуты файла
- Поле (информатика)
- Свойство (программирование)
- Аннотация Java
- Метаданные
Ссылки [ править ]
- ^ Mössenböck, Hanspeter (2002-03-25). «Расширенный C #: переменное количество параметров» (PDF) . http://ssw.jku.at/Teaching/Lectures/CSharp/Tutorial/ : Institut für Systemsoftware, Университет Йоханнеса Кеплера в Линце, Fachbereich Informatik. п. 44 . Проверено 8 августа 2011 .