C# 5.0

Уже не так много времени осталось до массового распространение C# 5.0. Действительно Microsoft постаралась на славу. Но успех не приходит сам по себе. Мощь языка росла с каждой новой версией.

Вспомним как происходило развитием C#:

  • C# 1.0 Managed Code
  • C# 2.0 Iterators, Generic, Anonymous
  • C# 3.0 Linq, Lambda
  • C# 4.0 Dynamic, PLINQ
Сразу возникает вопрос а зачем это нужно, есть же многопоточность.Мощнейшим оружием C# 5.0 будет — асинхронность на уровне языка.
Асинхронность делает код проще, избавляя программиста от сложных ошибок межпоточного взаимодействия, что несомненно является большим плюсом. Но без недостатков также не обошлось =) Асинхронный код не будет использовать все ядра вашего процессора, так как вся работа происходит в одном потоке.

Microsoft уже прилагала усилия по упрощению асинхронного программирования, и это привело к появлению библиотеки Reactive Extensions. Rx — фантастическое решение =) для работы с событиями и прочими асинхронными штучками.

С момента появления Rx уже прошло достаточно времени, и так как сам являюсь активным пользователем Rx, могу с сказать, что Rx стабилен 😉
Все ждем release С# 5.0, вместе с которым мы получим в свои руки всю мощь async на уровне языка =) Нетерпеливые могут скачать async CTP, сам уже ставил, вполне работоспособно )) На MSDN blogs уже большое количество примеров по использованию async, так что «Вперед и с песней» 😉

Comments