Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
 Аватар для oblomingo
7 / 7 / 4
Регистрация: 20.06.2012
Сообщений: 129
Записей в блоге: 4

Практическое применение атрибутов

02.07.2012, 22:54. Показов 3883. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток!
В свободное время с удовольствием почитываю С# 4.0 Шилдта. Дошел до атрибутов. Судя по всему это что-то вроде комментариев, которые можно получить динамически во время компиляции. Увы, мне пока сложно представить практическую ценность этой особенности языка.
Какая польза от атрибутов? Зачем они нужны? Как вы используете на практике?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.07.2012, 22:54
Ответы с готовыми решениями:

Каково практическое применение делегатов?
Знаю, что уже тысячу раз спрашивали о делегатах, но сколько не читаю, всё очень туго даётся. Сколько ни читаю, вроде бы суть понимаю, но на...

Практическое применение теоретическим навыкам
Ребят, начал учить c#, но не знаю, что делать с моими знаниями, подкиньте пару задач не сложных или ресурс на котором они есть.

Показать практическое применение операций со стеком
Можно ли каким нибудь простым примером показать практическое применение операций со стёком ?

5
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
02.07.2012, 23:03
Атрибуты - это своего рода метаданные. Дополнительная информация о какой-либо сущности: сборке, классе, методе, свойстве и т.д.
Информацией этой пользуются те, кто в ней заинтересован, к примеру, одно из самых распространенных применений атрибутов - XML-сериализация. Как указать сериализатору, каким образом перегонять в текст и обратно некий элемент? С помощью атрибута:
C#
1
2
3
4
5
6
[XmlRoot("tempClass")]
class Temp
{
   [XmlAttribute("fooElement")]
   public string Foo { get; set; }
}
Когда я передам этот класс сериализатору, он через рефлексию глянет, имеются ли интересные ему атрибуты на самом классе или его членах. В данном случае он увидит, что при сериализации я хочу класс Temp сохранять как тег <fooElement> (если он является корневым), а свойство Foo как атрибут fooElement. В результате получится что-то вроде этого:
XML
1
<tempClass fooElement="" />
1
 Аватар для oblomingo
7 / 7 / 4
Регистрация: 20.06.2012
Сообщений: 129
Записей в блоге: 4
02.07.2012, 23:18  [ТС]
kolorotur, значит полезная вещь. Пока я такие средства не использую, но буду иметь ввиду.
0
 Аватар для Unril
826 / 717 / 110
Регистрация: 06.10.2010
Сообщений: 825
Записей в блоге: 1
03.07.2012, 01:23
Самому их писать часто не придётся, но почти в каждом пространстве имён в .net framework есть какие-либо атрибуты, с помощью которых что-либо настраивается. Поэтому знать, что это такое, и для чего они нужны -- необходимо.
0
 Аватар для Lasur
267 / 257 / 43
Регистрация: 18.03.2012
Сообщений: 506
03.07.2012, 02:54
Добавлю еще, что популярный плагин для VS Resharper вводит свои атрибуты для удобства отладки приложения. Например, они позволяют отслеживать возможный null при возвращении метода, упрощают форматирование в ToString() и т.д. Подробнее здесь или здесь.
0
 Аватар для SandWraith
189 / 189 / 38
Регистрация: 11.04.2009
Сообщений: 497
03.07.2012, 11:20
Еще есть полезнейший PropetyGrid, вся логика которого построена на атрибутах.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.07.2012, 11:20
Помогаю со студенческими работами здесь

Имеют ли практическое применение события с методами не void ?
Привет! Давно интересует вопрос. Я в своей (скромной) практике не вспомню случаев, когда метод-обработчик события возвращает какое-то...

Практическое применение c++
Решил изучить с++, но столкнулся со следующей проблемой: как программы на этом языке применяются на практике? При изучении с# находил...

Практическое применение си
Всем привет) Более менее научился что-то писать на си, но теперь хочется написать что-то полезное. Что можно написать на си работаю на Mac...

VB.NET: Практическое применение
VB.NET имеет практическое применение или НЕТ ? Иными словами, есть ли задачи, для решения которых он удобней, чем C# ?

Интерфейсы - практическое применение
Привет народ! Может кто-нибудь объяснить на пальцах, для чего нужны интерфейсы? Описание и определение я конечно же гуглил, с этим всё...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru