@proGO

Страница 1092 из 1674
Nikolay
25.12.2017
20:58:01
вам бы вообще про osi почитать
мне не надо, спасибо. В моем мире http - не транспортный протокол. Собственно, в модели OSI тем более

Nikolay
25.12.2017
20:58:13
http://try.sangria-graphql.org/
нет, спасибо

Google
Александр
25.12.2017
20:58:37
ну просто представь что делаешь API, одному нужно список клиентов с их заказами и названием производителя каждого товара в заказе, а другому нужно список клиентов с их заказами и адресом производителя каждого товара в заказе

Nick
25.12.2017
20:58:41
нет, спасибо
открывай

Александр
25.12.2017
20:58:43
получается 2 разных эндпойнта?

Nikolay
25.12.2017
20:59:28
получается 2 разных эндпойнта?
зависит от того, что считать разными эндпойнтами. Некоторые вещи можно просто через get-параметры настраивать

Nick
25.12.2017
20:59:37
Александр
25.12.2017
20:59:49
и еще один нужен - надо получить список клиентов с их заказами, без детализации по товарам

Nikolay
25.12.2017
20:59:55
даже в твоем любимом гоу, http клиент в пакете transport лежит)
это не меняет того факта, что модель OSI говорит, что ты не прав)

Nick
25.12.2017
20:59:56
эти все понятия относительны

Nikolay
25.12.2017
21:00:25
Nick
25.12.2017
21:00:40
то что http находится не на транспортном уровне osi не делает его не транспортом

Александр
25.12.2017
21:00:42
в заказах должны быть товары, да)

Nikolay
25.12.2017
21:01:03
в заказах должны быть товары, да)
то есть ты сейчас вот так взял и расширил ТЗ нехило)

Google
Nick
25.12.2017
21:01:05
а, то есть еще у нас сущность "товар" появилась или что?
открой пример, http://try.sangria-graphql.org/ проще будет

Demuz
25.12.2017
21:01:24
а, то есть еще у нас сущность "товар" появилась или что?
Он имеет ввиду, из одного пакета с продуктами, овощами и так далее, каждый клиент захочет вытащить только свои помидоры, морковь и так далее. Кому-то нужно будет и то и то.

Nikolay
25.12.2017
21:01:39
открой пример, http://try.sangria-graphql.org/ проще будет
я знаю, как выглядит graphql. Мне не нужен недо-json для того, чтобы фронт с бэком подружить, спасибо

Nikolay
25.12.2017
21:02:12
у тебя всегда идеальные тз?
у меня всегда логика четко реализована по протоколам взаимодействия

и ее таким образом гораздо проще тестировать

Nick
25.12.2017
21:02:26
там есть вся спека, реализуй ее на rest

Nikolay
25.12.2017
21:02:52
там есть вся спека, реализуй ее на rest
мне неинтересна спека оттуда. Мне интересна бизнес-задача, которую надо решить.

клиенты к тебе со спекой не приходят

Александр
25.12.2017
21:03:18
clients{ name, orders{number, items{title, manufacturer{name}}}} - запрос списка клиентов с их заказами и товарами в них, с названием производителя у каждого товара

clients{ name, orders{number, items{title, manufacturer{address}}}} - то же, но уже вместо названия производителя его адрес

Nikolay
25.12.2017
21:03:52
так открой пример
ты сейчас будешь пытаться на основе придуманной кем-то спеки и примера на ее основе доказывать нужность конкретного способа ее имплементации? ты не троллишь?

Александр
25.12.2017
21:04:02
clients{ name, orders{number}} -  просто список клиентов с их заказами

Nick
25.12.2017
21:04:05
@Enchantner а ты не в питере живешь?

Александр
25.12.2017
21:04:28
на беке это все одна реализация, без кучи эндпойнтов

Google
Nick
25.12.2017
21:04:29
Жаль, приезжай на какой-нибудь митап, обьясню на листочке

Nikolay
25.12.2017
21:04:47
на беке это все одна реализация, без кучи эндпойнтов
один хэндлер с кучей логики по джойнам и полям? нет, спасибо, ешьте сами

Александр
25.12.2017
21:04:55
нет там кучи логики

Nick
25.12.2017
21:05:11
я бы сказал ,что там вообще логики нет

Nikolay
25.12.2017
21:05:12
Жаль, приезжай на какой-нибудь митап, обьясню на листочке
не объяснишь :) для меня абсолютно очевидно, что это избыточная херня, которую сложно тестировать и невозможно нормально переносить

Nikolay
25.12.2017
21:05:27
я удивляюсь, что ты вообще споришь

Nick
25.12.2017
21:05:29
я бы сказал, что не сложнее реста

Nikolay
25.12.2017
21:05:59
нет, тестировать ее не сложно
нда? ну покажи мне либу для graphql на Python + SQLAlchemy, которая дает тебе 100% coverage автогенеренными тестами

и то это поблажка, ибо в общем случае не должно быть завязки на sqlalchemy

Nick
25.12.2017
21:06:20
ты еще и тесты кавереджем измеряешь)))

я не питон программист и не могу знать

Nikolay
25.12.2017
21:06:31
ты еще и тесты кавереджем измеряешь)))
я просто написал так, чтобы понятнее было

что это невозможно :)

Nikolay
25.12.2017
21:07:07
я не питон программист и не могу знать
но ты четко знаешь, что не привязанный к языку стандарт легко реализуется и хорошо тестируется

окей, тогда вопросов нет))

если бы твое изречение сразу звучало, как "В Golang есть либа для GraphQL, которая хорошо оттестирована и маппит сущности удобно на встроенный database/sql и ORM с генерацией тестов по запросам" - я бы даже и не спорил

но это крайне узкий кейс и он ничего абсолютно не говорит о graphql, как о применимой и удобной технологии

Александр
25.12.2017
21:09:01
так у тебя сущности в graphql могут не совпадать с сущностями в бд ?

Google
Nick
25.12.2017
21:09:18
вот кстати продукт, который юзает графкуэль https://demo.databaseflow.com

Nikolay
25.12.2017
21:09:30
так у тебя сущности в graphql могут не совпадать с сущностями в бд ?
разумеется, тогда и тестов автоматических у меня не будет, да? печаль

Nikolay
25.12.2017
21:09:52
вот кстати продукт, который юзает графкуэль https://demo.databaseflow.com
вот, кстати, человек, который ест гомеопатию https://ru.wikipedia.org/wiki/%D0%95%D0%BB%D0%B8%D0%B7%D0%B0%D0%B2%D0%B5%D1%82%D0%B0_II

тьфу, не та королева

Александр
25.12.2017
21:10:47
а вот еще использование graphql https://developer.github.com/v4/

кстати, с REST перешли)

Nikolay
25.12.2017
21:10:57
мда, ты уже полный бред начал гнать
ты мне на примере "вот тут так делают" пытаешьсая доказать нужность технологии. Это невалидный аргумент

Demuz
25.12.2017
21:11:11
Не в тему, но во фреймворке iris Добавили возможность листена на unix сокете.

Admin
ERROR: S client not available

Demuz
25.12.2017
21:11:23


Nikolay
25.12.2017
21:12:18
а вот еще использование graphql https://developer.github.com/v4/
в гитхабе есть четкий набор сущностей при минимуме бизнес-логики. Это как раз тот кейс, где оно может и взлететь

Nick
25.12.2017
21:12:25
@Enchantner может ты еще думаешь, что земля плоская?

Nikolay
25.12.2017
21:12:27
а как тебе доказать?
не знаю, пока плохо получается

люблю эти стикеры

Nick
25.12.2017
21:13:11
кстати еще у курсеры graphql api

Александр
25.12.2017
21:13:12
в гитхабе есть четкий набор сущностей при минимуме бизнес-логики. Это как раз тот кейс, где оно может и взлететь
ты видишь только внешнее апи, внутри там может вообще все иначе быть ? с какой-то своей бизнес-логикой, которая необходима для реализации этого апи

Nikolay
25.12.2017
21:13:49
ты видишь только внешнее апи, внутри там может вообще все иначе быть ? с какой-то своей бизнес-логикой, которая необходима для реализации этого апи
я что-то сомневаюсь, что в гитхабе нет сущности "репозиторий" или "контрибьютор". Как минимум потому, что я с его API работаю.

Google
Nick
25.12.2017
21:14:09
Мне кажется уже бы обезьяна бы поняла для чего graphql, естественно за банан

Nikolay
25.12.2017
21:14:30
я понимаю, зачем он придуман

Nick
25.12.2017
21:14:42
разве? по-моему нет

Nikolay
25.12.2017
21:14:44
я не понимаю, где он нужен за пределами весьма небольшого количества узких кейсов

Александр
25.12.2017
21:14:56
смотри-ка чего гитхаб пишет

The ability to define precisely the data you want—and only the data you want—is a powerful advantage over the REST API v3 endpoints.

Nikolay
25.12.2017
21:15:02
разве? по-моему нет
а по-моему ты пытаешься натянуть сову на глобус

Nick
25.12.2017
21:15:05
где угодно, наравне с rest

Александр
25.12.2017
21:15:10
GraphQL lets you replace multiple REST requests with a single call to fetch the data you specify.

Demuz
25.12.2017
21:15:28
Да блин, вы надоели спорить, дайте вопросы нормальные позадавать.

Nikolay
25.12.2017
21:15:29
The ability to define precisely the data you want—and only the data you want—is a powerful advantage over the REST API v3 endpoints.
ну это ж буллшит. И да, в случае гитхаба это может быть так. А в случае приложения со сложной бизнес-логикой - нет.

Nick
25.12.2017
21:15:44
Nikolay
25.12.2017
21:15:50
точнее как, не вранье, да, может заменить

но толку в этом нет никакого и это не является преимуществом

Sergey
25.12.2017
21:16:08
Александр
25.12.2017
21:16:10
https://githubengineering.com/the-github-graphql-api/

они вот здесь подробнее описывают

Nikolay
25.12.2017
21:16:32
в случае сложного приложения со сложной бизнес логикой это тем более так
в случае сложного приложения со сложной бизнес логикой это, разумеется, не так

Sergey
25.12.2017
21:16:45
пилить бек и клиентов могут разные команды, и пока ты будешь с каждым решать кому какой эндпоинт выдать. бизнес закроется

Страница 1092 из 1674