SlideShare a Scribd company logo
1 of 46
Роман Неволин
В поисках парадигмы
Парадигма – это…
Парадигма — это ключевая идея,
лежащая в основе построения чего-либо
Парадигма программирования —
это совокупность идей и понятий,
определяющих подход к
программированию
Patterns
Стадии принятия функционального
программирования
• Что это за чушь?
Стадии принятия функционального
программирования
• Что это за чушь?
• ЧТО ЭТО ЗА ЧУШЬ?
Стадии принятия функционального
программирования
• Что это за чушь?
• ЧТО ЭТО ЗА ЧУШЬ?
• А вот это выглядит интересно…
Стадии принятия функционального
программирования
• Что это за чушь?
• ЧТО ЭТО ЗА ЧУШЬ?
• А вот это выглядит интересно…
• Хм, а вроде не так и сложно
Стадии принятия функционального
программирования
• Что это за чушь?
• ЧТО ЭТО ЗА ЧУШЬ?
• А вот это выглядит интересно…
• Хм, а вроде не так и сложно
• ГОСПОДИ, ПОЧЕМУ ВСЕ НЕ ПИШУТ
ФУНКЦИОНАЛЬНО?!
Функциоз (от анг. function, функция) –
паталогическое желание решать любую
задачу в функциональном стиле,
сопровождающееся непреодолимой
потребностью удовлетворить это
желание
Программирование – это решение реальных задач
Реальные задачи редко живут в рамках одной
парадигмы
Вы постоянно пишете мультипарадигменный код
Глупо оставаться в рамках одной парадигмы
Глупо оставаться в рамках одной парадигмы
Вы все равно используете другие парадигмы,
просто делаете это неумело
Расширяйте свою область
знаний, изучайте новые
подходы.
Спасибо!

More Related Content

Viewers also liked

BYOC: Build Your Own Community
BYOC: Build Your Own CommunityBYOC: Build Your Own Community
BYOC: Build Your Own CommunityInterLibNet
 
Prezentare Electromecanica1
Prezentare Electromecanica1Prezentare Electromecanica1
Prezentare Electromecanica1Adam Kis
 
Setton et al. - 2015 - Identifying potential exposure reduction priorities us...
Setton et al. - 2015 - Identifying potential exposure reduction priorities us...Setton et al. - 2015 - Identifying potential exposure reduction priorities us...
Setton et al. - 2015 - Identifying potential exposure reduction priorities us...Anders Erickson
 
Cataleg productos gastronomics jornades catalunya sicilia provisional
Cataleg productos gastronomics jornades catalunya sicilia provisionalCataleg productos gastronomics jornades catalunya sicilia provisional
Cataleg productos gastronomics jornades catalunya sicilia provisionalAssociació Catalunya-Sicilia
 
Ucisa 16 Order & Chaos
Ucisa 16 Order & ChaosUcisa 16 Order & Chaos
Ucisa 16 Order & ChaosJim Nottingham
 
Cpcd project december 2015
Cpcd project december 2015Cpcd project december 2015
Cpcd project december 2015Binu Prasad
 
Chapitre 24: III. Le pardon de la particularité
Chapitre 24: III. Le pardon de la particularité Chapitre 24: III. Le pardon de la particularité
Chapitre 24: III. Le pardon de la particularité Pierrot Caron
 
Josefina aldecoa historia de una maestra
Josefina aldecoa historia de una maestraJosefina aldecoa historia de una maestra
Josefina aldecoa historia de una maestraolgacarmincarmin
 
Apresentação 3 março 2012
Apresentação 3 março 2012Apresentação 3 março 2012
Apresentação 3 março 2012Raquel Pereira
 
14 Fevereiro 2012
14 Fevereiro 201214 Fevereiro 2012
14 Fevereiro 2012veraestagio
 
Apresentação 27 fevereiro 2012
Apresentação 27 fevereiro 2012Apresentação 27 fevereiro 2012
Apresentação 27 fevereiro 2012Raquel Pereira
 

Viewers also liked (19)

BYOC: Build Your Own Community
BYOC: Build Your Own CommunityBYOC: Build Your Own Community
BYOC: Build Your Own Community
 
Prezentare Electromecanica1
Prezentare Electromecanica1Prezentare Electromecanica1
Prezentare Electromecanica1
 
IL "BAIL IN"
IL "BAIL IN"IL "BAIL IN"
IL "BAIL IN"
 
Setton et al. - 2015 - Identifying potential exposure reduction priorities us...
Setton et al. - 2015 - Identifying potential exposure reduction priorities us...Setton et al. - 2015 - Identifying potential exposure reduction priorities us...
Setton et al. - 2015 - Identifying potential exposure reduction priorities us...
 
Fagen Exhibit Design
Fagen Exhibit DesignFagen Exhibit Design
Fagen Exhibit Design
 
Cataleg productos gastronomics jornades catalunya sicilia provisional
Cataleg productos gastronomics jornades catalunya sicilia provisionalCataleg productos gastronomics jornades catalunya sicilia provisional
Cataleg productos gastronomics jornades catalunya sicilia provisional
 
Ucisa 16 Order & Chaos
Ucisa 16 Order & ChaosUcisa 16 Order & Chaos
Ucisa 16 Order & Chaos
 
Image
ImageImage
Image
 
Madre gestante
Madre gestanteMadre gestante
Madre gestante
 
Cpcd project december 2015
Cpcd project december 2015Cpcd project december 2015
Cpcd project december 2015
 
Chapitre 24: III. Le pardon de la particularité
Chapitre 24: III. Le pardon de la particularité Chapitre 24: III. Le pardon de la particularité
Chapitre 24: III. Le pardon de la particularité
 
Josefina aldecoa historia de una maestra
Josefina aldecoa historia de una maestraJosefina aldecoa historia de una maestra
Josefina aldecoa historia de una maestra
 
Apresentação 3 março 2012
Apresentação 3 março 2012Apresentação 3 março 2012
Apresentação 3 março 2012
 
14 Fevereiro 2012
14 Fevereiro 201214 Fevereiro 2012
14 Fevereiro 2012
 
Cuaderno guia observacion y planeamiento n 01
Cuaderno guia observacion y planeamiento n 01Cuaderno guia observacion y planeamiento n 01
Cuaderno guia observacion y planeamiento n 01
 
Apresentação 27 fevereiro 2012
Apresentação 27 fevereiro 2012Apresentação 27 fevereiro 2012
Apresentação 27 fevereiro 2012
 
Lesiones de tejidos duros
Lesiones de tejidos durosLesiones de tejidos duros
Lesiones de tejidos duros
 
Tejidos blandos
Tejidos blandosTejidos blandos
Tejidos blandos
 
Historia clinica
Historia clinicaHistoria clinica
Historia clinica
 

More from SpbDotNet Community

Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»
Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»
Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»SpbDotNet Community
 
Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»
Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»
Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»SpbDotNet Community
 
Константин Васильев «Fody против рутины»
Константин Васильев «Fody против рутины»Константин Васильев «Fody против рутины»
Константин Васильев «Fody против рутины»SpbDotNet Community
 
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...SpbDotNet Community
 
Слава Бобик «NancyFx для самых маленьких»
Слава Бобик «NancyFx для самых маленьких»Слава Бобик «NancyFx для самых маленьких»
Слава Бобик «NancyFx для самых маленьких»SpbDotNet Community
 
Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»
Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»
Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»SpbDotNet Community
 
Игорь Лабутин «Коллекционируем данные в .NET»
Игорь Лабутин «Коллекционируем данные в .NET»Игорь Лабутин «Коллекционируем данные в .NET»
Игорь Лабутин «Коллекционируем данные в .NET»SpbDotNet Community
 
Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»
Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»
Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»SpbDotNet Community
 
Артём Акуляков - F# for Data Analysis
Артём Акуляков - F# for Data AnalysisАртём Акуляков - F# for Data Analysis
Артём Акуляков - F# for Data AnalysisSpbDotNet Community
 
Анатолий Кулаков «The Metrix has you…»
Анатолий Кулаков «The Metrix has you…»Анатолий Кулаков «The Metrix has you…»
Анатолий Кулаков «The Metrix has you…»SpbDotNet Community
 
Роман Неволин «Провайдеры типов без боли и магии»
Роман Неволин «Провайдеры типов без боли и магии»Роман Неволин «Провайдеры типов без боли и магии»
Роман Неволин «Провайдеры типов без боли и магии»SpbDotNet Community
 
Дмитрий Верескун «Синтаксический сахар C#»
Дмитрий Верескун «Синтаксический сахар C#»Дмитрий Верескун «Синтаксический сахар C#»
Дмитрий Верескун «Синтаксический сахар C#»SpbDotNet Community
 
Александр Саитов «Основы профилирования и оптимизации приложений в .NET»
Александр Саитов «Основы профилирования и оптимизации приложений в .NET»Александр Саитов «Основы профилирования и оптимизации приложений в .NET»
Александр Саитов «Основы профилирования и оптимизации приложений в .NET»SpbDotNet Community
 
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»SpbDotNet Community
 
Алексей Мерсон «Domain Driven Design: профит малой кровью»
Алексей Мерсон «Domain Driven Design: профит малой кровью»Алексей Мерсон «Domain Driven Design: профит малой кровью»
Алексей Мерсон «Domain Driven Design: профит малой кровью»SpbDotNet Community
 
Егор Гришечко «Async/Await и всё, что вы боялись спросить»
Егор Гришечко «Async/Await и всё, что вы боялись спросить»Егор Гришечко «Async/Await и всё, что вы боялись спросить»
Егор Гришечко «Async/Await и всё, что вы боялись спросить»SpbDotNet Community
 
Михаил Щербаков «Что может быть проще: делегаты и события»
Михаил Щербаков «Что может быть проще: делегаты и события»Михаил Щербаков «Что может быть проще: делегаты и события»
Михаил Щербаков «Что может быть проще: делегаты и события»SpbDotNet Community
 
Никита Каменский «Есть ли жизнь с UWP?»
Никита Каменский «Есть ли жизнь с UWP?»Никита Каменский «Есть ли жизнь с UWP?»
Никита Каменский «Есть ли жизнь с UWP?»SpbDotNet Community
 
Александр Кугушев «Roslyn: очевидные неочевидности»
Александр Кугушев «Roslyn: очевидные неочевидности»Александр Кугушев «Roslyn: очевидные неочевидности»
Александр Кугушев «Roslyn: очевидные неочевидности»SpbDotNet Community
 
ДотаНетоЛогия: СПб 2017
ДотаНетоЛогия: СПб 2017ДотаНетоЛогия: СПб 2017
ДотаНетоЛогия: СПб 2017SpbDotNet Community
 

More from SpbDotNet Community (20)

Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»
Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»
Станислав Флусов «Sharing общих сборок между процессами и доменами в IIS»
 
Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»
Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»
Егор Гришечко «У вас найдётся минутка, чтобы поговорить о блокчейне?»
 
Константин Васильев «Fody против рутины»
Константин Васильев «Fody против рутины»Константин Васильев «Fody против рутины»
Константин Васильев «Fody против рутины»
 
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
 
Слава Бобик «NancyFx для самых маленьких»
Слава Бобик «NancyFx для самых маленьких»Слава Бобик «NancyFx для самых маленьких»
Слава Бобик «NancyFx для самых маленьких»
 
Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»
Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»
Иван Кожин «Saritasa Tools или ещё один подход к архитектуре приложения»
 
Игорь Лабутин «Коллекционируем данные в .NET»
Игорь Лабутин «Коллекционируем данные в .NET»Игорь Лабутин «Коллекционируем данные в .NET»
Игорь Лабутин «Коллекционируем данные в .NET»
 
Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»
Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»
Станислав Сидристый «Шаблон Lifetime: для сложного Disposing»
 
Артём Акуляков - F# for Data Analysis
Артём Акуляков - F# for Data AnalysisАртём Акуляков - F# for Data Analysis
Артём Акуляков - F# for Data Analysis
 
Анатолий Кулаков «The Metrix has you…»
Анатолий Кулаков «The Metrix has you…»Анатолий Кулаков «The Metrix has you…»
Анатолий Кулаков «The Metrix has you…»
 
Роман Неволин «Провайдеры типов без боли и магии»
Роман Неволин «Провайдеры типов без боли и магии»Роман Неволин «Провайдеры типов без боли и магии»
Роман Неволин «Провайдеры типов без боли и магии»
 
Дмитрий Верескун «Синтаксический сахар C#»
Дмитрий Верескун «Синтаксический сахар C#»Дмитрий Верескун «Синтаксический сахар C#»
Дмитрий Верескун «Синтаксический сахар C#»
 
Александр Саитов «Основы профилирования и оптимизации приложений в .NET»
Александр Саитов «Основы профилирования и оптимизации приложений в .NET»Александр Саитов «Основы профилирования и оптимизации приложений в .NET»
Александр Саитов «Основы профилирования и оптимизации приложений в .NET»
 
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
 
Алексей Мерсон «Domain Driven Design: профит малой кровью»
Алексей Мерсон «Domain Driven Design: профит малой кровью»Алексей Мерсон «Domain Driven Design: профит малой кровью»
Алексей Мерсон «Domain Driven Design: профит малой кровью»
 
Егор Гришечко «Async/Await и всё, что вы боялись спросить»
Егор Гришечко «Async/Await и всё, что вы боялись спросить»Егор Гришечко «Async/Await и всё, что вы боялись спросить»
Егор Гришечко «Async/Await и всё, что вы боялись спросить»
 
Михаил Щербаков «Что может быть проще: делегаты и события»
Михаил Щербаков «Что может быть проще: делегаты и события»Михаил Щербаков «Что может быть проще: делегаты и события»
Михаил Щербаков «Что может быть проще: делегаты и события»
 
Никита Каменский «Есть ли жизнь с UWP?»
Никита Каменский «Есть ли жизнь с UWP?»Никита Каменский «Есть ли жизнь с UWP?»
Никита Каменский «Есть ли жизнь с UWP?»
 
Александр Кугушев «Roslyn: очевидные неочевидности»
Александр Кугушев «Roslyn: очевидные неочевидности»Александр Кугушев «Roslyn: очевидные неочевидности»
Александр Кугушев «Roslyn: очевидные неочевидности»
 
ДотаНетоЛогия: СПб 2017
ДотаНетоЛогия: СПб 2017ДотаНетоЛогия: СПб 2017
ДотаНетоЛогия: СПб 2017
 

Роман Неволин «В поисках парадигмы»