On Feb 8, 2015, at 6:42 PM, David James <davidcja...@gmail.com> wrote:
> I often group functions that operate on similar data structures together in a 
> namespace. This isn't always clear-cut, because some functions may "fit" in 
> more than one namespace. I sometimes use a (soft) convention to group 
> functions by the first argument. Yes, this means that my Clojure projects 
> resemble OO projects, at least in terms of what logic goes where. See what 
> works for you.

At World Singles we’ve ended up with just over 40 main namespaces that  
correspond to the major "domain concepts" in our application, with a handful of 
more generic names that match external system integration points or clearly 
defined subsystems, and then sub-namespaces for implementation variants and 
general decomposition (e.g., worldsingles.payment, 
worldsingles.payment.braintree, worldsingles.payment.sbw, 
worldsingles.transparensee - search engine, worldsingles.data - our general 
persistence layer). Our average namespace is about 200 lines long (we have just 
over 100 namespaces in our main app - they range from 16 lines to 1,266).

Sean Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/

"Perfection is the enemy of the good."
-- Gustave Flaubert, French realist novelist (1821-1880)



-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to