Архив метки: C#

Кое-что о неявной типизации

Отгремели холивары. Герои починяют копья и готовятся к будущим битвам. Ну, а я выскажусь. На мой взгляд, Илья выступил в пользу повсеместного использования неявной типизации в C# очень мощно и сурово, но абсолютно неубедительно. Во всяком случае, с моей точки … Читать далее

Рубрика: Разработка | Метки: , | Комментарии (5)

Коллекция граблей

Наткнувшись сегодня в статье Александра Галкина «Немного об интерфейсах в .Net (по мотивам одного интервью)» на тот факт, что массив в .NET, оказывается, реализует многие члены интерфейса IList выбрасыванием NotSupportedException, я крайне удивился. Удивился, потому что привык, что .NET страхует … Читать далее

Рубрика: Разработка | Метки: , | Комментарии (2)

Использование атрибутов безопасности для контроля доступа к коду

Довелось мне недавно перерабатывать модель безопасности на немаленьком проекте с трудной судьбой. Модель получилась удобная, изящная, практичная, в ней по уму реализованы и красиво вписаны в бизнес-логику всякие участники, удостоверения и роли, и единственное, чего не хватало до полного счастья … Читать далее

Рубрика: Разработка | Метки: , | Комментарии (2)

Такие разные одиночки

Данная запись является вольным переводом статьи Джона Скита «Implementing the Singleton Pattern in C#» (англ.), которая чрезвычайно понравилась мне как полнотой материала, так и манерой его подачи (с объяснением причин, особенностей и последствий). Введение Паттерн одиночка — один из наиболее … Читать далее

Рубрика: Разработка | Метки: , , , | Добавить комментарий

Используя using

Один из моих самых любимых вопросов на собеседовании: в чём опасность такой конструкции? … using (MyClass myClass = new MyClass() { Prop = p }) { myClass.Use(); } Выглядит вполне невинно — до тех пор, пока не начинаешь задумываться в … Читать далее

Рубрика: Разработка | Метки: , | Добавить комментарий

…тем больше я люблю C#

Нашел недавно забавный трюк. Иногда при реализации интерфейса удобно какой-либо из объявленных членов реализовать производным типом. Как-то так. 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 private interface I { object P { … Читать далее

Рубрика: Разработка | Метки: , | Добавить комментарий

О литералах, регулярных выражениях и пользе документации

Один из моих коллег недавно наступил на грабли, словив глюк с неочевидными на первый взгляд симптомами, которые и сформулировать-то затруднительно. В общем, дело было так: сидит он себе, никого не трогает, программу пишет. Конкретно — фильтр, пропускающий лишь символы из … Читать далее

Рубрика: Разработка | Метки: , | Комментарии (5)

Чем лучше я узнаю PHP, тем больше я люблю C#. Издание второе, переработанное и дополненное.

Когда-то давно (но уже после того, как я принял решение стать дотнетчиком) я случайно наткнулся на хабре на перевод статьи «PHP: a fractal of bad design», и лишь тогда осознал всю глубину той бездны, из которой намеревался выбраться. Пока я работал с … Читать далее

Рубрика: Разработка | Метки: , , , | Комментарии (9)