All streams
Search
Write a publication
Pull to refresh
6
0
Хохлов Игорь @pladar

Fullstack

Send message

Как готовить Cake, используя только Frosting

Reading time4 min
Views4.1K

Итак, Cake. Многие слышали, многие хотели попробовать, но откладывали. Конечно, если ты все время работал на TeamCity или на Jenkins и продолжаешь, то зачем переизобретать то, что уже отлично работает? Люби свою жизнь и радуйся. Но вот, допустим, в твоей любимой жизни появился новый проект, новый дедлайн, минимум сторипойнтов до релиза, а опыта с новым сборщиком нет? Мне в этом случае и пригодился Cake.

Я сразу оговорюсь, что эта статья не подтолкнет сразу на использование Cake, как меня, и многих моих коллег не подтолкнули статьи, которые выходили ранее. По большей части потому что на него нет смысла переходить в проекте, который не приносит боль и который работает стабильно. Собираете в своем любимом Jenkins и все идет нормально. Но пусть после этой статьи в голове отложится, что Cake существует. Он в очередной раз никуда не делся, он умеет уже многое и работать с ним все проще. Гораздо проще, чем было раньше.

На что похож Cake? Наверное, любой разработчик, не погрязший в мире .Net, найдет свою аналогию: gradle, gulp, golang make. Make-системы не откровение в 2020 году. Это всегда было удобно, а значит — нужно и правильно. Мир .Net долгое время был обделен такими средствами. Фактически был и есть до сих пор MSBuild, но у него есть очень-очень много недостатков. Основной - кто вообще умеет им пользоваться из рядовых разработчиков? И какова целесообразность его освоения? Какие-то базовые и нужные всем вещи явно проще делать на билд-сервере. Наверное, кому-то он и удобен, но я уверен, что значимая часть коммьюнити предпочтет MSBuild'у освоить новый билд-сервер. Один раз написать конфиг и забыть как страшный сон.

А что если бы существовала make-система с DSL на C#, автокомплитом и прочими фишками типизированного языка? Да, я про Cake. В частности сейчас пойдет разговор про библиотеку Cake.Frosting, являющуюся одним из раннеров make-системы.

Подробней про доступные раннеры можно прочитать тут: Cake Runners

С Frosting все привычно — самодокументирующийся Api с которым почти сразу находишь общий язык. Методы расширения, загружаемые из Nuget — на любой случай жизни, структура проекта, похожая на смесь тестов или бенчмарков и хоста Asp. Все решения угадываются сразу, все как дома.

Читать далее

Неудачная статья про ускорение рефлексии

Reading time7 min
Views8.3K
Сразу объясню название статьи. Изначально планировалось дать хороший, надежный совет по ускорению использования рефлекшена на простом, но реалистичном примере, однако в ходе бенчмаркинга выяснилось, что рефлексия работает не так медленно, как я думал, LINQ работает медленнее, чем снилось в кошмарах. А в итоге оказалось, что мной еще и была допущена ошибка в замерах… Подробности этой жизненной истории под катом и в комментариях. Так как пример достаточно бытовой и реализованный в принципе как обычно делается в энтерпрайзе, получилось достаточно интересная, как мне кажется, демонстрация жизни: влияния на скорость работы основного предмета статьи было не заметно из-за внешней логики: Moq, Autofac, EF Core и прочей «обвязки».
Читать дальше →

Мир платежного посредничества: практикум в волшебстве

Reading time11 min
Views1.4K
Как я и обещал в предыдущей статье «Введение в волшебный мир платежного посредничества» (ссылка будет под статьей), во второй части статьи я рассмотрю способы разрешения кризиса рынка посреднических услуг и некоторые особенности продаж сложного информационного продукта. Возможно, он будет интересен не только дистрибьюторам/агрегаторам и банкам, но и просто специалистам в сфере продаж.

Итак, мы остановились на небольших изменениях блока ЛПР в нашем сценарии (Я рассмотрю одно из направлений). Изначально менеджеру предлагалось выходить на SPIN, используя такие вопросы:
Читать дальше →

Введение в волшебный мир платежного посредничества

Reading time8 min
Views5K
Сразу сообщу, что я планирую статью в двух частях. В первой части планирую коснуться темы нынешнего развития рынка посредничества в сфере банковских, платежных и процессинговых услуг, а так же причины неудач на нем. Несмотря на то, что намерен быть полностью нейтральным, сразу оговорюсь о возможной оценочности статьи, так как с опытом приходит и личное отношение к теме. В любом случае, я буду предлагать именно те механизмы развития, которые, по моему опыту, будут эффективны, а так же постараюсь рассказать, почему считаю не эффективными другие.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity