(说明:标题所说的“类”,并不一定是指面向对象的类,而是泛指有着特定作用的代码文件)
我写代码有个习惯,在一个工程建立之初,首先会建一个“工具代码”目录,在这个目录里会放入多种工具“类”,比如提供文件操作的,字符串转换的,dump文件输出(windows),注册表操作(windows),计时器服务......等等。别小看这些工具类或方法,举个简单的例子,就拿ANSI和UNICODE字符的转换来说,绕晕了不少人吧。文件操作,很多工程都会遇见吧,何不把其封装成一个工具“类”,随时加入各个工程进行使用,多的就不举例了,总之可以把我们认为能提供某种功能的代码实现都封装成工具类供其他工程调用,你想想看,这像不像一把瑞士军刀,开始也许只有刀子和起子,慢慢的变成一把集有各种工具的超级军刀,怎么样,是不是用起来很爽。
但是,请注意,要是你用一把劣质的军刀,割东西刀刃坏了,剪东西剪不动,......你肯定会发出“坑爹”的抱怨。写工具类也是如此,这些工具类一定要是高质量的,稳定的,健壮的,最好还是跨平台的。
下面我来谈谈我写工具类的一些经验:
经验1:不要重复造轮子,找别人写好的。注意了,不是说那些从网上随便搜来的,当然也不排除有高质量的。我呢,喜欢在著名的开源代码里或者有些泄露的著名商业代码中搜索含有util关键字的代码文件,很壮观,一堆堆的,下面就是自己对这些工具类进行取舍了,反正我还是比较相信高质量的开源代码和商业软件的,一般取之就用,目前还未发生过不良反应。
经验2:能跨平台的的尽量跨平台,毕竟我们现在都比较重视跨平台开发了,我呢,多喜欢用STL,boost,或者posix接口实现。至于依赖于系统API的,加上系统标识的条件编译就行了;
经验3:方法接口参数和返回值要有普遍性,除去逻辑设计外,C++模板是个好东西;
经验4:对于自己写的工具类一定要进行单元测试,你想想,你的工具类也许要提供整个项目,别的项目,给别人,整个项目组,或者更多的人使用,你允许它出错吗?
经验5:多积累,在平时的工作中和学习中积累一个个功能方法,慢慢扩大你的工具类库;
当你有这么一把军刀时你就酷毙了。
本文出自 “永远的朋友” 博客,原始地址为:http://yaocoder.blog.51cto.com/2668309/846106
分享到:
相关推荐
9. **多窗口编辑**:通过Window -> New Window创建新窗口,可以同时编辑多个文件,提高工作效率。 10. **快速实现接口**:在接口方法上使用Ctrl + 1,然后选择“Override Methods”,可以快速为类生成接口方法。 ...
本文主要探讨如何提高逆变器的整机转换效率,从电路设计的角度出发,针对关键组件进行优化。 首先,逆变器的整机转换效率定义为逆变器输出的交流功率与输入的直流功率之比,公式为:逆变器转换效率=逆变器输出功率/...
傲游浏览器是一款深受上班族喜爱的浏览器,它拥有许多原生功能,可以显著提高工作效率,无需依赖外部插件。以下就是傲游浏览器中十个能帮助提升工作效率的功能介绍: 1. **网页截图**: - 傲游浏览器内置了强大的...
提高太阳能电池的转换效率是科研领域的重要课题,因为这直接影响到太阳能电力系统的经济性和可持续性。本文档将深入探讨提高太阳能电池转换效率的关键技术。 1.1 课题研究背景 随着全球对清洁能源需求的增长,...
它们是一系列静态方法的集合,可以处理常见的任务,如数据转换、UI操作、网络请求等,从而避免重复编写相似代码,提高代码的可复用性和项目的开发效率。在"Android-一个Android基础的工具类"中,我们可以期待找到一...
在当前的数字化时代,人工智能(AI)已经成为提升个人和团队工作效率的重要驱动力。本文将详细介绍六款基于AI的工具,它们能显著优化你的工作流程,提高生产力。 首先,ChatGPT是一个革命性的语言模型,它能够理解...
它拥有丰富的标准库和强大的第三方库,能够帮助用户编写简洁、高效的代码来执行日常重复性任务,从而大大提高工作效率。在"python-task-automation"项目中,我们可以看到一系列针对自动化任务的Python脚本。 首先,...
本文将详细介绍一个关于“高效率的人民币金额转大写程序php类”的知识点,它旨在帮助开发者快速、准确地将数字形式的人民币金额转换...对于需要处理大量财务数据的开发者来说,掌握并运用这类工具能显著提升工作效率。
总结,数据库表转实体类和DTO是Java后端开发中提高效率的重要步骤。通过使用特定工具,可以自动化完成这个过程,减少手动编码的工作量,同时确保代码与数据库表结构的一致性。对于DTO的使用,应考虑其在系统架构中的...
这种方式大大提高了开发效率,减少了手动编写实体类的工作量,同时也降低了出错的可能性。 “嘻嘻,方便,实惠哦。”这句话是对这个功能的评价,它表明这个工具或方法不仅简单易用,而且经济高效,对于开发者来说...
"Oracle表转实体类工具"是一种实用的开发辅助软件,它能自动化地将Oracle数据库中的表结构转换为Java实体类代码,极大地提高了开发效率。这个工具能够自动分析表的字段、数据类型,并生成对应的Java属性,同时还能...
它提供了一系列高效的功能和工具,可以帮助开发者提高编程效率。以下是从标题和描述中提炼出的十个Visual Studio使用技巧: 1. 快捷键定制:Visual Studio支持自定义快捷键,你可以根据自己的习惯设置快捷键,减少...
5. 提高开发效率: 在实际开发中,经常需要处理API返回的JSON数据或者从数据库中读取的JSON格式数据。手动创建对应的Java模型类既耗时又容易出错。GsonFormat通过自动化这一过程,使得开发者可以专注于业务逻辑,而...
5. **普及办公自动化**:秘书工作应向办公现代化和自动化转型,利用计算机和通信技术提高工作效率,实现文档管理和信息处理的高效化。 6. **秘书工作创新**:秘书应积极探索工作、制度和内容的创新,以更好地应对...
1. **光电转换原理**:解释硅太阳能电池的工作原理,包括光吸收、电子-空穴对的生成、电荷分离和收集过程,以及这些过程如何影响光电转换效率。 2. **透明玻璃陶瓷的特性**:详述透明玻璃陶瓷的物理和化学性质,如...
本文探讨了如何利用电感型转换器设计提高LED驱动电路的转换效率,特别是针对提供1-6W功率的LED应用。LED已经广泛应用于手机LCD背光,并逐渐拓展至各种LCD显示器、汽车电子设备以及家用照明等领域。LED因其高效率、长...