|
rss_habr
[Перевод] Грокаем TraversableПятница, 03 Февраля 2023 г. 12:30 (ссылка)
Грокнув Traversable, вы удивитесь, как вы вообще раньше жили без него. Попытки понять Traversable просто глядя на сигнатуру типа никогда не доставляли мне особого удовольствия. Поэтому, в этом посте мы используем другой подход и сами придумаем его в процессе решения реальной задачи. Так мы прочувствуем момент осознания, когда наконец поймем, как он работает, и где его можно применять. Читать далееhttps://habr.com/ru/post/714532/?utm_source=habrahabr&utm_medium=rss&utm_campaign=714532
rss_habr
[Перевод] Грокаем TraversableПятница, 03 Февраля 2023 г. 12:30 (ссылка)
Грокнув Traversable, вы удивитесь, как вы вообще раньше жили без него. Попытки понять Traversable просто глядя на сигнатуру типа никогда не доставляли мне особого удовольствия. Поэтому, в этом посте мы используем другой подход и сами придумаем его в процессе решения реальной задачи. Так мы прочувствуем момент осознания, когда наконец поймем, как он работает, и где его можно применять. Читать далееhttps://habr.com/ru/post/714532/?utm_source=habrahabr&utm_medium=rss&utm_campaign=714532
rss_habr
История одного соседаВторник, 31 Января 2023 г. 15:54 (ссылка)
Приветствую всяк смотрящий на моем первом посте на хабре. Очень долго я шел к тому чтоб решиться написать свой неинтересный рассказ и разместить его тут. И да. это очередной пост о том как кто-то написал скучного бота. Но я получил опыт, который возможно пригодится мне когда-то. Поэтому хотелось бы закрепить. Я расскажу об этапах создания некоторого функционала, идей и с чем я столкнулся и что я узнал не из интернета, а на своём опыте. Возможно кому-то будет полезно. Однажды, зайдя в чат дома между катками доты, я увидел бота который дает возможность кикать пользователей путем голосования в чате. Нехитрое изобретение, я решил повторить и тогда я впервые познакомился с Telegram Bot API. В частности с библиотекой telebot. И тут первое что хотел бы отметить. На момент написания того самого первого бота, в данной библиотеке использовалась функция polling(), для поддержки бота в сети при простое. Однако она была не идеальной и через буквально 10 минут простоя бот всё же полностью терял соединение и не принимал запросы. На тот момент решением стало вот такая вещь... Читать далееhttps://habr.com/ru/post/713968/?utm_source=habrahabr&utm_medium=rss&utm_campaign=713968
rss_habr
[Перевод] Функциональное мышлениеПонедельник, 23 Января 2023 г. 15:32 (ссылка)TL;DR: Конструирование приложения с чистой функцией в основе может стать первым шагом к идеалу «функционально-центричной императивной оболочки», что может упростить тестирование приложения и снизить планку его сложности. Читать дальше → https://habr.com/ru/post/711848/?utm_source=habrahabr&utm_medium=rss&utm_campaign=711848
rss_habr
[Перевод] Функциональное мышлениеПонедельник, 23 Января 2023 г. 15:32 (ссылка)TL;DR: Конструирование приложения с чистой функцией в основе может стать первым шагом к идеалу «функционально-центричной императивной оболочки», что может упростить тестирование приложения и снизить планку его сложности. Читать дальше → https://habr.com/ru/post/711848/?utm_source=habrahabr&utm_medium=rss&utm_campaign=711848
rss_habr
[Перевод] Грокаем валидацию при помощи аппликативного функтораПонедельник, 09 Января 2023 г. 12:00 (ссылка)
В предыдущем посте мы открыли Аппликативный функтор, а если точнее, изобрели функцию https://habr.com/ru/post/709376/?utm_source=habrahabr&utm_medium=rss&utm_campaign=709376
rss_habr
[Перевод] Грокаем валидацию при помощи аппликативного функтораПонедельник, 09 Января 2023 г. 12:00 (ссылка)
В предыдущем посте мы открыли Аппликативный функтор, а если точнее, изобрели функцию https://habr.com/ru/post/709376/?utm_source=habrahabr&utm_medium=rss&utm_campaign=709376
rss_habr
[Перевод] Квазицитирование в LispСреда, 04 Января 2023 г. 19:58 (ссылка)
АннотацияКвазицитирование (quasiquotation) — это технология, обычно используемая в Lisp для создания программ, генерирующих другие программы. В статье объясняется механизм работы квазицитирования, поясняется почему он работает именно так и каковы его ограничения, а также даётся экскурс в историю квазицитирования. Читать дальше →https://habr.com/ru/post/709106/?utm_source=habrahabr&utm_medium=rss&utm_campaign=709106
rss_habr
[Перевод] Грокаем аппликативные функторыПятница, 23 Декабря 2022 г. 12:06 (ссылка)
Аппликативный функтор, возможно, наименее известный брат монады, но он столь же важен и решает похожую проблему. В этом посте мы постараемся разобраться, что он из себя представляет. Читать далееhttps://habr.com/ru/post/707294/?utm_source=habrahabr&utm_medium=rss&utm_campaign=707294
rss_habr
[Перевод] Грокаем аппликативные функторыПятница, 23 Декабря 2022 г. 12:06 (ссылка)
Аппликативный функтор, возможно, наименее известный брат монады, но он столь же важен и решает похожую проблему. В этом посте мы постараемся разобраться, что он из себя представляет. Читать далееhttps://habr.com/ru/post/707294/?utm_source=habrahabr&utm_medium=rss&utm_campaign=707294
rss_habr
Полурешётки и законы МерфиВоскресенье, 18 Декабря 2022 г. 18:32 (ссылка)
Программист обязательно ставит на тумбочку у кровати два стакана: один полный, на случай, если он проснётся и захочет пить, а другой пустой — вдруг он не захочет. Так гласит известный анекдот. Но в реальной жизни часто работают законы Мерфи, и предусмотренные планы рушатся. Что же делать программисту на случай, если он проснётся и не поймёт, хочет он пить или нет Читать далееhttps://habr.com/ru/post/706162/?utm_source=habrahabr&utm_medium=rss&utm_campaign=706162
rss_habr
Дженерики в Go: когда нужны и когда можно без нихЧетверг, 27 Октября 2022 г. 11:27 (ссылка)
Много раз при обсуждении преимуществ и прелестей Go, как языка разработки, мне приходилось слышать что-то вроде «у вас даже нет дженериков» или «вот завезут дженерики, тогда и поговорим». Так вот, дженерики завезли, давайте посмотрим что из этого вышло. Меня зовут Павел Грязнов. Я уже несколько лет пишу на Go в прод, хотя знакомство с языком начал с самых ранних версий. Видел как Garbage Collector мог сделать stop the world на пару секунд, страдал от отсутствия системы зависимостей и других проблем. В этой статье я расскажу о дженериках в Go. Начнём с самых основ, продолжим более продвинутыми примерами и закончим бенчмарками. Чтобы лучше показать работу дженериков на контрасте, я сравню примеры их использования на двух языках — Python и Go. C Python последний раз работал слишком давно, поэтому вторую часть доклада мне помогли сделать коллеги из Evrone. Пойдем по порядку: разберем, для чего нужны дженерики и какие задачи они решают. Посмотрим, как выглядит мир без дженериков, на их синтаксис, ограничения, бенчмарки и немного затронем функциональное программирование. Читать далееhttps://habr.com/ru/post/695400/?utm_source=habrahabr&utm_medium=rss&utm_campaign=695400
rss_habr
[Перевод] Можно ли считать DateTimeImmutable примитивным типом?Четверг, 13 Октября 2022 г. 11:31 (ссылка)
В рамках последнего семинара мы обсуждали концепцию DTO (Data Transfer Object). Главная особенность DTO заключается в том, что они содержат значения исключительно примитивных типов (строки, целые числа, логические значения), списки или ассоциативные массивы с такими значениями, включая и «вложенные» DTO. Я не могу точно сказать, кто придумал эту идею, но я использую ее, потому что она делает DTO структурами данных, которые энфорсят только схему заключенных в них значений (имена полей, ожидаемые типы, обязательные и необязательные поля), оставляя их семантику в покое. Это позволяет нам создавать DTO из любого источника данных, например из значений, полученных из формы ввода двнных, аргументов командной строки, JSON, XML, Yaml и т. д. Использование примитивных значений в DTO является наглядной демонстрацией того, что эти значения не валидируются. DTO просто используется для передачи или переноса данных с одного слоя в другой. И вот в этом контексте во время семинара у нас возник вопрос: можем ли мы считать Мне кажется, что это достаточно интересный вопрос для разбора. Хочется сразу ответить «нет», но почему? Как нам понять, удовлетворяет ли что-либо наш предикат? Для начала мы должны определить сам предикат. Когда мы оперируем абстрактными формулировками, то этот первый шаг вполне очевиден, но при обсуждении конкретных вопросов часто неясно, что разговор должен начинаться с определений; нам так не терпится сразу же перейти к ответу! Итак, чтобы ответить на это вопрос, нам для начала нужно определить, что является значением примитивного типа. Читать далееhttps://habr.com/ru/post/693012/?utm_source=habrahabr&utm_medium=rss&utm_campaign=693012
rss_habr
Как работать из PyCharm community c CSSЧетверг, 06 Октября 2022 г. 16:05 (ссылка)
Я только начинаю свой путь, как в веб-разработке, так и в программировании в принципе, с ответом на этот вопрос мучился 2 дня и казалось бы перепробовал все, НО как это обычно бывает, решение лежало на поверхности. P.S. Могу путаться в терминах в силу своей неопытности, прошу строго не судить. Всегда рад конструктивной обратной связи, спасибо за понимание! Да, я знаю о существовании Django, просто начинать как мне кажется лучше с голого кода и дальше с базовыми знаниями переходить к изучению этого прекрасного фреймворка. Читать далееhttps://habr.com/ru/post/691892/?utm_source=habrahabr&utm_medium=rss&utm_campaign=691892
rss_habr
Обработка исключений в Java в функциональном стиле. Часть 2Вторник, 13 Сентября 2022 г. 11:35 (ссылка)
Обработка исключений в Java в функциональном стиле. Часть 2.В предыдущей статье была рассмотрена функциональная обработка исключений с помощью интерфейса В данной статье автор продолжит тему и рассмотрит простую и "грамотную" (literate) обработку исключений при помощи функций высшего порядка без использования каких либо внешних зависимостей и сторонних библиотек. Читать дальше →https://habr.com/ru/post/687954/?utm_source=habrahabr&utm_medium=rss&utm_campaign=687954
rss_habr
Обработка исключений в Java в функциональном стиле. Часть 2Вторник, 13 Сентября 2022 г. 11:35 (ссылка)
Обработка исключений в Java в функциональном стиле. Часть 2.В предыдущей статье была рассмотрена функциональная обработка исключений с помощью интерфейса В данной статье автор продолжит тему и рассмотрит простую и "грамотную" (literate) обработку исключений при помощи функций высшего порядка без использования каких либо внешних зависимостей и сторонних библиотек. Читать дальше →https://habr.com/ru/post/687954/?utm_source=habrahabr&utm_medium=rss&utm_campaign=687954
rss_habr
[Перевод] Грокаем функторыВторник, 06 Сентября 2022 г. 19:14 (ссылка)
Это перевод статьи из целого цикла постов "Грокаем функциональное программирование" Мэта Торнтона. Я позволил себе немного поменять порядок постов. В оригинале, функторы идут после монад, что мне показалось неверным. Всякая монада - это функтор, но не всякий функтор - это монада. Также я убрал дублирование из поста про монады и добавил необходимые пояснения. Мне нравится практическая направленность материала. Он довольно подробно останавливается на базовых вещах, так что скорее предназначен для тех, кто только знакомится с функциональным программированием. В этом посте мы постараемся разобраться, что такое функтор собственноручно переизобретая его на рабочем примере. Читать далееhttps://habr.com/ru/post/686768/?utm_source=habrahabr&utm_medium=rss&utm_campaign=686768
rss_habr
[Перевод] Грокаем функторыВторник, 06 Сентября 2022 г. 19:14 (ссылка)
Это перевод статьи из целого цикла постов "Грокаем функциональное программирование" Мэта Торнтона. Я позволил себе немного поменять порядок постов. В оригинале, функторы идут после монад, что мне показалось неверным. Всякая монада - это функтор, но не всякий функтор - это монада. Также я убрал дублирование из поста про монады и добавил необходимые пояснения. Мне нравится практическая направленность материала. Он довольно подробно останавливается на базовых вещах, так что скорее предназначен для тех, кто только знакомится с функциональным программированием. В этом посте мы постараемся разобраться, что такое функтор собственноручно переизобретая его на рабочем примере. Читать далееhttps://habr.com/ru/post/686768/?utm_source=habrahabr&utm_medium=rss&utm_campaign=686768
rss_habr
[Перевод] Грокаем монады императивноПятница, 26 Августа 2022 г. 14:48 (ссылка)
В предыдущем посте мы переизобрели Монаду на рабочем примере. У нас получился базовый механизм в виде функции https://habr.com/ru/post/684820/?utm_source=habrahabr&utm_medium=rss&utm_campaign=684820
|
LiveInternet.Ru |
Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат О проекте: помощь|контакты|разместить рекламу|версия для pda |