Комментарии 13
А зачем тащить Fody в задачу, где достаточно базового класса? Не говоря уже о наличии таких готовых базовых классов в самом фреймворке.
+9
Для меня проще использовать Fody, чем наследоваться от класса.
Плюс Janitor.Fody сам расставляет проверки с выбросами ObjectDisposedException, что универсальный базовый класс сделать не может в принципе.
А так на вкус и цвет все фломастеры разные.
Я просто посчитал правильным сначала рассмотреть те варианты, которые моя реализация не покрывает.
Плюс Janitor.Fody сам расставляет проверки с выбросами ObjectDisposedException, что универсальный базовый класс сделать не может в принципе.
А так на вкус и цвет все фломастеры разные.
Я просто посчитал правильным сначала рассмотреть те варианты, которые моя реализация не покрывает.
+3
Я после того как начал использовать costura.fody тащу её теперь в каждый проект
0
Если вы делаете обертку для неуправляемых ресурсов, то используйте SafeHandle и наследники.
www.codeproject.com/Articles/29534/IDisposable-What-Your-Mother-Never-Told-You-About
www.codeproject.com/Articles/29534/IDisposable-What-Your-Mother-Never-Told-You-About
+6
А если я не хочу Reactive Extensions тащить к себе в солюшен?
0
Сложность постобработки, в невозможности отладки такого кода, что часто критично.
На мой взгляд проще и вернее использовать каноническую реализацию из MSDN, а все остальное может породить сложно диагностируемые проблемы…
На мой взгляд проще и вернее использовать каноническую реализацию из MSDN, а все остальное может породить сложно диагностируемые проблемы…
0
ну подход хорош тем, что вы вспомнили про SRP и выделили освобождение объекта в отдельную ответсвенность
0
А что делать с исключением в конструкторе?
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Самая простая и надежная реализация шаблона проектирования Dispose