`
ske3
  • 浏览: 10501 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

我的两年研发工作之路(二)——最原始的设想1

阅读更多

    2006年初,我正式开始从事研发工作。那么第一件事情就是为我研发的产品规划一个美好的蓝图,制定一个Feature List。经过多方的学习和讨论,以及在领导在远景战略上的指示。我粗粗的规划了,大概具备以下的特征:

    1、展示层数据扁平化,逻辑层数据结构化。

     首先,我们考虑到了展示层的数据应该是扁平化的,没有对象的概念(如果把一张页面看成一个对象那就另当别论了)。我估计很多人看到这条理论就会在心里暗骂我是个白痴。呵呵,从现在主流的OO思想来说,这确实是不可思议,我也很理解。但是当时我们这样来设计是有我们自己的理由的。

    理由一:我们公司主要开发信息管理类的软件,比如ERP等。从技术角度来说,就是让用户在WEB页面上录入一些信息,然后系统经过一定逻辑运算后,保存到数据库里,其后在将数据库的数据原封不动的展示给用户,或者经过ETL之后通过报表引擎或BI工具进行展示。在这样的前提下,从用户的角度来说,他们并不知道什么对象的存在,是我们这些软件设计人员通过对业务的理解提炼出来的。这个提炼过程没问题,也是必不可少的。那么在我们比较正确的提取对象之间,我们的工作都在没有对象的情况下进行。这个应该没有人反对了吧。简单明了点的说,我们在使用原型法第一次构建系统时,我们还没有对象。因为原型构建是在需求调研阶段,是与用户沟通的业务时做的辅助工具;在这个阶段下我们没有比较正确的对象或者根本没有对象。那么我们在做原型时,展示层的数据是不是扁平的?看到这里,大家估计有点明白为什么我的第一个平台特性“要求展示成数据扁平化”了吧!是的,在需求调研过程中的原型,要最大可能的保留到将来交付的产品中,减少软件的开发成本。很欣喜的告诉大家,我们公司现在能将最初的原型中70%的代码、特性等保留到最终交付的软件产品中。当然,为了满足这个原型保留的目标,光这么一个特性是不够的。还需要其他的工作。

    理由二:用户眼中只有数据,没有对象。用户不关系软件系统后台的业务逻辑是怎样执行的,他们只关心在页面上有没有他们需要的数据。、

    理由三:将当业务对象变更时,所产生的影响降到最低。因为,我们对业务的理解是逐步求精的。最了解需求的时候,是软件系统交付的时候。所以,这就导致我们前期提取的对象有可能是错误。在整个项目周期中,我们时常要调整对象。而对象调整后对软件系统的冲击是巨大的。所以,我们将展示层的数据扁平化,不至于受对象变更而导致重构。同时,从以前的项目经验告诉我,逻辑层的复用度比较高,而展示层的复用度比较低。换句话说,展示层的开发量比较大。所以要保证展示层一定的稳定性,将对象变更产生的风波隔离在逻辑层,这样变更时工作量就少很多了。

    晕!午休时间没。先这样吧,待续……!

分享到:
评论
4 楼 ske3 2008-10-31  
据偏平化是什么意思啊,能给具体描述一下吗
lsh_8927 写道

数据偏平化是什么意思啊,能给具体描述一下吗

所谓扁平化的数据,它是与结构化相对的。比如说:A,B,C,D四个数据,如果我们将它们以对象的方式进行操作,可能会变成Object1.A,Object1.C,Object2.B,Object2.D,这就是我们所谓的结构化,也就是对象。反之,我们对这四个数据不进行对象的抽取,那么这四个数据就是扁平化的。

呵呵,不知道我说清楚了没。
3 楼 lsh_8927 2008-10-31  
数据偏平化是什么意思啊,能给具体描述一下吗
2 楼 youhere2 2008-10-29  
不错,说的比较详细.
1 楼 shrewd36 2008-10-29  
看了有收获,期待更新

相关推荐

    专题资料(2021-2022年)0303原始凭证的填制——银行收支原始凭证的填制方法.ppt

    【原始凭证的填制——银行收支原始凭证的填制方法】 在会计工作中,原始凭证是记录经济业务发生或完成情况的书面证明,是会计核算的基础。对于涉及银行收支的业务,填制相应的原始凭证尤其重要,确保资金流动的准确...

    关爱留守儿童工作总结两篇——【范文】..doc

    关爱留守儿童工作总结两篇——【范文】..doc

    ——————PC——————(2)

    二是两个无符号字节序列的相加操作,并将结果以字的形式存储。下面将逐一解析这两个任务的关键知识点。 ### 差分压缩处理 #### 任务描述 原始数据是一系列连续存放的21个八位有符号数,这些数采用补码形式存储。...

    高管团队特征对企业研发投入影响的研究——基于高管激励的调节作用

    以2011—2013年沪深两市124家民营企业为研究样本,实证检验了高管团队特征对企业研发投入的影响,高管激励在高管团队特征对企业研发投入影响中所起的调节作用,以及从不同类别企业(高新技术企业与非高新技术企业)的角度...

    AndroidStudio————实战演练——仿美团外卖菜单

    在本项目中,"AndroidStudio————实战演练——仿美团外卖菜单"是一个专注于使用Android Studio开发的应用程序实战案例,目标是创建一个类似于美团外卖的菜单功能。这个项目涵盖了多个Android开发的关键知识点,...

    灰色理论与方法——提要·题解·程序·应用

    3. **灰色预测模型**:灰色预测模型(GM模型)是灰色理论中最常用的工具之一,主要用于处理非平稳序列的预测问题。常见的有GM(1,1)模型,它基于一阶微分方程构建,适用于线性趋势的序列预测。 4. **灰色决策**:在...

    众妙之门——JavaScript与jQuery技术精粹

    《众妙之门——JavaScript与jQuery技术精粹》出自世界知名Web设计网站Smashing Magazine,其中的文章是来自全球顶级设计师的精华总结。全书共分为两大部分,第一部分阐述JavaScript的实战经验,共7章,内容涉及...

    光芒闪烁——适合2015年圣诞节 新年的ppt模板.rar

    标题中的“光芒闪烁——适合2015年圣诞节 新年的ppt模板.rar”表明这是一个专为2015年圣诞节和新年设计的PPT模板资源,其中包含了一系列与节日主题相关的幻灯片设计元素,旨在帮助用户创建具有节日氛围的演示文稿。...

    Android源码——数据库SQLite.zip

    这个压缩包文件"Android源码——数据库SQLite.zip"可能包含了关于Android中SQLite数据库的源码分析、使用示例以及相关的图像资源,如1-120912223R80-L.png,可能用于解释或展示SQLite在Android中的工作原理。...

    专题二 三国两晋南北朝的民族交融与隋唐统一多民族封建国家的发展——2021年高考历史..pdf

    专题二 三国两晋南北朝的民族交融与隋唐统一多民族封建国家的发展——2021年高考历史..pdf

    Java谜题Java谜题1——表达式谜题

    Java谜题1——表达式谜题 谜题1:奇数性 谜题2:找零时刻 谜题3:长整除 谜题4:初级问题 谜题5:十六进制的趣事 谜题6:多重转型 谜题7:互换内容 谜题8:Dos Equis 谜题9:半斤 谜题10:八两 Java谜题2...

    时间序列聚类——十年回顾

    ### 时间序列聚类——十年回顾 #### 一、引言 在数据挖掘领域,时间序列聚类作为一种重要的无监督学习方法,在处理大规模未标记数据集时具有独特的优势。随着云计算和大数据技术的发展,时间序列数据变得越来越...

    天线理论基础——任朗

    其中,偶极子是最常见的天线类型,由两个等长的导体构成,可以是直立的或水平的。单极子天线则是偶极子的一半,通常与接地平面一起使用。抛物面天线则通过反射电磁波,将信号聚焦到一个焦点,常用于卫星通信。螺旋...

    机器学习——逻辑回归logistic实现二分类(matlab)

    模型的输出经过一个Sigmoid函数(或逻辑函数)转换,使得输出值在0到1之间,这正好对应于二分类问题中的两个类别概率。Sigmoid函数表达式为: \[ g(z) = \frac{1}{1 + e^{-z}} \] 其中,\( z = w^T x \),\( w \)...

    三二分段协同育人高本衔接研究——以机械设计制造及其自动化专业为例.rar

    《三二分段协同育人高本衔接研究——以机械设计制造及其自动化专业为例》这篇文章深入探讨了高等教育与职业教育之间的紧密联系,特别是在机械设计制造及其自动化这个专业中的实践应用。"三二分段协同育人"是一种创新...

    两轮平衡小车——稳如老狗

    两轮平衡小车——稳如老狗,里面包含平衡小车的全部源代码和PID教程和PID调参教程,主控芯片为STM32F103C8T6,视频可以参考B站https://www.bilibili.com/video/BV16Y4y1v7Cr?spm_id_from=333.999.0.0

    新视野英语单词1——5

    新视野英语单词1——5囊括了从第一单元到第五单元的单词学习资料,每个单元又分为两个部分,分别以"a"和"b"命名。虽然具体的内容尚未明确,但从命名推测,这两个部分可能是按照不同的主题或学习侧重点进行划分。这种...

    Qt和C/C++实现的可视化景点旅游信息系统——包含详细注释与txt说明文件

    5. 该项目包含 求两个景点间的最短路径的算法——Floyd 6. 该项目包含 给出道路建设(最小生成树)的算法——Kruskal 7. 该项目包含 自定义地图文件读入与写出的算法 阅读建议: 在下载压缩包后,务必细看 .txt 说明...

    92020——收藏资料.寓言两则 .ppt

    寓言两则 .ppt》作为一份汇集了经典寓言的演示文稿,收录了两个寓意深远的故事——“亡羊补牢”和“南辕北辙”,它们不仅承载着历史文化的精华,更是在现代社会中具有指导意义的教诲。 “亡羊补牢”是一个家喻户晓...

Global site tag (gtag.js) - Google Analytics