Функциональное программирование для C# разработчиков

Зал 1 | 13:30

RU

Функциональное программирование (ФП) набирает популярность с каждым днем. Тут и там выходят новые библиотеки, фреймворки и языки, вдохновленные функциональными концепциями. Все больше программистов начинает ценить неизменяемое состояние и чистые функции, простую и удобную композицию конструкций и компилятор, находящий львиную долю ошибок еще до запуска приложения. Язык C# с каждым годом вбирает в себя новые идеи из мира ФП. Мы уже привыкли к удобному Linq и к передаче функций как параметров. А иногда C# и сам становится колыбелью новых идей, например, Reactive Extensions (спасибо Эрику Мейеру). Интересно, какие еще ФП конструкции можно было бы использовать в C#? Об этом мы и поговорим в ходе доклада, «Функциональное программирование для С# разработчиков». Заодно узнаем, как обрабатывать ошибки в ФП стиле, как избавиться от Null Reference Exception, как еще можно использовать Linq и многое другое. Приходите, будет интересно.


Николай Гусев
Николай Гусев

Deutsche Bank

Увлекался программированием на С++ в институте, в дальнейшем переквалифицировался в программиста C#. С 2008 года работал в компании IBS ведущим frontend/backend-разработчиком корпоративного Sharepoint портала (о, эта разработка под Sharepoint 2007). В то же время заинтересовался темой культуры написания кода. От безысходности написал свой домашний Linq-провайдер для доступа к данным, хранящимся в Sharepoint-списках. Затем перешел в компанию ДРАГА, где разрабатывал систему проведения собраний акционеров для крупнейших акционерных обществ РФ, таких как Газпром, Мосэнерго и т.д. Также был full-stack разработчиком, использовал ASP.MVC, WPF, WCF, TypeScript. Одновременно начал изучать F# и функциональное программирование, воодушевившись на тот момент новыми для него концепциями, способными сделать код проще, чище и понятнее. В Дойче Банке начал работать с 2015 года, разрабатывает trading UI на основе in-house WPF-фреймворков. Во время написания программ увлекся идеей переноса опыта и полезных концепций из языка F# в C#.


Все доклады