Fork me on GitHub
#clojure-italy
<
2021-02-10
>
reborg09:02:16

Interessante approccio lightweigth con architettura by convention https://github.com/polyfy/polylith. Uso l’approccio descritto per interface.clj, usando core.clj nello stesso modo, ma i miei componenti sono top-level in github.

reborg09:02:32

La cosa che non mi piace molto di avere un unico repo in github con 30 sotto progetti e’ il mischiarsi di issues/PRs e CI collegata all’intero progetto. Entrambe i problemi possono essere risolti con un singolo monorepo, quindi immagino si tratti di una preferenza personale alla fine,

Andrea Imparato14:02:58

link interessante. neanche io sono un fan di monorepo, mi do un’occhiata cosa dicono questi ragazzi lo stesso pero’ :)

richiardiandrea16:02:41

mi sembra un buon approccio, queste cose sono sempre un po' spaventevoli quando le guardo (yet another framework) ma qui praticamente vedo solo convenzioni e tools attorno

richiardiandrea16:02:53

bel link grazie Renzo

👍 3
Andrea Imparato13:02:42

qualcuno mi puo’ spiegare il perche’ di usare interface.clj e non usare direttamente core.clj ?

reborg14:02:02

probabilmente perche’ il nome e’ piu’ esplicito riguardo all’uso che se ne vuole fare, rispetto a “core” che potrebbe contenere qualunque cosa

Andrea Imparato14:02:39

ah tipo come fare un subset delle funzioni di core che si possono usare? :thinking_face:

Andrea Imparato14:02:24

perche’ poi in interface si usano proprio le funzioni di core

reborg14:02:45

non necessariamente, probabilmente interface potrebbe dipendere da altri namespace e core potrebbe essere relegato a contenere “main”

Andrea Imparato14:02:44

giusto giusto 🙂

richiardiandrea16:02:19

Voi dove le mettete le spec? file separato oppure tutto insieme, mi piace vederle in un file ma alle volte e' troppo 😄 Sto pensando di tenerle le s/def nel suo file and le s/fdef in un altro namespace...ma non so...

Carlo16:02:03

la definizione della spec in genere la metto nel file che si riferisce a quel concetto (e ha le funzioni che operano su quello). Le spec per le funzioni le definisco inline nelle funzioni utilizzando guardrails (my 2c)

richiardiandrea17:02:27

eh non mi piace cambiare la sintassi di defn...e' troppo invasivo (IMHO)