3 ms·
But where design comes into place is to determine where and when you need to separate these concerns. There are always times to do this. There are also times
by einhverfr 13y ago
But where design comes into place is to determine where and when you need to separate these concerns. There are always times to do this. There are also times not to.
For example (Perl example here), in LedgerSMB we layer some things. We layer the templating engine. We layer (now, for 1.4) arbitrary precision floats. We layer datetime objects. Many of these are layered in such a way that they are transparent to most of the code.
But there are a lot of things that aren't layered because there isn't a clear case for so doing right now.
(As a footnote, PGObject requires that applications layer the underlying framework because there are certain decisions we don't feel comfortable making for the developer, such as database connection management.)