`
1000copy
  • 浏览: 74405 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

Best practise ——什么样的代码更应该精雕细琢

阅读更多

 

代码的价值不在本身大小和复杂度,而在于多少其他代码在用它。

 

我们的一个产品依然有很多代码采用了“点连接的长行代码”,比如权限检查代码:

 

// 检查当前用户是否有对象搜索的权限

AppUtils.UserInfo.CheckLimit(CarpaServer.Common.OperatorLimit.LIMIT_OBJECT_HISTORY_SEARCH) ;

 

这样的代码,尽管只有一行,但是冗余非常的多——每次都要重复的加入

AppUtils.UserInfo命名空间,CarpaServer.Common。如果不这样,就会需要using ;也是很麻烦的。

单独看这样的一行代码,很多人的反应是:这么点的差别何必改它呢?虽然不爽,但是也不是多大的问题。可是放眼整个项目,可以想得见,类似的代码必然大量出现。冗余因此会被放大很多倍数。

 

我查询了下这个产品的代码,在编码过程中(没有完成项目代码的时候)发现有990次使用。引用如此众多,优化也就是必要的了。

 

实现一个属性

Public  static  Limit.OBJECT_HISTORY_SEARCH

{

get{

return AppUtils.UserInfo.CheckLimit(CarpaServer.Common.OperatorLimit.LIMIT_OBJECT_HISTORY_SEARCH) ;

}

}

 

其他使用的地方只要这样调用就行了:

Limit.OBJECT_HISTORY_SEARCH

不仅仅权限,还有配置类,也是到处都在用的代码,比如:

 

代码类型:配置,包括 SysDataSysData1UserConfig

方法:AppUtils.CheckUserConfig("userconfig", "btypeall", "1") == "0"

新方法: public bool UserConfig.BtypeAll

 

在配置类代码内,好处不仅仅是简洁,还有后者没有字符串的出现,都是强类型的代码,也不必使用和字符串比较这么低级的操作,用户使用起来就更舒服。

 

配置代码,权限代码的特点是到处都在使用,一旦写就,以后也就不好修改了——这也是分销一直没有动它的原因。因此,这样的简单封装,一定要一开始就做对。幸运的是,这样的事情一次做对并不困难。

 

代码质量不仅仅影响阅读效果,还会影响心情,对做编码的程序员来说,心情成本是非常值得重视的。

 

 

0
1
分享到:
评论
4 楼 1000copy 2010-06-11  
fansfirst2008 写道
背后的设计原则和一步一步的重构趋向模式
我正是我的愿望,thx
3 楼 fansfirst2008 2010-06-11  
我就很喜欢楼主的博客!让我体会到细节决定成败的道理!
就象一步到位的设计模式一样,只多是好看
而我觉得真正的美妙之处在于:背后的设计原则和一步一步的重构趋向模式
而楼主正是如此做到的
2 楼 1000copy 2010-06-10  
to javeeyevip :
show ,don't just tell.
(原谅我用英文回复,因为它比较贴切)
1 楼 javaeyevip 2010-06-10  
分享精神值得赞赏,但这样检查权限的方法就显得太低级了。

相关推荐

    SAP best practise part 3

    SAP best practise part 3

    practise-json 最新代码

    practise-json 最新代码practise-json 最新代码practise-json 最新代码practise-json 最新代码practise-json 最新代码practise-json 最新代码practise-json 最新代码practise-json 最新代码practise-json 最新代码...

    SAP best practise part001.

    SAP Best Practise part1

    sap best practise 50097738_SAP_BP_Baseline_Package_v1-V2.603

    sap best practise 50097738_SAP_BP_Baseline_Package_v1-V2.603

    db2 xml best practise

    - **避免代码页转换**:在DB2和应用程序之间避免不必要的代码页转换,减少数据处理的复杂度。 总之,DB2 pureXML为管理和查询复杂的XML数据提供了强大的工具和方法。通过遵循上述最佳实践,可以显著提升XML数据的...

    j2ee best practise

    通过分解应用为独立的服务或组件,可以更好地管理和测试每个部分。例如,使用EJB(Enterprise JavaBeans)进行业务逻辑处理,Servlet和JSP处理用户界面,以及JMS(Java Message Service)进行异步通信。 2. **持久...

    Oracle 10g HA Best Practise

    本篇文章基于《Oracle 10g HA Best Practise》一书的关键信息,旨在深入探讨Oracle 10g数据库在高可用性(High Availability, HA)方面的最佳实践。书中介绍了如何通过Oracle 10g的高级功能来减少计划维护操作期间的...

    dojo toturial with design best practise

    总之,《dojo toturial with design best practise》是Dojo开发者的重要参考资料,它将帮助你深入了解Dojo框架,并教会你如何结合设计模式来编写高效、可维护的代码。通过学习和实践书中的例子,你将能够更好地应对...

    Best Practise for Peer Code Review

    ### 同行代码审查最佳实践 #### 概述 代码审查是软件开发过程中不可或缺的一环,它能够帮助团队发现潜在的缺陷、提高代码质量并促进团队成员之间的协作与学习。同行代码审查作为软件工程中的一个关键环节,对于...

    Fujitsu ASM best Practise

    - **附加技术参考**:包含了更多关于Oracle ASM、富士通ETERNUS存储系统以及其他相关技术的信息,为用户提供全面的技术支持。 综上所述,通过遵循这些最佳实践,可以充分利用Oracle Database 10g的ASM特性和富士通...

    Best Practise for Adobe Designer

    5. **测试和迭代**:完成初步设计后,应该进行全面的测试,确保所有功能正常工作,并根据反馈进行必要的调整和优化。 6. **确保版权合规**:如果在表单中使用了第三方的图片或图标等元素,必须确保已获得相应的授权...

    HPSM 9.4 Best Practise

    通过遵循上述提到的最佳实践,组织可以充分利用HP Service Manager 9.4的强大功能,实现更高效的服务管理和客户支持。无论是提高服务水平还是增强内部协作,HPSM 9.4都能够为企业带来显著的价值。

    IBM TAM TIM step by step lab4(从安装到配置 应用尽有) best practise

    在这个"IBM TAM TIM step by step lab4(从安装到配置 应用尽有) best practise"中,我们将深入探讨如何进行这两个组件的安装、配置以及应用。 首先,我们来看TAM TAM(Tivoli Access Manager)的安装和配置。TAM 是...

    IBM TAM TIM step by step lab1(从安装到配置 应用尽有) best practise

    - **安装模式:** 选择自定义安装模式(`Custom`),以便更好地控制安装过程中的选项。 **注意事项:** - 不需要安装的组件包括: - DB2 V9.1 - 嵌入式WebSphere应用服务器 - 代理服务器 - Tivoli Directory ...

    IBM TAM TIM step by step lab3(从安装到配置 应用尽有) best practise

    这些应用程序的源代码可以在指定路径下查看。 3. **建立测试用户**: - 在TAM上创建用户以进行测试,首先我们需要将用户数据导入到TAM使用的LDAP目录中。实验文件提供了预配置的`PortalUsers1.ldif`和`...

    IBM TAM TIM step by step lab5(从安装到配置 应用尽有) best practise

    总结来说,IBM TAM TIM 实验室提供了一套全面的指南,涵盖了从系统初始化到日常管理的各个方面,通过实践来掌握这些步骤,用户可以更好地理解和操作IBM的威胁分析和管理解决方案。这份最佳实践指南对于希望深入理解...

    IBM TAM TIM step by step lab2(从安装到配置 应用尽有) best practise

    【IBM TAM TIM 实验室指南:从安装到配置的最佳实践】 本指南将深入介绍IBM Tivoli Access Manager (TAM) 和 Tivoli Identity Manager (TIM) 的安装和配置过程,涵盖了从基础环境搭建到功能应用的全面操作。...

    Siebel-Eim-Best-Practise1.zip_siebel

    **Siebel EIM最佳实践详解** Siebel EIM(Enterprise Interface Manager)是Oracle Siebel CRM系统中的...对于已经有一定基础的用户,这份"Siebel-Eim-Best-Practise1.zip_siebel"资料将是进一步提升技能的宝贵资源。

    practise练习

    在IT行业中,实践是提升技能的关键。"practise练习"这个标题暗示了我们即将探讨的是通过实际操作来增进IT技术的...因此,无论你是在学习哪个IT分支,都应该积极参与"practise练习",将理论知识转化为实实在在的技能。

    Data_Protection_Best_Practices.pdf

    本文将介绍实现数据、安全、可靠、弹性和隐私的所需安全水平的措施,使读者能够更容易地应用现有的最佳实践。 数据保护最佳实践包括以下关键知识点: 1. 数据分类:数据保护措施应覆盖所有需要保护的数据类型。 2...

Global site tag (gtag.js) - Google Analytics