程序开发框架设计心得

          个人在公司中主要负责公司核心框架的开发多年,公司所有程序人员的所有项目,都依附于该框架作为开发平台展开开发工作。近期有一些新来的程序人员问及我怎样才能开发出一套好的框架?思路是什么?在此我就把我自己的一些想法和心得跟大家简单的分享一下(不包含实际的技术实现),如果有不合理的地方请大家见谅!

        在开始一套框架的开发之前,首先要本着几个原则进行构架和设计:跨平台,高效率,最简便,高扩展,高标准,高产能等。接下来针对以上几个原则进行展开说明。

      

跨平台:

           并非传统意义的java语言的跨平台特性“一次编写到处运行”。而是跨客户端平台和跨客户端语言。即服务端框架

一次编写,客户端任意组合。具体意义如下,

          服务端制定了一套严格的独立于任何客户端技术的标准,即与客户端技术0耦合。无论客户端是web形式,还是WinForm,无论是运行在PC上还是运行在手持终端上,无论客户端实现的语言是java,javascript还是C#,还是VB......只要遵照统一的标准都可以与服务端无缝结合。从另外一个角度实现了真正意义上的跨语言,跨平台。

          这区别于其他公司的核心框架,其他公司的核心框架有着语言的局限性,是Java语言的就只能采用java相关的技术体系,是C#语言就只能采用C#相关的技术体系。

          实际项目应用中,根据需求,有的需要在winform下运行,有的需要在网页上运行,有的需要在pda上运行,还有的需要这几种形式相结合,那么该框架完全适用各种需求,而服务端框架代码不需要进行任何的改动。

 

 

高效率:

 

        根据多年的项目经验,把项目中固有的通用的功能抽象出来,作为框架的功能。这样很多繁琐的重复的工作,无需程序员通过手工编写代码来完成,而只需要在框架上简单的勾选就可以完成。

         简单的对比一下,如果采用传统的ssh架构,对一个数据表中的数据做一个简单的数据编辑和显示功能,一个熟练的程序员至少需要20-40分钟才能完成,而采用框架只需要2分钟。效率高出10到20倍。如果再复杂一些的包含主子表格的界面,这效率更加明显。

 

最简便:

 

        作为一个企业,新员工的培养会占用很大一部分时间成本,那么在架构该框架时,我们也考虑到了这一点,因此整个框架的使用,也以最简单为目标,使得基础非常薄弱的新员工能够迅速上手以最快的速度快速的投入实际开发工作当中节约企业成本。常规培养的时间成本在一周左右。

 

高扩展:

 

        世界上没有万能的框架,因此程序员在使用该框架开发时,根据不同项目的特殊情况,可能会有一些个性化的需求。那么在构建框架时也充分的考虑到这一点,因此整个框架的各个功能环节都预留了标准接口给开发人员,开发人员可以在这些预留的接口上任意的扩展,实现个性化的功能。例如,可以在任何一个界面上随意扩展需要的按钮,扩展显示内容。注意这里是“扩展”而不是生硬的,随意的添加,因为这种扩展也都遵循着统一的标准,这样使得程序员在开发时非常灵活,这些扩展的功能在界面表现上就如同框架本身的一部分,显得非常自然。

 

高标准:

 

        框架的终极目标就是“建立一套统一的标准,而所有程序员都遵照这套标准来开发”。在构建框架时,制定了一套严格的标准,包括变量的定义,数据库字段的定义,数据库操作方式,字符串连接符等等。而这些标准在代码上的表现,都是通过,枚举,常量,继承等方式来实现。这样100个程序员写出来的代码都一样,当人员流动时,项目交接上毫无困难,控制了项目风险。

 

高产能:

 

        正因为框架的以上特点,大大简化了程序员开发的难度,使程序员从繁复的重复劳动中解脱出来,无论是菜单,权限,程序界面等都通过框架自动化完成,那么程序员只需要把注意力放在业务逻辑上,同样的项目采用ssh架构需要3个月能够完成的项目,如果通过核心框架来完成,只需要1个月甚至更少的时间,加快了开发效率。甚至于很多程序员可以依托于这个平台自己独立的完成项目,从而节约了管理成本提高了产能。

 

延伸:

        以上就是在实际工作中总结出来的一些有关架构的心得。另外随着对架构的深入理解,目前正酝酿一种更加先进的架构模式,即实现拖拽式开发,所谓的拖拽式开发就是指程序员可以依托既有的框架,通过可视的拖拽图形或者控件的形式来实现项目的开发,无论是界面表现还是业务逻辑,代码根据实际的拖拽结果自动生成,而不需要程序员手工编写代码,而完全把注意力放在业务逻辑的准确性上。当然还有一些其他的先进理念也需要集成在既有的框架中,这里不再赘述。




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值