Vladislav
они просто за шаблонизатор взяли C# разор
Vladislav
cshtml который
Romɑn
Have a SAFE trip to F#
Будет статья? Можем сразу перевести, Хабр ничего не знает о SAFE, хватит это терпеть
Hog
Hog
Переводить, кстати, не потребуется - статью (если решусь) могу сразу по-русски писать :)
Hog
Romɑn
Nikolay
А в rider'e есть code lens для F#?
Nikolay
Или как оно называется
Vladislav
Bonart
Hog
Hog
Hog
Не помогает :(
Hog
Ayrat
Никто не замечал что fsautocomplete.exe течет?
Через пару часов начинает выедать оперативу и проц
Ayrat
Это вскод
Hog
Это вскод
Хм... я несколько дней не перезапускался - утром на работе гляну. Тормозов вроде не замечал...
Vladyslav
x
с академической точки зрения домен не pure, конечно
x
в туториалах MS рекомендуют обьявлять интерфейсы репозиториев в домене, кстати. Я пока не знаю что лучше
Nikolay
Репозитории ужасны :)
Vladyslav
x
x
но это немного геморно на этапе разработки: вместо того чтобы фугануть весь интерфейс репозитория с ненужными методами (а также теми, которые что-то меняют в базе), нужно из каждого репозитория вписать нужные функции. Либо сразу результат запроса в виде коллекции или словаря
Vladyslav
а если нужны транзакции. есть способ увязать эти обращения? и это используется в домене?
x
так у тебя логика именно сложного апдейта где-то снаружи?
Vladyslav
не, у меня ничего нет) я теоретически спрашиваю)
x
ну если в общем, то я бы написал домен который применяет бизнеслогику, выплёвывает какой-то агрегат, а его сохранением уже занимаются края системы, где есть репозитории, юнит оф ворки и тому подобное
Vladyslav
а, например, если нужно создать уникального по мейлу пользователя
Vladyslav
домену что делать?
x
Func<string userMail, ICollection<string> existingUserMails, IUser created user> CreateUniqueUser
x
точнее возвращаться будет Option<IUser>
x
если он есть ) я в C# сижу, у меня всё самодельное
Doge
x
эксепшенов стараюсь не бросать из бизнес логики
x
ну или что там есть
Doge
x
никак, мы живём в неидеальном мире )
x
ну хотя может есть какой-то ответ, просто я не знаю
x
о, а расскажи
Vladyslav
Vasily
Чую,ща в бой комонадки пойдут
Doge
о, а расскажи
На меня опять тут набросятся, конечно же, но вот из того, что сработает в F# - есть Free монады всегда.
x
вроде есть. А можно какой-то минимальный пример? с тем же уникальным емейлом по миллиардам записей
Vasily
С комонадами тема в том, что хранится не запись,а контекст ее получения
Vasily
И это, кстати, открывает некоторые возможности
Vasily
Надо Ivan саммонить
Vasily
Ну не так немного
Nikolay
monads
Vladislav
M o n a d s
Vasily
По факту у тебя есть контекст, откуда надо получить значение, и правило, как его вытащить
Vasily
Плюс lazy ячейка для знания
Vasily
Значения
Vasily
Т.е. в памяти ты хранишь не объект, а путь к нему
Vladyslav
а с контекстом если ли гарантия, что можно сделать все те же манипуляции с базой как и без этих исхищрений
Vasily
Вопроса не понял
Doge
Vladyslav
источник данных не будет ли проблемой в реализации такой фишки
Vasily
Vasily
Vladyslav
а я не знаю) чисто вопрос)
Vasily
Ну ты сформулируй опасения
Vladyslav
транзакции