不要进行过度设计,某一层存在真的有意义吗?是否可以更简单。

曾经要对一个客户的老项目进行维护开发

这个项目单单数据的访问有把接口一起算进来有11层。 当时要修改这个项目的时候真的是要发疯。

Supplier.EIA_GetVenueAgentAccounts()
IEIAVenueAgent
EIAVenueAgent  .ListAgentAccounts()  
IEIAVenueRepository
EIAVenueRespository .ListAgentAccounts()   把datatable转成 实体
IEIADataFactory
EIADataFactory  ReadDB_AgentAccounts()
IEIASqlDatabase
SqlDatabaseEIAUK  DataTier层
ReadDB_SellerSettings
 ReadSP_SellerSettings
SqlDataAccess.ReadFromDatabaseSP
system method.

今天又一次碰到类似这种的项目,一个小项目,一看到就烦。吐糟一下。

时间: 2024-12-27 08:33:46

不要进行过度设计,某一层存在真的有意义吗?是否可以更简单。的相关文章

避免过度设计

许多文章都在强调不要过度设计自己的系统,但是没有道出个所以然来,所以本文列出一些经典的过度设计,希望能给你带来启发,在工程上做一些平衡,避免过度设计把我们推到另外一个复杂度上 1.Engineering is more clever than Business 工程师通常认为自己是最聪明的,这第一个错误容易让自己过于工程化.我们计划了100件事,业务方会提出我们之前没有考虑到的第101件.如果我们解决了100个问题,那么接下来还可能会有1000个问题.我们以为一切都是掌握之中,然而实际完全不知道

架构的坑系列:重构过程中的过度设计

架构的坑系列:重构过程中的过度设计 软件架构   2016-06-03 08:47:02 发布 您的评价:       5.0   收藏     2收藏 这个系列是 坑 系列,会说一些在系统设计,系统架构上的 坑 ,这些都是我想到哪说到哪,有像这篇一样比较宏观的 坑 ,后面的文章也会有到具体技术细节的(比如某个函数,某个系统调用) 坑 ,总之,到处都是坑,这些坑有些是我经历过的,有些是听说的,你也可以留言说说你遇到的 坑 . 这一篇,我们从 重构 这个场景来看看系统架构的设计中 过度设计 这个坑

坑系列 --- 重构过程中的过度设计

这个系列是坑系列,会说一些在系统设计,系统架构上的坑,这些都是我想到哪说到哪,有像这篇一样比较宏观的坑,后面的文章也会有到具体技术细节的(比如某个函数,某个系统调用)坑,总之,到处都是坑,这些坑有些是我经历过的,有些是听说的,你也可以留言说说你遇到的坑. 这一篇,我们从重构这个场景来看看系统架构的设计中过度设计这个坑. 首先,我们这里说的重构,和<重构:改善既有代码的设计>这本书中的重构不太一样,这是本好书,他主要说的是代码级别的重构,这种重构是需要在编码的时候时时刻刻进行的,更多的是一种编程

企业开发珠玑-过度设计

一.过度设计一般起源于对需求太多的计划,预测和猜想.要知道"计划赶不上变化"是普遍真理.所以因时,因地制宜才是最重要的.用国外传过来的词就是"敏捷开发". ------顺便吐槽一下"敏捷开发","迭代开发","瀑布流"这些争论.挺扯淡,其实都是要看人员,资金,时间等各方面的条件,那些贬此扬彼都是为理论而理论,或者别有用心. 二.怎么规避过度设计?不管时敏捷还是瀑布,都要避免过度设计.说些个人经验,架构设计的

2014年的项目的总结(二) 谨防过度设计 别为显示技术而搞复杂 杀鸡焉用牛刀?

14年最后一个项目无疑收获巨大,自己掌握的很多东西都得到了检验,而其中暴露出来的问题更让我得到教训,特别是开始走入的过度设计的误区,为了显示技术什么复杂用什么,现在想想真是后背发凉.这样的经历,像我这样的新手估计很容易犯吧. 上图 开始的架构 一开始做设计时,为了统一所谓的对外接口,解决耦合问题,防止action层与service层多对多的复杂关系,使用façade(外观模式)将对应模块的多个service做了下轻封装,想象中的层次关系是左边这样的,将左边换成右边,怎么看都是右边更顺眼,所以加了

用产品思维设计API(三)——版本控制,没有你想的这么简单

用产品思维设计API(三)--版本控制,没有你想的这么简单 前言 最近公司内部在重构项目代码,包括API方向的重构,期间遇到了很多的问题,不由得让我重新思考了下. - 一个优雅的API该如何设计? - 前后端分离之后,API真的解耦分离了吗? - 不断的版本迭代,API的兼容性该如何做? ps.这里所说的API仅为Web API,提供APP\WEB开发使用. 年前,我司内部的接口已经进入了一个完全的重构阶段,参考了市面上各大平台的API和文档,自己也总结出了很多的心得.这里向大家分享一下,接下来

PC版微信真的来了,让沟通更近一步吧!

原文地址:PC版微信真的来了,让沟通更近一步吧 昨日晚间,微信正式推出Windows版本,抢占PC端口,至此QQ开始失去最后一个独占领地,与微信展开厮杀.一直以来,QQ作为公司与用户之间的主要联系方式,在公司与用户.公司之间的办公领地占据主要优势,随着微信在PC端的入侵,这种优势正在消失. 1月27日晚间,微信 PC 版正式上线 1.0 beta 公测版 ,包含网页版的聊天.传文件等基本功能,去年12月份,微信曾进行过小范围内测. Windows版微信相对于QQ界面更加简洁,在登录方式上也进行了

基本上,把switch,用设计模式代替,肯定是bug和过度设计。想想,本来修改一个文件几行代码可以解决的问题,变成修改3-6个类才能实现一样的功能。不是傻是什么?

那些迷信设计模式的人,来修改一下这个方法吧.看看你最终的代码膨胀为几倍... public virtual PasswordChangeResult ChangePassword(ChangePasswordRequest request) { if (request == null) throw new ArgumentNullException("request"); var result = new PasswordChangeResult(); if (String.IsNul

LOGO设计中出现文字背后的意义

案例一: 当我们看到以上T恤中的中文时,我们的大脑会立刻做出如下系列反应:1. 这是什么?(图形 or 文字 )2. 文字所描述的基本内容是什么?3. 文字所描述的具体引申内容是什么? 我们不管设计者在当初设计时写入中文的目的是什么,但是我们不能忽视的是,所有的(请注意,我说的是所有的)中国人看到之后,心理活动都是以上我所描述的. 案例二: 将文字中的"三十一"替换成为阿拉伯数字"31"之后,虽然整段文字的描述内容没有发生改变,但是从视觉心理的角度,却发生了改变.