2006年初,我正式开始从事研发工作。那么第一件事情就是为我研发的产品规划一个美好的蓝图,制定一个Feature List。经过多方的学习和讨论,以及在领导在远景战略上的指示。我粗粗的规划了,大概具备以下的特征:
1、展示层数据扁平化,逻辑层数据结构化。
首先,我们考虑到了展示层的数据应该是扁平化的,没有对象的概念(如果把一张页面看成一个对象那就另当别论了)。我估计很多人看到这条理论就会在心里暗骂我是个白痴。呵呵,从现在主流的OO思想来说,这确实是不可思议,我也很理解。但是当时我们这样来设计是有我们自己的理由的。
理由一:我们公司主要开发信息管理类的软件,比如ERP等。从技术角度来说,就是让用户在WEB页面上录入一些信息,然后系统经过一定逻辑运算后,保存到数据库里,其后在将数据库的数据原封不动的展示给用户,或者经过ETL之后通过报表引擎或BI工具进行展示。在这样的前提下,从用户的角度来说,他们并不知道什么对象的存在,是我们这些软件设计人员通过对业务的理解提炼出来的。这个提炼过程没问题,也是必不可少的。那么在我们比较正确的提取对象之间,我们的工作都在没有对象的情况下进行。这个应该没有人反对了吧。简单明了点的说,我们在使用原型法第一次构建系统时,我们还没有对象。因为原型构建是在需求调研阶段,是与用户沟通的业务时做的辅助工具;在这个阶段下我们没有比较正确的对象或者根本没有对象。那么我们在做原型时,展示层的数据是不是扁平的?看到这里,大家估计有点明白为什么我的第一个平台特性“要求展示成数据扁平化”了吧!是的,在需求调研过程中的原型,要最大可能的保留到将来交付的产品中,减少软件的开发成本。很欣喜的告诉大家,我们公司现在能将最初的原型中70%的代码、特性等保留到最终交付的软件产品中。当然,为了满足这个原型保留的目标,光这么一个特性是不够的。还需要其他的工作。
理由二:用户眼中只有数据,没有对象。用户不关系软件系统后台的业务逻辑是怎样执行的,他们只关心在页面上有没有他们需要的数据。、
理由三:将当业务对象变更时,所产生的影响降到最低。因为,我们对业务的理解是逐步求精的。最了解需求的时候,是软件系统交付的时候。所以,这就导致我们前期提取的对象有可能是错误。在整个项目周期中,我们时常要调整对象。而对象调整后对软件系统的冲击是巨大的。所以,我们将展示层的数据扁平化,不至于受对象变更而导致重构。同时,从以前的项目经验告诉我,逻辑层的复用度比较高,而展示层的复用度比较低。换句话说,展示层的开发量比较大。所以要保证展示层一定的稳定性,将对象变更产生的风波隔离在逻辑层,这样变更时工作量就少很多了。
晕!午休时间没。先这样吧,待续……!
分享到:
相关推荐
"空管二次雷达——二次雷达原理" 本文将详细介绍空管二次雷达的原理和工作机理。 一、雷达基本概念 雷达(RADAR)的原意为无线电检测和测距(Radio Detection and Ranging),它起到对目标(空中飞行器)空中定位...
【原始凭证的填制——银行收支原始凭证的填制方法】 在会计工作中,原始凭证是记录经济业务发生或完成情况的书面证明,是会计核算的基础。对于涉及银行收支的业务,填制相应的原始凭证尤其重要,确保资金流动的准确...
随后,2005年IEEE成立了IEEE 802.1 AVB工作组,致力于制定一套基于以太网架构的音频/视频传输协议集,旨在解决数据在以太网中的实时性、低延迟以及流量整形等问题,同时也确保了与现有以太网技术的兼容性。...
二是两个无符号字节序列的相加操作,并将结果以字的形式存储。下面将逐一解析这两个任务的关键知识点。 ### 差分压缩处理 #### 任务描述 原始数据是一系列连续存放的21个八位有符号数,这些数采用补码形式存储。...
“考研数学——2020年数学二考试大纲.pdf” 本资源为2020年数学二考试大纲,涵盖高等数学和线性代数两大部分。高等数学部分包括函数、极限、连续、微分和积分五大章节。线性代数部分包括向量、矩阵、行列式、线性...
以2011—2013年沪深两市124家民营企业为研究样本,实证检验了高管团队特征对企业研发投入的影响,高管激励在高管团队特征对企业研发投入影响中所起的调节作用,以及从不同类别企业(高新技术企业与非高新技术企业)的角度...
在本项目中,"AndroidStudio————实战演练——仿美团外卖菜单"是一个专注于使用Android Studio开发的应用程序实战案例,目标是创建一个类似于美团外卖的菜单功能。这个项目涵盖了多个Android开发的关键知识点,...
《程序设计基础课件——C语言教程课件》是一份全面介绍编程入门及C语言的教育资源,适合初学者深入理解计算机基础知识以及C语言的核心概念。这份课件包含了多个章节,覆盖了从计算机硬件到C语言编程的广泛内容,旨在...
17. OSI参考模型的最底层:物理层是OSI模型的最底层,负责传输原始比特流。 18. Internet的协议选择:TCP/IP是Internet的基础协议。 19. 总线拓扑结构:在这种结构中,所有工作站都直接连接到一个公共通信通道。 ...
标题中的“光芒闪烁——适合2015年圣诞节 新年的ppt模板.rar”表明这是一个专为2015年圣诞节和新年设计的PPT模板资源,其中包含了一系列与节日主题相关的幻灯片设计元素,旨在帮助用户创建具有节日氛围的演示文稿。...
- 2002年和2003年连续两年入选《财富》“世界最受赞赏企业”榜单,其中2003年排名世界第9位。 - 2004年和2005年连续入选《财富》杂志世界500强企业。 #### 七、求职资源与支持 - HiAll团队提供的**2009求职大礼包**...
自动化传感器实验报告二金属箔式应变片——半桥性能实验参考 自动化传感器实验报告二金属箔式应变片——半桥性能实验是关于自动化传感器实验报告的第二部分,主要介绍金属箔式应变片的半桥性能实验。实验目的在于...
Word中蕴藏了很多强大的功能,可以让我们编排出漂亮的文档来,《文档之美——打造优秀...两方面结合,通过阅读《文档之美——打造优秀的Word文档》,读者不但能熟悉Word的使用,更能熟练地编排出美观大方的 Word文档。
专题二 三国两晋南北朝的民族交融与隋唐统一多民族封建国家的发展——2021年高考历史..pdf
标题“携手并进 迎战鸡年——喜庆鸡年年终总结 新年计划ppt模板.rar”揭示了这个压缩包文件的主要内容,它是一个用于年终总结和新年计划的PPT模板,设计风格与鸡年(2017年)的主题相契合,带有喜庆的元素。...
Java谜题1——表达式谜题 谜题1:奇数性 谜题2:找零时刻 谜题3:长整除 谜题4:初级问题 谜题5:十六进制的趣事 谜题6:多重转型 谜题7:互换内容 谜题8:Dos Equis 谜题9:半斤 谜题10:八两 Java谜题2...
标题"联想——转型之星.doc"揭示了联想在面对网络经济的挑战时,选择积极转型以适应新的市场环境。描述中提到的"老大来了",意味着联想作为行业领导者,开始涉足互联网领域,引领"传统IT流派"向网络时代迈进。 联想...
"2023年3月英语四级真题分析" 本资源提供了2023年3月英语四级考试的真题信息,涵盖了 Part I Writing、Part II Listening Comprehension 等几个部分。 Part I Writing 部分要求考生写一篇 account,总结他们在职业...
《三二分段协同育人高本衔接研究——以机械设计制造及其自动化专业为例》这篇文章深入探讨了高等教育与职业教育之间的紧密联系,特别是在机械设计制造及其自动化这个专业中的实践应用。"三二分段协同育人"是一种创新...
两轮平衡小车——稳如老狗,里面包含平衡小车的全部源代码和PID教程和PID调参教程,主控芯片为STM32F103C8T6,视频可以参考B站https://www.bilibili.com/video/BV16Y4y1v7Cr?spm_id_from=333.999.0.0