社区
C#
帖子详情
诚问组件分割问题
yanghant74
2004-11-06 08:02:36
有一个课题我打算分割为:“主项目”、“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。
其中:“主项目”引用“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。
且:“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”分别引用“连接数据库组件”。
问:这样做可否?
若这样做不行,应该如何做?
请诸位高手指点迷津。(顶者有分)
...全文
146
10
打赏
收藏
诚问组件分割问题
有一个课题我打算分割为:“主项目”、“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。 其中:“主项目”引用“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。 且:“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”分别引用“连接数据库组件”。 问:这样做可否? 若这样做不行,应该如何做? 请诸位高手指点迷津。(顶者有分)
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
river723
2004-11-07
打赏
举报
回复
好象一般分层不这么分,如果按楼主的分法,好象是按业务功能分的,没必要分出个“连接数据库组件”,直接把连接放在各"组件"里,但要分也可以,其它各"组件"都引用“连接数据库组件”就行了.
唉,比较乱.
yanghant74
2004-11-07
打赏
举报
回复
up
yanghant74
2004-11-07
打赏
举报
回复
谢谢以上大家的发言。
再问一句:哪里有有关这个问题的书或文章可看啊?
rroo
2004-11-07
打赏
举报
回复
我们一般是这样做,
首先,写一个通用的数据库访问组件,比如就叫DataOperator , 所有数据库操作功能都封装里面,这个组件根据配置不同,应该要可以兼容大部分数据库,比如:SqlServer , Oracle, MySQL等(你可以用OleDB来做).
其次,将所有不同的系统的业务逻辑分别封装在不同的组件中,数据库操作部分则完全通过调用数据库访问组件,业务逻辑只要提供相应的参数即可,最好业务逻辑组件也能有相同的格式,可以便于团队的合作开发,这样在提高代码重用率,而且地层代码发生错误,便于全局修改.
这样做有一个明显的好处就是不同系统的业务逻辑在其他系统中调用的条件只要有数据库访问组件和业务逻辑组件就可以了.
zhongwanli
2004-11-07
打赏
举报
回复
是呀,你的包(组件)的分配就有问题,
而且,你是做三(多)层架构吗,为什么主项目要去引用
“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。
tonybaobao
2004-11-07
打赏
举报
回复
一般分层的话,3层差不多了。即BLL业务逻辑层,DAL数据访问层和表示层。你可以在层里面分各个不同的类,但他们应该同属于一个namespace。具体的例子可以看看MSPetShop,微软网上有下载的。
真相重于对错
2004-11-06
打赏
举报
回复
思归说中文了?
saucer
2004-11-06
打赏
举报
回复
主意是看依赖性与分层问题,为什么要分这么多数据库组件?你的组件的概念是不同的项目么?你的逻辑层呢?
“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”把数据库的访问东西都包装在“连接数据库组件”里么?
yanghant74
2004-11-06
打赏
举报
回复
难道没人会吗?
Alden
2004-11-06
打赏
举报
回复
不会,帮你顶
整理的2018 java面试汇总,要面试的抓紧看了
收集整理的java面试汇总,可能有些不全面,但是基本涵盖了很多内容,要跳槽的小伙伴可以看看.
基于Hadoop的海量数据存储平台设计与开发
基于Hadoop的海量数据存储平台设计与开发
hadoop&spark安装、环境配置、使用教程.docx
Hadoop 和 Spark 都是用于大数据处理的流行框架,各自有着不同的优势和适用场景。 Hadoop Hadoop 是一个开源的分布式存储和计算框架,最初由Apache开发,它的核心包括以下几个
组件
: Hadoop Distributed File System (HDFS): Hadoop 分布式文件系统,用于存储大规模数据集。它支持高容错性,能够在集群中的多个节点上存储数据副本,以应对节点故障。 Hadoop YARN (Yet Another Resource Negotiator): Hadoop 的资源管理器,负责集群资源的统一管理和调度。YARN 可以同时支持多种计算框架,如 MapReduce、Spark、Hive 等,使得集群资源能够更有效地被利用。 Hadoop MapReduce: Hadoop 的原始计算模型,通过将数据分解为小块,并在集群中并行处理这些块,来实现大规模数据的批量处理。 Spark Spark 是一个基于内存的快速通用数据处理引擎,也是Apache开发的开源项目。相较于Hadoop,Spark 在处理速度和支持的数据处理方式上有着显著
Pi-hole Card 卡片
组件
中的
分割
线与开关布局优化解析
Pi-hole Card 卡片
组件
中的
分割
线与开关布局优化解析 背景介绍 Pi-hole Card 是 Home Assistant 社区中一个广受欢迎的自定义卡片
组件
,主要用于展示和管理 Pi-hole 广告拦截器的状态。近期该
组件
迎来了一次重要更新,主要针对卡片布局中的
分割
线(Divider)排序和开关(Switch)位置进行了优化改进。
分割
线排序
问题
的技术解析 在之前的版本中,用户反馈
分割
...
BootstrapBlazor
组件
库介绍
项目介绍 演示系统地址:https://www.blazor.zone Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScript 来创建丰富的交互式 UI。 共享使用 .NET 编写的服务器端和客户端应用逻辑。 将 UI 呈现为 HTML 和 CSS,以支持众多浏览器,其中包括移动浏览器。 使用 .NET 进行客户端 Web 开发可提供以下优势: 使用 C# 代替 JavaScript 来编写代码。 利用现有的 .NET 库生态系统。
C#
111,111
社区成员
642,556
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章