博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ERP程序的公共代码中出现的问题 过度封装不方便维护
阅读量:7254 次
发布时间:2019-06-29

本文共 1093 字,大约阅读时间需要 3 分钟。

在设计一个ERP程序时,提取公共的代码到一个通用类型库中是必要的。这样可以减少代码重复,提高代码利用率。

但是,做任何事情都要有个度,有些公共的代码引起了过度封装,反而不利于代码的理解。

举例说明如下

public class ConfigHelper{        ///  /// Gets whether the specified path is a valid absolute file path. ///          /// Any path. OK if null or empty.         static public bool IsValidPath(string path)        {            Regex r = new Regex(@"^(([a-zA-Z]:)|(\))(\{1}|((\{1})[^\]([^/:*?<>""|]*))+)$");            return r.IsMatch(path);        }        public static string GetString(string key)        {            return System.Configuration.ConfigurationManager.AppSettings[key];        }}

第二个方法 GetString,我以为它的封装是不必要的。调用.NET框架的代码只有一行或简单的数行,对它进行封装,反而会引起理解上的障碍。

再来看另一个方法,对它的封装,要依据具体的使用场景。

public static decimal GetDecimal(string key){            decimal value = default(decimal);            if ((decimal.TryParse(GetString(key), out value)))            {                return value;            }            else            {                return 0m;            }}

这个方法实现的功能是:把一个字符串转化为数字类型,如果它的值不为数字类型的,则返回默认值0。

根据需要的场景,这个封装有可能是有必要的,可以减少很多重复的代码。

欢迎大家给出意见,我觉得这个GetDecimal方法也是多余的,不必要的封装。

转载地址:http://qnzdm.baihongyu.com/

你可能感兴趣的文章
Sql Server 2008R2版本中有关外键Foreign的使用
查看>>
mysqldump导入导出mysql数据库
查看>>
js小记 function 的 length 属性
查看>>
jQuery 遍历函数
查看>>
Android的消息机制: Message/MessageQueue/Handler/Looper
查看>>
ASP.NET MVC学习系列(一)-WebAPI初探
查看>>
Gson简要使用笔记
查看>>
windows批量创建用户
查看>>
category使用 objc_setAssociatedObject/objc_getAssociatedObject 实现添加属性
查看>>
"org.jboss.netty.internal.LoggerConfigurator".DESCRIBED is already registered 的解决办法
查看>>
字符串交替打印 操作方法
查看>>
Ubuntu 用vsftpd 配置FTP服务器
查看>>
java中的io系统详解(转)
查看>>
iOS开发- UICollectionView详解+实例
查看>>
android 从零单排 第一期 按键显示helloworld
查看>>
Get buck-boost performance from a boost regulator
查看>>
串行通信------字符串发送和十六进制发送
查看>>
Linux_Command
查看>>
安全DNS
查看>>
Android应用程序窗口(Activity)的视图对象(View)的创建过程分析
查看>>