Рейтинг
+9.12
голосов:
8
avatar

C#  

LinFu AOP и LinFu IOC вводный экскурс часть первая

Зачастую при работе с БД(да и не только), особенно при использовании какого-нибудь ОРМ, возникает задача упрощения тех или иных процедур, которые приходится вызывать очень часто(к примеру открытие транзакции и её коммит, запросы с NOLOCK или банальный препроцессинг данных). Конечно все можно сделать по-старинке:

void Method(sometype somevalue)
{
   Preprocess(somevalue);
   OpenTransaction();
   // some stuff
   CommitTransaction();
}

Но «Шурик, это же не наш метод!»®. Потому мы пойдем дальше и воспользуемся более гуманными средствами а именно AOP и IOC (что это такое и с чем его едят вы можете почитать в интернете, потому не вижу смысла описывать это здесь)


( Читать дальше )
  • +2
  • 26 апреля 2011, 11:50
  • Hill
  • 2+2

Реализация кэширования средствами Unity

При разработке любого высоконагруженного приложения рано или поздно встаёт вопрос кэширования данных. Ведь практически всегда есть часть информации которая изменяется достаточно редко и используется в качестве справочной. Постоянно запрашивать такую информацию из БД достаточно накладно, да и по большому счёту бессмысленно.
Наступил момент, когда и я при разработке такого высоконагруженного приложения столкнулся с этой проблемой. И решил её достаточно просто и безболезненно с помощью Unity Application Block.


( Читать дальше )

Сокращаем часто используемый блок кода до одной строчки с помощью лямбда-выражений

Хочу рассказать о том, как сократить
try
{
  SomeObject.DoSomething();
}
catch (Exception ex)
{
  SomeExceptionHandlingFunction(ex);
}
до
ExecuteWithTryCatch(() => SomeObject.DoSomething());



( Читать дальше )