This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-09-05
Channels
- # beginners (45)
- # boot (2)
- # cider (2)
- # cljs-experience (1)
- # cljsrn (6)
- # clojure (67)
- # clojure-brasil (1)
- # clojure-dusseldorf (47)
- # clojure-finland (7)
- # clojure-italy (81)
- # clojure-portugal (2)
- # clojure-russia (12)
- # clojure-sanfrancisco (1)
- # clojure-serbia (1)
- # clojure-spec (22)
- # clojure-uk (27)
- # clojurescript (49)
- # clojurewerkz (3)
- # code-reviews (3)
- # component (19)
- # core-async (3)
- # cursive (16)
- # events (7)
- # fulcro (20)
- # graphql (7)
- # immutant (1)
- # jobs (2)
- # juxt (44)
- # leiningen (7)
- # lumo (35)
- # onyx (31)
- # portkey (31)
- # portland-or (8)
- # random (1)
- # re-frame (82)
- # reagent (35)
- # sfcljs (1)
- # spacemacs (5)
- # specter (7)
- # unrepl (4)
- # yada (2)
Кто использует graphql? Как вы живёте с тем, что там только camelCase? У меня получается база в snake_case, код в kebab-case и одно в другое неплохо конвертится автоматически. Но если добавить graphql, то как минимум схема на edn будет в camelCase, что совсем не прикольно. Кто знает как быть?
а то я даже вот кложу подзабросил потому что я хз как вести на ней масштабируемую разработку (tm)
вопрос звучит так: почему мы юзаем keyword'ы с неймспейсами, которые нечувствительны к опечаткам, вместо того, чтобы объявить их в нужном неймспейсе как вары?
А мы юзаем? В смысле это разве распространенная практика -- использовать namespaced-keywords из другого неймспейса?
ну понятно, то есть раз кложа - мы гоняем туда-сюда словари, и делаем по ним мапы и ещё мапы. и потом сиди думай, устарели эти конкретные киворды, или ты уже всё отрефакторил и в коде реально это ещё как живёт
и сидишь пыришься в этот код без тестов, потому что тесты ещё не хватало писать на 6 файлов (да, вот добавляю к тем пяти шестой, ага)
то есть пропозал по идее какой? было
(ns hi.there)
(def mem-db
{:something {:megaservice/adapter ..}})
(ns megaservice)
;; (defn .. разные функции, которые поедают и работаю с :megaservice/adapter)
стало
(ns hi.there)
(def mem-db
{:something {megaservice-adapter ..}})
(ns megaservice)
(def adapter ::adapter)
@kuzmin_m это императивненько
def move_link_to_packet_for_replaced_race(race)
return if data.replaced_order_uid.blank?
replaced_race = Race.find_by(uid: data.replaced_order_uid)
return if replaced_race.blank?
return if replaced_race.packet.blank?
replaced_race.packet_attached_race.update! race: race
end
менее императивно (а presence - рельсово):
def move_link_to_packet_for_replaced_race(race)
data.replaced_order_uid.presence # presence вставил только для того, чтобы сохранить дословно семантику оригинала
.try! {|e| Race.find_by(uid: e)}
.try!(:packet_attached_race)
.try! {|e| e.update! race: race }
end