Vladislav
ы
Ayrat
тут надо иметь в виду что во второй строчке стоят апострофы перед животными
Ayrat
это как раз та самая мега фича - превратить любой литерал в часть AST которое потом как-то динамически отдиспатчится на нужный идентификатор
Ayrat
чортова магия
habib
здесь обычный ' типа (cons 'x (cons 'y (cons 'z ()))) (list 'x 'y 'z) насколько я понял про животных а магия - это `
habib
или я что-то путаю
Ayrat
Да, я про кривой апостроф
Ayrat
Я хз как он правильно называется
habib
https://docs.racket-lang.org/reference/quasiquote.html
habib
квазиквот
Ayrat
Я имел в виду на русском)
Aleksandr
На русском это ё
Aleksandr
))0)
habib
)))
habib
квазицитирование
Roman
Запросы строками писать в 2019?
Уж лучше так. Все эти модные штуки дают буст в начале, но как только что-то хитрое надо сделать, или просто оптимизировать - проклинаешь все на свете
Roman
так как раз, когда надо сделать что то хитрое, берешь и юзаешь даппер.
К этому времени все на свете обычно пронизано абстракциями и зависимостями, характерными только для еф (на предыдущем проекте именно такая ситуация). Куча бойлерплейта написана, завязана на санный авто маппер, и приходишь ты со своим даппером и сосешь
Roman
Кровавый Энтерпрайз
Roman
Может быть луковая архитектура может от этого спасти, но пойди найди такой проект
Vasiliy
хмммм. есть такое. Ну у нас asp.net core. Там взял прокинул себе sqlConnection и вот тебе даппер. (Т.е. везде прокинут DataManager От linq2db. но если надо, дополнительно прокидываем sqlConnection ) Linq2db + AutoMapper(восхитительный ProjectTo). Но да, для даппера, приходится ручками писать маппинг таблиц на классы.
Roman
Прокинуть коннекшн дело не хитрое, а вот когда у тебя курсорная пагинация завязана на абстракции, которые завязаны на еф, воткнуть туда даппер сбоку - проще сразу на бутылку сесть
Roman
А ещё миграции. Мммм
Roman
Когда 3 пр, каждый с миграцией, и потом кто первый смержил, тот и папа
Roman
Еф вроде умеет прямой сиквель выполнять. Ну и процедуры всегда можно написать
Он умеет. Абстракции сверху не умеют. Они построены как раз вокруг лямбд запросов
Roman
Короче, мое дело предостеречь
Ayrat
Сделай ещё одну абсракцию!
Roman
Я по этому пути прошел, наждачный дилдо пососал
Roman
Других насильно останавливать не буду
Roman
Мне нравятся твои аллегории
Новую статью готовлю! Надо обогащать арсенал)
Roman
О чём на сей раз?
Про то, что современное ооп - ооп курильщика, и что его используют не по назначению; для решения многих сегодняшних задач Энтерпрайза гораздо лучше подходит фп. И в самом конце реклама f#
Vladislav
мне кажется скорее не упоротое ООП где все на состоянии а более плоская архитектура?
Igor
Именно
Видел (наверно тк баян 10 летний) http://blog.ploeh.dk/2010/12/02/Interfacesarenotabstractions/ ?
Vladislav
Может быть, я его не использовал
линк2дб просто хорошо кастомизируется и ты можешь под диалект написать типизированные запросы
Vladislav
из того что я знаю
Bonart
А что делаешь хитрое?
Сравнение для дат через обыные операции больше-меньше
Vasiliy
Сравнение для дат через обыные операции больше-меньше
Ммм а бд какая? Мне казалось линку сам это делает.
Vladislav
видимо вендрные функции алиасит
Bonart
Ммм а бд какая? Мне казалось линку сам это делает.
Линкью сам это делает. Но для dataTime нет операций сравнения в шарпе
Vladislav
Видел (наверно тк баян 10 летний) http://blog.ploeh.dk/2010/12/02/Interfacesarenotabstractions/ ?
anonymous How do you propose mocking/stubbing then? 2010-12-02 16:21 UTC Mark Seemann Good abstractions will still be interfaces (or base classes), so replacement with Test Doubles will still be possible.
Vladislav
он получается про то что надо головой думать надо?)
Igor
Ну в общем про то, что “с начало интерфейс -> потом реализация” А не “сделал сервис -> [refactoing extract interface]” Те если у тебя IServer (по сигнатуре) == ServiceImpl то чаше всего у тебя НЕТ абстракции вообще.
Igor
А это то что я наблюдаю в своем текущем проде, где 99% классов так и устроенны.
Bonart
Реализации потом можно подкладывать в разных проектах разные
Bonart
И? Причем тут абстракции?
Непонятно? У тебя на реализацию вообще ссылки в зависимых классах не будет
Фил Ранжин
хабр переведёт мою статью на англ
Фил Ранжин
збс
Фил Ранжин
надо там ссылку только поменять будет, не в наш чатик, а в слэк или ещё куда
Vasiliy
👌👌👌
Фил Ранжин
да
Ayrat
Это успех
Фил Ранжин
https://habr.com/ru/post/436596/ эту перевели уже
Фил Ранжин
вроде хорошо
Ayrat
чот на английском она выглядит на полтора экрана
Ayrat
подуменьшилась в размерах
Фил Ранжин
да
Фил Ранжин
ну, это хорошо
Фил Ранжин
статья по фшарпу вот и так слишком большая
Dr. Friedrich
Kotlin — это просто не ущербная Java.
Dr. Friedrich
Ну и data-классы ещё, ага
Igor
По сути, на самом деле, большой разницы с C# нету.
Как по смотреть, можно долго сравнивать фичи. (хотя для меня все CИ-подобные языки +- едины) Одно можно сказать точно, котлин - это язык 2010-х, который не допустил многие ошибки С# из 2000-х
Dr. Friedrich
Я вижу те же грабли, только в профиль!