Maybe you'll want to add new methods in the business tier, and keep it isolated from the DAL. Most real world sites have heavier business layers than TBH. TBH is only a basic example site. Over time the BLL would likely grow more than the DAL.
Since you mention OOP, there's 2 ways to scale: horizontal and vertical. Horizontal scaling uses interfaces and vertical scaling involves inheritance. Inheritance within the BLL adds layers within the overall layer, and ditto for the DAL, but the DAL and BLL do not share inherited behavior. The relation between the DAL and BLL is horizontal, set by a contract.
But maybe a domain object is what you're referring to. These are acceptable as containers to pass data between tiers, but they shouldn't be more than that. Your object graph can get muddy if you pass full-scale business objects around between DAL and BLL. Those need to be restricted only between the BLL and UI layers.
Eric
|