zoukankan      html  css  js  c++  java
  • 大约HR升级版的设计为组汇总

            该公司刚刚完成HR系统升级,系统从单一公司实现使用更多的公司使用变更。在一个月的时间升级,虽然很苦,但他们自己的系统架构的感觉获益,有以下的详细的见解:

    一、MVC还是非常重要

           系统框架是五年前用delphi设计的。採用的基类加扩展类的模式来扩充新业务表单,表单内充满了业务逻辑。因为没有採用MVC模式。以至于我看完并改完了10万源码。还未包括108支SQL脚本写的报表。若採用了MVC模式。我想我仅仅要改M层就能够了,当系统越大。模式就越重要,不然,系统改动会将软件开发由智力劳动变成体力劳动。

    在以后的开发中,我想仅仅要系统达到模块级了。就应该採用MVC模式设计。设计前要想清楚、看远一点。

    二、分层设计非常重要

         系统採用的是三层架构。这一点让我省了不了心,数据的提交(新增、改动、删除)封装在中间层,client仅仅要调用其方法就可以,採用的是client採用公文包方式,将变更的数据交给服务端,而不是一个client数据集相应一个服务端数据集的模式。提高了业务开发效率。

          两层的系统已经无法适应有多分支机构的公司了,即使你如今的公司没有分支机构。也不要用两层模式了,由于外地办公的须要会非常快成为你面临的问题。我们能够採用citrix的虚拟应用、虚拟桌面或window的远程桌面来公布我们的两层应用,但从我们的实际使用效果来看,都不如用户直接使用本地程序的体验好。并且还会添加了布署成本。最好直接採用web系统来建立系统。

    三、适度封装业务类非常重要

         系统曾经非常多方法都封装在一个类中,时间久了,就忘记了这个类中有这种方法。可是若将业务分类创建。那须要相关类的方法时。就会非常自然的想到这种方法的类。这样降低了方法的反复开发。

    四、版本号控制非常重要

         尽管这次改动由我一个人完毕,但在我须要的时候,我能够将某些功能交给其它同事来完毕,版本号控制给了我一个团队协同开发的选择。

    五、存储过程与函数的选择

          在改动大量存储过程时发现。里面有很多的insert into #tmp exec myprocedure的语句。若能将这样的语句改成insert into #tmp select xxx from dbo.fn_xxxx()的方式,存储过程代码会变得更易于阅读,调用更方便。所以在开发SQL脚本时。能用函数实现的,且返回数据集不是太大(多大算大,不超直播5000笔吧),表值函数作为我的第一选择。

    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    [DFNews] Nuix公司推出培训及认证体系
    [CFNews] Oxygen官方对于新版XRY与之冲突问题的官方解释
    [DFNews] FBI Documents Shine Light on Clandestine Cellphone Tracking Tool
    [CFNews] Be first to get Oxygen Forensic Suite 5.0 just before the End of the World!
    [DFNews] CelleBrite发布2013年移动设备取证趋势与预测白皮书
    [转载] Retrieving Data from an iPhone Voicemail Database
    [转载] 我们从未改变:弱密码仍是最常用的密码
    [DFNews] US students get cracking on Chinese malware code
    [转载] 25GPU cluster cracks every standard Windows password in <6 hours
    [手机取证] Forwarding SMS to Email on [Jailbroken] iOS
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4720677.html
Copyright © 2011-2022 走看看