现在的位置: 首页 > 综合 > 正文

关于软件项目的一点经验

2013年12月12日 ⁄ 综合 ⁄ 共 1304字 ⁄ 字号 评论关闭
在做了一些项目后,有点经验需要总结。
现在很多企业已经有了一套系统,现在针对需求变化这一套系统已经不能满足企业的需求,这时候需要制作一套新的系统。那么在新系统里面我们需要注意一些问题。
1、原系统里面的数据是否需要迁移到新系统里?如果不需要迁移,这个很好处理。如果需要迁移那么我们在迁移过程中需要注意到用户的对应、单位的对应。如原系统中用户张三的帐号为zhans,那么可能在新系统中叫zhansan,单位也是如此。
2、在制作新的系统中我们要注意到用户多单位也就是多身份的问题。现在很多企业使用Active Directory来管理用户,使用AD来管理用户,一个用户只能有一个单位也就是一个身份,根据此数据源生成的数据库也只有一个单位,这时候我们需要注意到如何来解决多单位的问题。
3、新制作的系统很可能是针对一个公司或部门的,如果总公司也有类似的系统,两个系统中是否需要进行通讯,通讯的协议是怎么规定的,这个需要在作需求分析的时候就要确定下来。
4、对于大型企业制作B/S项目,肯定会涉及到Web服务器的压力问题,这时候需要做集群来解决这个问题,这个需要我们在项目设计中就要考虑到这个问题,如何来设置Session服务器。并且,我们在开发项目的时候如何有效的使用Session。我觉得有一个原则,在Session中只保存值类型,而不要保存引用类型,并且万不得已需要保存引用类型,在使用完以后马上把此引用的Session清空,减轻服务器内存的压力。对于B/S开发,页面的请求时间是远远大于数据库连接的时间,基于这点考虑,可以让页面多连数据库,而不要多使用Session来保存数据。如使用Session来保存当前用户。我们可以保存一个User对象,来标识这个用户,我们也可以保存用户帐号,当我们需要使用到用户对象的时候,我们可以通过用户账户去访问数据库得到此用户对象。
5、对于代码需要定期的Review和重构。在很多项目中,我们都因为时间紧、项目重忽略这一点,但是这一点恰恰是不能忽略的,特别是很多外包公司派遣的人员,对内存这一块都理解不透,造成服务器内存的浪费。我参与的上一个项目就是这样的,一个函数返回来是一个DataSet对象,那个外包人员每次调用此函数之前都要DataSet ds = new DataSet()一把,然后才让ds被函数返回值赋值。如果经常对代码进行Review就不会存在这样的问题。重构的问题是让软件架构更合理,耦合性更低的一个重要手段。
6、在B/S项目开发中,谨慎的使用Cookie和QueryString。Cookie和QueryString都是有大小限制的。无限制的使用Cookie或QueryString,可能会超过限制得不到对应的值。
7、在使用事务时,事务回滚或提交了并不表示此事务的连接被关闭了,虽然事务的连接引用为空,一定要保存事务连接的引用,在事务回滚或提交之后要关闭连接。(SQL Server2005)。
8、在实例化对象时多使用using关键字,当然这个对象相关联的类需要实现IDispose接口,使用using关键字时,在代码离开using对应的}时会自动释放此对象,减轻内存压力。
 

抱歉!评论已关闭.