首页新闻找找看学习计划

请教,如何将多个项目底层进行合并

0
悬赏园豆:20 [已关闭问题] 关闭于 2015-08-19 16:21

问题:水平有限,想请教一下【我说了自己的想法,但不知道其中由什么要注意的,或者有什么更好的方法。】

        (1)公司内部,有几个项目,有三个项目用的是传统的三层架构,由于三个项目都是独立创建的,每次更改Model,或者是DAl层,都得分别对三个项目进行更新。现在想将底层统一。不知道怎么处理比较适合。【个人想法:将三个项目的底层,MODEL,DAL,BLL,都抽出来,留下表现层,对抽出来的底层,新建一个项目单独做维护,需要修改时,就只修改这个项目,由于使用了SVN,所以可以把修改后的项目编译,然后提交到SVN,其他项目从SVN更新一下就可以了。】

         根据我个人的想法,不知道哪里欠妥,在发布到服务器时又该注意些什么,请清楚的指导一下。

         (2)还有两个项目是用EF的,不知道怎么处理比较好?【个人觉得可以同上】

        

           

五少的主页 五少 | 初学一级 | 园豆:183
提问于:2015-08-05 22:14
< >
分享
所有回答(4)
0

程序修改一般都是改需求,增加字段啊什么的,使用传统的三层拼写 sql啊,代码生成器啊,不是很好维护,最好是用面向接口编程,使用ADO.NET和接口,抽象化编程。

唯我独萌 | 园豆:532 (小虾三级) | 2015-08-06 08:18

首先,谢谢您的回复。

现在的现实状况是没办法将这些如你所言,将以在线上的系统推倒重构,我现在能做的只是在原有的基础想到办法,解决问题。

支持(0) 反对(0) 五少 | 园豆:183 (初学一级) | 2015-08-06 08:59

@五少:实在是看不懂的话,就不要太纠结了(时间和效率很重要),自己封装方法对数据进行增删改查,当然有些地方可能要用到事务处理。

支持(0) 反对(0) 唯我独萌 | 园豆:532 (小虾三级) | 2015-08-06 09:04
0

 你现在的水平问这么理论的没有用,实际一点的就是搭建一个三系统的测试环境,着手试试你目前想到的方法,看看有什么弊端。 然后平时经常看书,思考,重构,折腾,作死,水平自然慢慢上涨。

爱编程的大叔 | 园豆:29860 (高人七级) | 2015-08-06 09:43

首先,谢谢您的回复

我不是在探讨理论,我是在寻求解决的方式,我也不是闲的没事瞎折腾,我也不是伸手要答案,我也说了自己的想法,但是水平问题,我才需要指导,我知道需要动手去做,我也在做,我只是想问问,当中有没有什么药注意的,或者有更好的解决方式。比较是在线的系统,我不可能无所谓的去做···········

支持(0) 反对(0) 五少 | 园豆:183 (初学一级) | 2015-08-06 09:47

@五少: 解决的方式就是搭建测试环境啊。

其他的是我多嘴了。

支持(0) 反对(0) 爱编程的大叔 | 园豆:29860 (高人七级) | 2015-08-06 09:50
0

三个独立的项目你为什么想合到一起?独立的就独立管理啊。

除非三个项目有很大部分相同,这样你可以考虑抽出来,三个项目引用这个项目。但是这种都尽量是组件类型,与数据库相关的可能还会比较紧密。

gw2010 | 园豆:1394 (小虾三级) | 2015-08-06 11:41

首先,谢谢你的回复。

目前只是三个,以后还会有,而且加个字段得全部去改,这个也是挺麻烦的,不能全部推倒重来,只能尽可能的减少工作量

支持(0) 反对(0) 五少 | 园豆:183 (初学一级) | 2015-08-06 20:55
0

dal层共用 一套

业务逻辑层各顾各

ui各顾各

 

更好的做法是 各个项目分库 每个项目一个库 进行隔离 

项目分级 

然后做跨库处理 

同时 各个项目之间的 dal可共享 但是bll独立维护

小眼睛老鼠 | 园豆:2774 (老鸟四级) | 2015-08-07 13:42

首先,谢谢你的回复。

你说的分库是说,各层分到不同类库的意思?如果是,那我的项目是这么分的。不只是DAL的问题,还有model层,每次增,改字段,都要改。我是不太清楚,其他人,对于这种情况是怎么处理的,几个项目是怎么更好的共用一个底层,既能方便根据业务需求进行修改,又能方便部署发布

支持(0) 反对(0) 五少 | 园豆:183 (初学一级) | 2015-08-07 21:06

@五少: 实体分为 数据实体 数据实体和 数据库的表对应 所有项目公用一个实体 一个dal

但是bll独立出来 

实际上 bll 和dal的实体应该是 各自独立维护的

而且 view的实体 应该独立于 bll和dal 但是我们常规的设计并没有区分的这么细致

所以在你这个项目中 dal entity 共用就好了 

支持(0) 反对(0) 小眼睛老鼠 | 园豆:2774 (老鸟四级) | 2015-08-08 09:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册