Функциональное программирование в Android. Побочные эффекты и ELM-архитектура

В финальной статье цикла про функциональное программирование в Android мы соберём знания, полученные в предыдущих частях. И, конечно, применим их на практике — соберём скелет приложения для медитации. Практиковаться будем не на ViewModel, а на The Elm Architecture — это паттерн управления состоянием, заимствованный из функционального языка Elm . Заодно узнаем об этом паттерне побольше, разобрав суть его ключевых компонентов. В общем, погнали!

https://habr.com/ru/companies/dododev/articles/927100/

#android #функциональное_программирование #мобильная_разработка #андроид_разработка #архитектура_androidприложений #android_apps #kotlin #побочные_эффекты #elm #чистые_функции

Функциональное программирование в Android. Побочные эффекты и ELM-архитектура

О чём статья В четвёртой статье цикла про функциональное программирование в Android мы соберём знания, полученные в предыдущих частях цикла. А ещё применим их на практике — соберём скелет приложения...

Хабр

Про архитектуру приложений для тех кому мало Чистой архитектуры

Помню, когда я был джуном и даже миддлом, меня очень волновал вопрос: как же должна выглядеть структура приложения по умным книжкам и всяким бест-практисам. На тот момент я уже повидал разные варианты архитектур, и все они выглядели корявыми, нелогичными, возникшими спонтанно из чьих-то костылей. Лет пять назад я обнаружил для себя Чистую архитектуру Дяди Боба и на некоторое время успокоился, пока поток новых источников постепенно не начал менять мое отношение и к этой книге. Но, если вы решили для себя, что Чистая архитектура - это ваш окончательный выбор, то я точно не буду вас отговаривать, потому что, на мой взгляд, это однозначно лучше, чем, наверное, 90% того, что вам встретится на рынке. Впрочем, эта статья для тех, кому этого не достаточно: для тех, кто хочет глубже понимать эволюцию мысли в области дизайна приложений, основные вызовы и идеи. Раньше мы в 3 частях [ 1 , 2 , 3 ] пробежались по основным идеям архитектуры систем. Поэтому, если вы ищете информацию по System Design, микросервисам и топологии команд, то вам туда. Эта же статья про архитектуру внутри кодовой базы: она посвящена концепциям программирования, влияющим на структуру приложения, поэтому описывает не только архитектурные подходы, но и иные идеи, оставляющие на дизайне свой отпечаток.

https://habr.com/ru/articles/931866/

#ООП #функциональное_программирование #рефакторинг #гексагональная_архитектура #шаблоны_проектирования #структурный_дизайн #yagni #domaindriven_design

Про архитектуру приложений для тех кому мало Чистой архитектуры

Помню, когда я был джуном и даже миддлом, меня очень волновал вопрос: как же должна выглядеть структура приложения по умным книжкам и всяким бест-практисам. На тот момент я уже повидал разные варианты...

Хабр

Продвинутое использование препроцессора C/C++

Зачастую, в проектах ограничивается использование препроцессора по следующим причинам: — Он не похож на весь остальной язык; — Макросы могут возвращать неполные синтаксические конструкции, или вовсе различные, в зависимости от параметров. Ввиду перечисленных особенностей, читать код с активным использованием препроцессора зачастую становится на порядок сложнее кода без него. Со всеми его недостатками, инструмент есть в языке и достоин изучения.

https://habr.com/ru/companies/timeweb/articles/928598/

#препроцессор #c_language #макросы #метапрограммирование #c++ #C #ненормальное_программирование #функциональное_программирование #timeweb_статьи

Продвинутое использование препроцессора C/C++

Зачастую, в проектах ограничивается использование препроцессора по следующим причинам: Он не похож на весь остальной язык Макросы могут возвращать неполные синтаксические конструкции, или вовсе...

Хабр

Путешествие в мир функционального программирования: как я провела курс студентам

Привет! Меня зовут Ксюша, я работаю бэкенд-разработчиком на C# в Контуре. В весеннем семестре я провела курс по функциональному программированию на Haskell для студентов 3 и 4 курса направления ФИИТ (фундаментальная информатика и информационные технологии) в УрФУ и хочу поделиться своим опытом организации и проведения курса.

https://habr.com/ru/companies/skbkontur/articles/927814/

#преподавание #функциональное_программирование #haskell #фп #студенты #студенты_в_it

Путешествие в мир функционального программирования: как я провела курс студентам

Привет! Меня зовут Ксюша, я работаю бэкенд-разработчиком на C# в Контуре. В весеннем семестре я провела курс по функциональному программированию на Haskell для студентов 3 и 4 курса направления ФИИТ...

Хабр

Категории типов. Часть 1. Hom-типы

Данный обзор посвящён применению теории категорий в программировании. Акцент сделан на то, что стремление к повышению качества программ неизбежно приводит к абстракциям («функтор», «монада» и прочие), которые уже появились в математике при решении другого рода задач. В этой части будет рассказано об основных свойствах категорий, приведены примеры наиболее важных для дальнейшего изложения. Но сразу предупреждаю, что это лишь «скучное введение» — полезность представленных здесь сведений раскроется лишь в последующих частях обзора.

https://habr.com/ru/articles/929144/

#Теория_категорий #морфизмы #scala #функциональное_программирование #композиция

Категории типов. Часть 1. Hom-типы

Предисловие Я много лет программировал на C# — популярном объектно-ориентированном языке программирования. Изучил ООП-шные паттерны, детально разобрал SOLID и другие принципы разработки. Успешно...

Хабр

От Аристотеля до Тьюринга: что такое функциональное программирование и как оно облегчает жизнь

Привет, меня зовут Марат Зимнуров, я тимлид в кросс-функциональной команде HR Admin Tech Авито . Тема функционального программирования не обделена вниманием — и все же тяжело найти действительно понятный и структурно изложенный разбор данного инструмента. Нет нормального гайда для старта — ни у нас, ни на Западе. Многие говорят про иммутабельность и монады, но путаются в основах. В статье разбираю, что такое функциональное программирование на самом деле и зачем оно нужно.

https://habr.com/ru/companies/avito/articles/926544/

#функциональное_программирование #функциональщина #ненормальное_программирование #теория #теория_категорий #философия_программирования #философия_разработки

От Аристотеля до Тьюринга: что такое функциональное программирование и как оно облегчает жизнь

Привет, меня зовут Марат Зимнуров и я тимлид в кросс-функциональной команде HR Admin Tech Авито . Наверняка, вы уже сталкивались с термином «функциональное программирование» (ФП) . Если посмотреть на...

Хабр

Функциональный стиль: объясняю как другу

"Функциональное программирование", "Immutable значения", "Pure функции". Тоже слышал эти умные слова? И ты такой: " Что? Можно просто for написать? " Спокойно. Сейчас все разложим по полочкам. Даже если ты пишешь var a = 1 и гордишься этим - ты свой. Погнали.

https://habr.com/ru/articles/926900/

#функциональное_программирование #начинающие_программисты #начинающий_разработчик #код #принципы_программирования #парадигма_программирования #swift #swiftui #пиарюсь

Функциональный стиль: объясняю как другу

Читай, наслаждайся, не душни! "Функциональное программирование", "Immutable значения", "Pure функции". Тоже слышал эти умные слова? И ты такой: " Что? Можно просто for написать? " Спокойно. Сейчас все...

Хабр

Функциональное программирование в Android. Теория категорий и DI

Кульминация цикла о функциональщине в Android! Сегодня изучаем чистые функции — ещё один важный принцип функционального программирования. Учтём контекст и познакомимся с сопутствующими терминами, раскрывающими суть чистых функций. А ещё обсудим место концепции Dependencies Injection в функциональном программировании. В общем, вперёд за новыми знаниями!

https://habr.com/ru/companies/dododev/articles/922710/

#android #функциональное_программирование #теория_категорий #каррирование #частичное_применение #монада #функторы #kotlin #мобильная_разработка #closure

Функциональное программирование в Android. Теория категорий и DI

О чём статья Сегодня говорим об одном из принципов функционального программирования — чистых функциях. Познакомимся с сопутствующими терминами, раскрывающими суть принципа, и обсудим место концепции...

Хабр

Функциональное программирование в Android. Cтруктуры данных и State Machine

Продолжаем погружение в мир функционального программирования! Тема новой статьи — функциональные типы данных и их структуры. Из неё вы подробнее узнаете о принципе неизменности данных, о понятии State Machine и о способах его применения в программировании. А ещё мы исследуем функциональную библиотеку Kotlin Arrow, обсудим поддержку Null , поток данных и функциональную обработку ошибок, а также начнём проектировать Data и Domain слои демонстрационного приложения. В общем, скучать не придётся!

https://habr.com/ru/companies/dododev/articles/917960/

#android #функциональное_программирование #мобильная_разработка #андроид_разработка #архитектура_androidприложений #android_apps #android_приложения #state_machine #kotlin

Функциональное программирование в Android. Cтруктуры данных и State Machine

О чём статья В первой части статьи я рассказал о своём знакомстве с функциональным программированием и о сути этой парадигмы. Сегодня вы узнаете о функциональных типах данных и их структурах. Мы:...

Хабр

Функциональное программирование в Android. Знакомство с парадигмой

Расширяем кругозор. Слышали про парадигму функционального программирования? Если вы iOS-разработчик, то, наверное, да, а если вы Android-разработчик, то, скорее всего, нет. Пришло время это исправить. Привет! Меня зовут Женя Бондарев. И сегодня мы поговорим о теории функционального программирования, её особенностях и о том, что она может дать вашему Android-приложению. А ещё начнём писать pet-проект на функциональной архитектуре. Поехали!

https://habr.com/ru/companies/dododev/articles/917222/

#android #функциональное_программирование #мобильная_разработка #андроид_разработка #архитектура_androidприложений

Функциональное программирование в Android. Знакомство с парадигмой

О чём статья? Мир программирования быстро меняется. Возможно, скоро свою нишу в нём займёт и не особо популярная в кругах Android-разработчиков парадигма функционального программирования. Знания о ней...

Хабр