@proRuby

Страница 214 из 1594
Lupsick
02.10.2016
19:20:17
обертка обертки обертки

Alex
02.10.2016
19:20:32
Достаточно обертки для рельс.

Lupsick
02.10.2016
19:20:40
Я делаю низкоуровневый унифицированный интерфейс.
воркер низкоуровневый интерфейс как раз

Alex
02.10.2016
19:20:42
Я не хотел жестко к рельсам привязываться.

Google
Lupsick
02.10.2016
19:20:52
а внутри воркера switch case

Alex
02.10.2016
19:20:53
Да ну? покажи мне где в руби воркер

Lupsick
02.10.2016
19:21:02
в смысле в руби воркер

Alex
02.10.2016
19:21:03
низкоуровневая абстракций жобана.

В прямом

моя абстракция работает без зависимостей

Lupsick
02.10.2016
19:21:16
руби скрипт у тебя является воркером

твоя абстракция работает с бекендами

Alex
02.10.2016
19:21:34
Я не понимаю почему ты воркер называешь низкоуровневой абстракцией.

Lupsick
02.10.2016
19:21:35
которые в зависимостях

Alex
02.10.2016
19:21:46
Моя абстракция унифицирует отправку смс

и задает простой вариант настройки какие бэкенды и как будут юзаться.

Lupsick
02.10.2016
19:22:30
дак тебе надо написать этот бекенд для начала

Google
Lupsick
02.10.2016
19:22:35
вместо того чтобы взять switch case

и гемы компаний

Alex
02.10.2016
19:22:41
вместо того чтобы это реализовывать в каждом проекте, ты можешь подключить это в любой проект и не писать доп. кода.

У тебя в каждой компании будут свои кейсы, и смски где то в жопе засунуты

Danila
02.10.2016
19:23:00
Я почему то всегда думал что CI и CD это одно и тоже.

не-не. первое отвечает за проект только, а второе за окружение тоже

Lupsick
02.10.2016
19:23:02
ты можешь просто взять гем компании и не писать доп кода вообще

Alex
02.10.2016
19:23:03
где то в application.rb где то еще.

Danila
02.10.2016
19:23:08
вот это бред

Lupsick
02.10.2016
19:23:31
где то в application.rb где то еще.
поэтому они должны в одном месте отправляться

Alex
02.10.2016
19:23:31
ты можешь просто взять гем компании и не писать доп кода вообще
Бред. Если у тебя будет два бэкенда то тебе придется писать свой switch case

Lupsick
02.10.2016
19:23:33
из одного места

Alex
02.10.2016
19:23:36
зачем? если есть уже все готовое.

Danila
02.10.2016
19:23:44
cd от ci отличается тем, что сиди это не только сборка но и выкатка

Alex
02.10.2016
19:23:49
Я уже молчу что при наличии кучи реализаций тебе вообще не придется ничего писать.

Lupsick
02.10.2016
19:24:06
зачем? если есть уже все готовое.
твоя абстракция не решает вопрос с тем что код будет разбросан

Alex
02.10.2016
19:24:07
Configure в одном месте

а код везде один и тот же

Google
Lupsick
02.10.2016
19:24:37
Alex
02.10.2016
19:25:00
Что delivery? ты либо свою оберку-воркер пишешь, либо берешь готовую обертку например для рельс.

Lupsick
02.10.2016
19:25:15
отправляться откуда будет?

Alex
02.10.2016
19:25:20
Из воркера

Я не очень понимаю твой вопрос.

Зачем мне в каждом проекте заново прописывать switch case, везде писать по разному, если я могу сразу все готовое подключить?

не в этом ли суть гемов вообще?

шаринг кода

Этот код протестирован и он работает, ты его просто подключаешь. Тебе его поддержка считай ничего не стоит.

А вот стоимость поддержки _твоего_ кода - стоит.

Lupsick
02.10.2016
19:26:50
ой бля

ты пишешь бекенды

Lupsick
02.10.2016
19:26:55
сам

которые надо поддерживать каждый

вместо того чтобы взять код компании

которая уж точно поддерживает свой гем

Alex
02.10.2016
19:27:14
Неважно switch case это или нет. Либо абстракция одинаковая везде и знакома всем, либо в каждом проекте разброд и шатание.

????

Спорный пункт.

Google
Lupsick
02.10.2016
19:28:10
ну в разы более спорный пункт что ты сможешь на всех стульях усидеть

Alex
02.10.2016
19:28:14
Ты сейчас засмеешься, но думаю это как раз тот момент где я могу взять гем компании и написать интерфейс для своей библиотеки.

Ты мне сейчас подал мысль, обертка для обертки!

Lupsick
02.10.2016
19:28:24
для того лишь чтобы заменить switch case

Alex
02.10.2016
19:28:47
Ведь ты прав, компания свой гем поддерживает. Мне достаточно написать обертку которая подружит его с моей системой.

Alexander
02.10.2016
19:29:26
cd от ci отличается тем, что сиди это не только сборка но и выкатка
capistrano вроде тот же ci, но выкатывает, разве нет?

Alex
02.10.2016
19:29:37
capistrano разве CI?

Alexander
02.10.2016
19:30:19
Ты сейчас засмеешься, но думаю это как раз тот момент где я могу взять гем компании и написать интерфейс для своей библиотеки.
именно так и нужно делать: обращаться к гему провайдера, если он есть, из своей обёртки

Alex
02.10.2016
19:30:41
ну в разы более спорный пункт что ты сможешь на всех стульях усидеть
Вообще, у компании есть API, а API должен быть гарантирован на широком промежутке времени.

Lupsick
02.10.2016
19:31:09
короче ладно

Admin
ERROR: S client not available

Alex
02.10.2016
19:31:26
не не, продолжай. Ты правильные мысли подаешь.

Lupsick
02.10.2016
19:31:40
я скажу одно

я не люблю писать лишний код

Alex
02.10.2016
19:31:55
Именно! и здесь ты его пишешь меньше чем твой switch case

ты только конфигуришь и оно просто работает.

Lupsick
02.10.2016
19:32:04
нет ты не прав

ты берешь сначала твой гем

а потом бекенд

Alexander
02.10.2016
19:32:16
Google
Lupsick
02.10.2016
19:32:26
(не пишешь код)
(берешь гем компании)

Alex
02.10.2016
19:32:42
Ты берешь реализацию совместимую с ActiveSMS

Alexander
02.10.2016
19:32:46
а потом бекенд
пишешь 50 / 50 (уже может быть реализован), и чутка меньше

Lupsick
02.10.2016
19:32:59
Ты берешь реализацию совместимую с ActiveSMS
я беру ее в случае если она есть

и если ты не заебался поддерживать еще 10 провайдеров внезапно

ну и НАПИСАЛ для начала

Nikolay
02.10.2016
19:33:26
ActiveSMS.delay.send_sms(phone, text)

Alex
02.10.2016
19:33:27
Как ты сказал, я могу взять гем компании и обернуть его.

Lupsick
02.10.2016
19:33:28
если тебе нравится писать бесполезный код то ок

Nikolay
02.10.2016
19:33:29
вот тебе и воркер

Alexander
02.10.2016
19:33:38
и если ты не заебался поддерживать еще 10 провайдеров внезапно
всегда можно пофиксить или написать, это дело не дольше, чем писать вчистую, только получится более гибко

Nikolay
02.10.2016
19:33:38
и асинхронная отправка

Alex
02.10.2016
19:33:57
ActiveSMS.delay.send_sms(phone, text)
Нет. В обертке для рельс будет скорее ActiveSMS.deliver_later(phone, text)

Alexander
02.10.2016
19:34:06
если тебе нравится писать бесполезный код то ок
то, что ты не видишь пользы — это не значит, что её нет

Lupsick
02.10.2016
19:34:11
вот тебе и воркер
а если тебе надо больше параметров, кроме phone и text?

Nikolay
02.10.2016
19:34:12
так сайдкик поддерживает такой синтаксис

Alex
02.10.2016
19:34:18
Alexander
02.10.2016
19:34:20
или если её нет для тебя — это не значит, что её нет для всех

Alex
02.10.2016
19:34:34
ActiveSMS.deliver(phone, text, kill_all_stuff: true)

Nikolay
02.10.2016
19:34:36
https://github.com/mperham/sidekiq/wiki/Delayed-extensions#class-methods

Lupsick
02.10.2016
19:34:44
вы поехали чтоль

вы хотите написать дополнительный код

Alex
02.10.2016
19:35:01
Зачем?

Страница 214 из 1594