Как стать автором
Обновить

Комментарии 18

Интересный анализ, даже никогда об этом не задумывалась. С удовольствием прочитаю продолжение.
Спасибо за положительный отзыв. Если топик не уйдёт в жуткий минус, попробуй даже продолжение опубликовать в этом стиле.
мне не совсем понятно, что нового хотели показать?
такое ощущение, что инструменты .NET Reflector или ILSpy не существуют.

Даже не изобретая сложных имен для своих методов можно получить проблему с коллизией имен, которую не так легко будет осознать не зная подробностей внутреннего устройства .Net.


т.е. ошибки (!!!) CS0102 и CS0021 и невозможность компиляции — все же позволяют столкнуться с проблемой?
Ну проблема заключается в том, что синтаксически валидный код не компилируется.
И это может озадачить, по крайней мере начинающего программиста.
По поводу инструментов: мне хотелось попробовать именно такой жанр («детектив»), где вся информация получается на основании валидного или невалидного кода, не используя дополнительные инструменты. А так многое можно было увидеть и просто в Object Browser.
А еще иногда, открывая MSDN, можно узнать, что Item можно заменить на другое имя для индексируемых свойств msdn.microsoft.com/en-us/library/2549tw02.aspx ;)

А, вообще, рекомендую автору прочитать хотя бы одну более или менее вменяемую книжку по C# / .NET, чтобы не углубляться в такие детективы ;)
Спасибо за интересный аттрибут ([System.Runtime.CompilerServices.IndexerName(«TheItem»)]), я о нем правда не знал.
А вообще автор читал много книг, включая Annotated C#, CLR via C# и Esssential .Net.
Просто автор экспериментирует с подачей технического материала :)
Автору советую полистать CLR via C# и всё сразу встанет на свои места.
Как раз вчера, прежде чем написать всё это я перечитывал Рихтера.
В этой статье я хотел поэкспериментировать с таким вот жанром изложения информации: только С#., не используя внешних программ, поиск ответов на вопросы и небольшие эксперименты. Как я понял, это было не самым лучшим решением. Учту на будущее…
кроме самих свойств класса также выдать на печать названия видов свойств.


Кроме самих членов класса также выдать на печать название типов(родОв) свойств.
Да, Вы правы, что-то у меня это слово вчера ночью не получилось вспомнить. Спасибо.
А зачем вы взяли рефлектор, если есть исходники?
Я не брал рефлектор, я использовать рефлексию, что есть в самом .Net и С#.
О том, во что превращаются свойства и с каким именем, даже написано в книге Троелсена. А чтобы покопаться в исходниках .NET Framework нужно скачать эти самые исходники здесь.
Спасибо за ссылку!
Мне просто хотелось чуть-чуть поразвлечься с reflection и посмотреть, что я тут могу увидеть.
Трёлсена читал и в принципе всё это мне было известно, просто хотел проверить знание экспериментом. :)
НЛО прилетело и опубликовало эту надпись здесь
Хорошо, постараю больше так не издеваться :)
Начало статьи:
>> Недавно меня заинтересовала структура такого древнего .Net-интерфейса как IList…

Окончание статьи:
>> Если статья понравится. то в следующей статье я расскажу чем меня заинтересовал интерфейс IList…

Очень оригинальный способ изложения
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации