• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

编写高质量代码改善C#程序的157个建议——建议143:方法抽象级别应在同一层次 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

建议143:方法抽象级别应在同一层次

看下面代码:

    class SampleClass
    {
        public void Init()
        {
            //本地初始化代码1
            //本地初始化代码2
            RemoteInit();
        }

        void RemoteInit()
        {
            //远程初始化代码1
            //远程初始化代码2
        }
    }

 

 Init方法本意要完成初始化动作,而初始化包括本地初始化和远程初始化。这段代码中,Init方法内部代码的组织结构是本地初始化直接运行在方法内部,而远程初始化代码却被封装为一个方法在这里被调用。这显然是不妥当的,应为本地初始化和远程初始化的地位是相当的。如果远程初始化代码作为方法存在,则本地初始化代码也应该作为方法存在。

所以,上面代码应该重构为:

    class SampleClass
    {
        public void Init()
        {
            LocalInit();
            RemoteInit();
        }

        void LocalInit()
        {
            //本地初始化代码1
            //本地初始化代码2   
        }

        void RemoteInit()
        {
            //远程初始化代码1
            //远程初始化代码2
        }
    }

 

 重构后的代码看上去清晰明了,所有的方法的抽象级别都在一个层次上,使读者一眼看上去就知道Init方法完成了什么样的功能。

 

 

转自:《编写高质量代码改善C#程序的157个建议》陆敏技


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【转】C#中检查网络是否连通的二种方法发布时间:2022-07-13
下一篇:
C# 拖放操作源码详解发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap