当我在我们的网站中优化我们应用程序的架构时,我遇到了一个问题,我不知道最佳解决方案。业务逻辑分离
现在,在目前我们有基于此结构的小DLL:
Database <-> DAL <-> BLL
的dal使用业务对象传递给BLL,将它传递给使用该DLL的应用程序。
只有BLL是公共的,因此任何包含此dll的应用程序都可以看到bll。
一开始,这对我们公司来说是一个很好的解决方案。 但是,当我们在该Dll上添加越来越多的应用程序时,Bll越大。现在我们不希望某些应用程序可以从其他应用程序中看到Bll逻辑。
现在我不知道最好的解决方案是什么。
我认为的第一件事是移动并将bll分隔到其他dll中,我可以将其包含在我的应用程序中。但是,那么Dal必须是公开的,所以其他的dll可以获取数据......而且我似乎是一个很好的解决方案。
我的另一个解决方案,就是在不同的命名空间中分隔bll,并且只包含应用程序中需要的命名空间。但是在这个解决方案中,如果你愿意,你可以直接访问其他的bll。
所以我在征求你的意见。
您关心的是易用性还是安全性?即,您是否希望API的用户能够轻松地找到并使用他们感兴趣的BLL方法,或者您是否希望阻止访问某些方法?或两者? – 2010-05-11 15:34:55
很高兴设置正确的答案。 – Erup 2010-05-21 16:04:17
@ Tuzo:这很容易找到合适的bll,并且他们不会对其他bll做任何错误。对于迟到的回复抱歉,在这里没有看到您的评论。但谢谢你的问候!我不是一个普通的问题,而是一个普遍的问题。我不认为有一个真正正确的答案。但所有这些答案都帮助我解决了这个问题。我很高兴。 对于迟到的回复感到抱歉。 – bruno 2010-06-03 07:21:58