I'm working on a Silverlight application. I've split it up in several assemblies:
- Domain
- Repositories (everything with persisting to the Sterling database)
- UI
- ...
This is how I've learned it, but I wondered. If you know the DLLs are not going to be reused, is it necessary to split them up? Or could you put everything in one assembly and use folders and namespaces to keep it tidy?
I've also seen projects that have too many assemblies. Instead of using namespaces where it would have been appropriate.
So: when do you create a new assembly for some new piece of code? Any good resources on this subject? And do you split code up technically (domain, data, ui, etc.) and/or functionally (i.e. patient-administration, patient-medical, hospital-logistics, ... - probably only for bigger, enterprise level applications)?