关于开发的一些注意事项

在Review代码的过程中发现一些问题,这里集中和大家说下:

1.注释不全,以后会强制要求大家把注释补上。使用时先将XML的勾打上,将自己的注释都补上后,在将XML勾去掉。防止修改期间大家都不能工作。

2.在表现层有实现业务逻辑

发现许多地方在界面上new ParameterClass类,拼接业务逻辑。这点需要再次强调,不允许在表现层实现业务逻辑。所以业务逻辑放到BLL、Engine、或Services中去。

3.不要将接口申明成全局变量,如果是全局变量的话,下划线后的首字母大写

        BiaoWuCKService.IBiaoWuCK _biaoWuCK = ServiceProxyFactory.Create<BiaoWuCKService.IBiaoWuCK>("BasicHttpBinding_IBiaoWuCK");

4.不要在应用层有多余的代码

        public DataSet COMMON_SELECTANYTABLE(string V_OUTPUTFIELD, string V_TABLENAME, string V_WHERECONDITION, string V_GROUPBYEXPRESSION, string V_ORDERBYEXPRESSION, out int? V_EXCEPTION)
        {
            StoredProcedure.Common _common = new StoredProcedure.Common();
            return _common.COMMON_SELECTANYTABLE(V_OUTPUTFIELD, V_TABLENAME, V_WHERECONDITION, V_GROUPBYEXPRESSION, V_ORDERBYEXPRESSION, out V_EXCEPTION);
        }
        public DataTable WF_GetWorkList(string account)
        {
            DataTable dt = null;
            DataSet ds = WorkFlow.GetWorkList(account);
            if (ds.Tables.Count > 0)
                dt = ds.Tables[0];
            return dt;
        }

5.Engine和BLL要求都是静态方法,这样应用层就可以直接调用静态方法。关于静态非静态的讨论我们不展开,这里只是这么要求。

        public bool CuiJiaoDJ(CuiJiaoDJDTO dto, out string message) 
        {
            CSMS2.Engine.CuiJiaoSSEngine engine = new Engine.CuiJiaoSSEngine();
            return engine.CuiJiaoDJ(dto, out message);
        }

6.关于业务逻辑的书写大家不是很明确,这里在说一下

业务逻辑现在分在BLL、Engine、Service中。一些核心的表现在归属在engine中,S、AS开头的一些系统相关的表放在Service中,剩余的放在BLL中。BLL按照功能模块划分。现在项目是按照流程来分BLL的,具体应该已经跟大家说了。

7.写引擎时会发现代码越写越多,这里大家可以按照业务对引擎再次进行划分,或者按照公有方法、私有方法、内部类等进行一下划分。使得代码看起来更加清晰。

原文地址:https://www.cnblogs.com/zyizyizyi/p/2886694.html