【问题标题】:Designing the Architecture, separating projects. Am I "over thinking"?设计架构,分离项目。我是不是“想多了”?
【发布时间】:2008-12-04 09:01:18
【问题描述】:

想象一下有以下场景:

您需要创建一个后端与前端分开的系统,这在编程时当然很重要。但是如果你希望能够完全改变后端而不改变前端呢?

例如,在创建大型网站时,我会使用以下项目:

数据 - 处理所有数据连接,即 LINQ 生成的文件和其他部分覆盖。

接口 - 这层很有趣,这是溢出吗?将接口分开是因为业务逻辑和数据层可能有很多共同的接口,而不是从前面引用数据层,您可以引用接口层,然后让业务逻辑向您发送一个接口,而不是了解数据层中数据对象的正确类和结构。

业务逻辑 - 这本身就是应用程序的业务逻辑。

前端 - Web、GUI 或任何需要的东西,当然是代码方面的。

我的问题是,这真的是层层和思维的溢出吗?接口层可能不重要吗?有什么建议吗?

【问题讨论】:

    标签: c# visual-studio architecture


    【解决方案1】:

    接口层只是一个层,你将它与其他所有东西分开定义。然而,一个接口应该只定义一个服务的边界,所以它不会充满代码。

    如果不定义接口传递接口,我看不出你将如何传递接口,我认为这做得过火了。

    如果您想以设计为先,请从一组简单的接口开始,但如果您发现自己没有预先考虑所有可能性,请准备好扩展它们。

    真的,你有

    • 数据+数据接口
    • 业务逻辑+接口
    • 前端 + 图形用户界面

    每一层都在某种程度上使用和封装了前一层。接口实际上并没有单独的层,或者您会在层之间放置什么?接口只是表示两个事物之间的边界,所以就这样使用它吧。

    概括和概括很诱人,但最终你只是设计了一种新的编程语言或范式。大多数时候,这不是简报的一部分。

    简介!当然,我们忘记了。从那开始,确定你的接口,然后开始编写最简单的用例。这种想法会随着你的发展而发展。

    【讨论】:

    • 谢谢。这对我的思考有很大帮助,我想我会将每个接口分开到相应的层。当然把所有层的接口都放在一层是愚蠢的!
    猜你喜欢
    • 2017-03-27
    • 1970-01-01
    • 2012-01-20
    • 1970-01-01
    • 1970-01-01
    • 2020-04-17
    • 1970-01-01
    • 2011-05-25
    • 1970-01-01
    相关资源
    最近更新 更多