@frp_ru

Страница 51 из 420
Дмитрий
29.04.2017
13:27:05
есть ли такой паттерн ?
Тут ключевое понять — это должны быть любые поля в объекте, тупо их число, или только какие-то конкретные?

Maxim
29.04.2017
13:28:05
это критерий поиска, конкретные

Creterea => SearchResult

type Creterea = { a:string, b:number....}

Google
Дмитрий
29.04.2017
13:29:48
Тогда всё сложнее становится) ? Это уже не curry-like паттерн получается, а отдельная большая функция)

И много вопросов возникает

А что делать, если на очередном шаге не передал вообще ни одного подходящего поля?

Или если одно поле передал дважды

Vadim
29.04.2017
13:32:37
Я так понимаю вопрос и был в том, есть ли стандартный метод для того что б эти проверки вручную не писать )

Что б каррирование было до тех пор пока не переданы все необходимые поля

как я понял

Maxim
29.04.2017
13:34:02
ну не стандартный, а может где-то есть готовый подход

Или если одно поле передал дважды
заменить в критерии это поле

Дмитрий
29.04.2017
13:42:45
Ну короче это а ля curry с аккумулятором, в который на каждом шаге делаешь merge

Vadim
29.04.2017
13:43:14
При этом учитывать сколько НЕОБХОДИМЫХ ключей уже передано

Maxim
29.04.2017
13:44:13
спасибо, подумаю )

Google
Maxim
29.04.2017
13:46:15
ещё вопрос, может кто-то встречал опенсорсный nodejs проект с хорошим примером использования рамды и функциональных типов

что бы прямо какнонично, как в fantasy-land - использовались подходы на более менее существенной кодовой базе

Vadim
29.04.2017
13:48:00
ты используешь typescript?

Maxim
29.04.2017
13:48:05
да

Vadim
29.04.2017
13:48:11
Просто для чего тебе функциональные типы?

Maxim
29.04.2017
13:48:20
почти не использую классы

Дмитрий
29.04.2017
13:48:37
Я началв свой проект впиливать fantasy land с типизацией на flow

И пока забил

Aleh
29.04.2017
13:48:47
боль и унижение?)

Maxim
29.04.2017
13:48:58
export type MappingDefinition = Mapping | string export const getMapping = (mappingDefinition: MappingDefinition): Mapping =>

ну вот такие вещи сильно помогают, можно определить систему типов

или type Branch = {Branch & next:Branch}

Дмитрий
29.04.2017
13:49:37
Потому что для хорошего применения этого всего нужен определенный уровень проблем, а у меня пока тьфу тьфу полегче ?

или type Branch = {Branch & next:Branch}
Ну это и на ts можно

Maxim
29.04.2017
13:50:00
алгебраические типы хороши

Дмитрий
29.04.2017
13:50:04
Предыдущее кстати тоже

Maxim
29.04.2017
13:50:07
ну на ts - да

Дмитрий
29.04.2017
13:50:29
Алгебраические типы децл побольше требуют, чем просто два определения типов)

ну на ts - да
А как ты собрался без типизации это проворачивать?))

Maxim
29.04.2017
13:51:09
что без типизации ? наоборот я с ts работаю

Google
Maxim
29.04.2017
13:51:19
и сторонние либы понимаешь за 5 минут

Vadim
29.04.2017
13:51:36
Я не слышал что на ts можно типизировать алгебраические типы

Дмитрий
29.04.2017
13:51:43
Я просто спросил)

Vadim
29.04.2017
13:51:45
Но может я просто ts пока недостаточно знаю

Maxim
29.04.2017
13:51:54
ну там крутые типы )) type WindowProperty = {key of Window}

конечно не дотягивают до F#, но хоть что-то

Дмитрий
29.04.2017
13:52:20
Я не слышал что на ts можно типизировать алгебраические типы
Есть чел с двумя параллельными проектами на flow и ts, я flow юзаю, но думаю на ts у него не хуже

Maxim
29.04.2017
13:52:27
и существуют, только до компиляции

Vadim
29.04.2017
13:52:53
Если тебе нужна работа с алгебраическими типами, то почему именно ramda?

Есть же спец-либы для этого

Дмитрий
29.04.2017
13:53:18
ADT — отдельно, рамда — отдельно (но рядом)

Aleh
29.04.2017
13:53:38
есть спец. языки для этого)

Vadim
29.04.2017
13:53:46
sanctuary если из js

Дмитрий
29.04.2017
13:53:52
https://github.com/gcanti/fp-ts https://github.com/gcanti/flow-static-land

Maxim
29.04.2017
13:53:53
нет , интересует опен сорс проект использующий спецификацию fantasy-land

Дмитрий
29.04.2017
13:54:03
Ааа, ну так бы сразу))

Vadim
29.04.2017
13:54:05
sanctuary

Дмитрий
29.04.2017
13:54:05
Most

Vadim
29.04.2017
13:54:15
Это уже по frp

Дмитрий
29.04.2017
13:54:17
Kefir — static land

Google
Vadim
29.04.2017
13:54:34
тоже по frp

Дмитрий
29.04.2017
13:54:35
Это уже по frp
Не важно, он явно декларирует соответствие fantasy land

Какая разница что именно при этом делают эти проекты)

Maxim
29.04.2017
13:55:16
https://github.com/sanctuary-js/sanctuary

Vadim
29.04.2017
13:55:18
sanctuary более общего применения

Maxim
29.04.2017
13:55:22
это опять либа )

может быть есть какая-то CMS или дашборд

Дмитрий
29.04.2017
13:55:39
А либа не проект?)

Maxim
29.04.2017
13:56:16
ну хочется посмотреть как сделать вебсервис ) с заводить пользвоателей, как разграничивать права

https://github.com/sqreen/awesome-nodejs-projects

напрмиер тут собраны "выдающиеся" практики опенсорса. Можно зайти в каждый проект и посмотреть

https://github.com/IMA-WorldHealth/bhima-2.X - можно найти разные ворквлоу работы с базой данный, обработку доступа пользвоателей, сервисы емайл

Maxim
29.04.2017
14:01:35
вот увидел как внутри выглядит сервис базирующийся на евент сорсинге - переписал пол проекта к чёрту)

Aleh
29.04.2017
14:02:13
вопрос конечно не в тему, но есть ли нормальный ОО проект с nodejs?

Дмитрий
29.04.2017
14:03:21
С козырей зашёл!)

Aleh
29.04.2017
14:03:38
ну я не видел прост)

ну вообще любой на js/ts/flow, необязательно нода

Maxim
29.04.2017
14:08:17
не - не покатит ) писал с DDD, ORM, DAO и прочими штуками много раз

Aleh
29.04.2017
14:08:28
так я б посмотрел)

Google
Maxim
29.04.2017
14:08:29
с использование ивент сорсинга поменял взгляды )

Дмитрий
29.04.2017
14:08:43
Я сам к этому пришёл

Aleh
29.04.2017
14:08:55
с использование ивент сорсинга поменял взгляды )
ddd без cqrs+es это как сами понимаете что)

Дмитрий
29.04.2017
14:09:04
Случайно изобрёл, как логическое развитие вышло)

Maxim
29.04.2017
14:09:28
ddd без cqrs+es это как сами понимаете что)
изначально ddd - не имеет отношения к cqrs

Aleh
29.04.2017
14:09:37
понятное дело

но без разделение на read и write доменную модель надо обвешивать геттерами

Дмитрий
29.04.2017
14:10:13
Поцаны

Aleh
29.04.2017
14:10:15
и начинаются страдания

Дмитрий
29.04.2017
14:10:22
Вы какие то страшные вещи говорите

Aleh
29.04.2017
14:10:30
ddd так-то и к ооп не имеет отношения, вполне себе и фп подход)

andretshurotshka?❄️кде
29.04.2017
14:10:59
Есть тут нодбекендеры которые юзают ооп подход в ноде?

Вопрос есть

Нафига вы это делаете

Пацан с козырей зашёл

А вы ведётесь

Maxim
29.04.2017
14:11:03
я про es услышал только года два назад, а ты говоришь об этом как о само собой разумеещемся подходе )

Aleh
29.04.2017
14:11:22
просто термины будут немного не такие, как у эванса, стратегическое ddd он описал больше для всяких жав и подобного

Дмитрий
29.04.2017
14:11:49
Maxim
29.04.2017
14:13:39
когда в CMS/СRM - появляются расширяемые типы и проблемы производительности - все козыри идут лесом

Aleh
29.04.2017
14:13:46
а существует каждый подход лет по 40

Страница 51 из 420