热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

随想录(构建自己的代码库)

【声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:feixiaoxing@163.com】曾经有一段时间,我非常地苦恼,那就是如何提高自己的代码健壮性?难道

【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】


    曾经有一段时间,我非常地苦恼,那就是如何提高自己的代码健壮性?难道,除了单元测试就没有别的办法了吗。这一问题困挠了我很久。直到最近才有了一丝眉目。作为整个完整的项目来说,它涉及到的不可控因素很多。而对个人来讲,困难的东西也很多,但是还是有很多办法可以提高个人开发效率的方法的。比如说,建立自己的代码库就是不错的一个办法。采用已经经过测试的方法,可以在短时间达到提高效率的方法。


(1)建立自己本地的函数库代码

    构建代码库是最基本的一个方法。比如说,如果对算法比较熟练,可以在本地创建一个基本的函数库代码。这些代码可以包括常用的一些基本算法和数据结构,比如说链表、栈、堆、二叉树、排序算法、查找算法等等。注意,这些代码只要自己用得顺手就可以,至于短时间能不能为别人通用,那就是后话了。


(2)创建跨平台的代码库

    现在,我们需要的代码常常需要实现跨平台的功能。因此,我们可以在本地构建一些基本的跨平台函数,比如说内存访问、线程互斥、文件操作、网络操作、数据库操作等等。当然,其他的因素比如说字节序、字节序也要进行考虑。因为构建本地跨平台的代码库是一项长期的基本工作,但是一旦做好了,不但可以提高自己最代码的理解能力,还能有效地提高自己的开发效率。


(3)对已经存在的业务模块进行抽象和提炼

    不可否认,我们现在的很多工作具有很大的重复性,那我们是否可以将业务进行提炼处理,抽象出一个基本的架构模块。独立出来的模块可以安排一个编译宏,如果模块本身没有支持,那么完全可以不让它参加编译。经过提炼出来的模块,不但可以具有很大的拓展性,而且在健壮性上面也会有保证。


(4)多使用开源库代码

    很多时候,我们使用开源库代码,不代表相应的代码我们自己没有办法写出来。只是因为效率和时间的问题。如果业界对此已经有一个比较公认和权威的代码,那我们自己实在是没有必要重复造车轮子。这方面的代码很多了,比如说lua、webkit、ffmpeg、zip、libpng、libjpg、lwip、ucos、sqlite、ftgk等等。只要我们对这些代码进行测试了,那么为什么别人的代码不能为我们所用呢?


(5)保存和改进自己的练习代码

    很多人都有一个不好的习惯,当然也包括我在内。那就是,我们不注意积累平常自己的练习代码。等到一段时间之后,就会发现自己曾经确实练习过这样的代码。可是原来的代码早已经不存在了。保存原来的代码,让我们的工作可以建立在一个更高的起点上面,同时节约了时间。现在的移动硬盘这么便宜,放几十兆或者上百兆的代码,我想应该是没有什么问题的吧。这总比dota、qq飞车、nba、实况足球、仙剑奇侠、天下、天龙八部的空间要少吧。




推荐阅读
  • SQLite3是一个广泛使用的数据库,从linux,windows到安卓都有SQLite的应用。本文介绍SQLite3在windows上的编译。SQLite3提供了多种源代码的下载 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • PyQt5 QTextEdit:深入解析Python中多功能GUI库的应用与实现
    本文详细探讨了 PyQt5 中 QTextEdit 组件在 Python 多功能 GUI 库中的应用与实现。PyQt5 是 Qt 框架的 Python 绑定,提供了超过 620 个类和 6000 个函数及方法,广泛应用于跨平台应用程序开发。QTextEdit 作为其中的重要组件,支持丰富的文本编辑功能,如富文本格式、文本高亮和自定义样式等。PyQt5 的流行性不仅在于其强大的功能,还在于其易用性和灵活性,使其成为开发复杂用户界面的理想选择。 ... [详细]
  • 在Android Studio中查看SQLite数据库
    原来查看数据库内容,我们一般都是将数据库文件从手机导出,再用专门的软件打开查看,比较繁琐。最近发现了一个比较方便的方法:使用工具stetho。使用方式在gradle中配置depen ... [详细]
  • 本文介绍如何使用 Python 的 DOM 和 SAX 方法解析 XML 文件,并通过示例展示了如何动态创建数据库表和处理大量数据的实时插入。 ... [详细]
  • 本文总结了在SQL Server数据库中编写和优化存储过程的经验和技巧,旨在帮助数据库开发人员提升存储过程的性能和可维护性。 ... [详细]
  • 本文详细介绍了数据库并发控制的基本概念、重要性和具体实现方法。并发控制是确保多个事务在同时操作数据库时保持数据一致性的关键机制。文章涵盖了锁机制、多版本并发控制(MVCC)、乐观并发控制和悲观并发控制等内容。 ... [详细]
  • 基于Linux开源VOIP系统LinPhone[四]
    ****************************************************************************************** ... [详细]
  • 本文对SQL Server系统进行了基本概述,并深入解析了其核心功能。SQL Server不仅提供了强大的数据存储和管理能力,还支持复杂的查询操作和事务处理。通过MyEclipse、SQL Server和Tomcat的集成开发环境,可以高效地构建银行转账系统。在实现过程中,需要确保表单参数与后台代码中的属性值一致,同时在Servlet中处理用户登录验证,以确保系统的安全性和可靠性。 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • HTML5大文件传输技术深度解析与实践分享
    本文深入探讨了HTML5在Web前端开发中实现大文件上传的技术细节与实践方法。通过实例分析,详细讲解了如何利用HTML5的相关特性高效、稳定地处理大文件传输问题,并提供了可供参考的代码示例和解决方案。此外,文章还讨论了常见的技术挑战及优化策略,旨在帮助开发者更好地理解和应用HTML5大文件上传技术。 ... [详细]
  • 为何Serverless将成为未来十年的主导技术领域?
    为何Serverless将成为未来十年的主导技术领域? ... [详细]
  • 本文介绍了如何利用摄像头捕捉图像,并将捕获的图像数据保存为文件。通过详细的代码示例,展示了摄像头调用的具体实现方法,适用于多种应用场景,如安全监控、图像处理等。 ... [详细]
author-avatar
书友55218170
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有