如何构建自己的代码库

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

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

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

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

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

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

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

(4)多使用开源库代码

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

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

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

时间: 2024-11-05 17:28:38

如何构建自己的代码库的相关文章

转:Delphi语言最好的JSON代码库 mORMot学习笔记1

mORMot没有控件安装,直接添加到lib路径,工程中直接添加syncommons,syndb等到uses里 --------------------------------------------------------- 在进行网络编程中需要JSON对象的构建与解析,这个Delphi XE+自带:{$IF CompilerVersion>22}, System.JSon{$ELSE}, DBXJSON{$IFEND}不过,不好用,大家更喜欢SuperObject.我本人以前一直用JsonDa

Delphi语言最好的JSON代码库 mORMot学习笔记1

在进行网络编程中需要JSON对象的构建与解析,这个Delphi XE+自带:{$IF CompilerVersion>22}, System.JSon{$ELSE}, DBXJSON{$IFEND}不过,不好用,大家更喜欢SuperObject.我本人以前一直用JsonDataObjects.今天要给大家介绍的这套JSON代码库算是“世外高人”,身怀绝世武功,而默默无闻,这就是 mORMot 系列开发框架.这是一个功能超级强大,学习曲线壁陡的开源框架. http://synopse.info/

第四章关键的构建决策(代码大全2)

一旦你能确定 “构建”的基础已经打好,那么准备工作就转变为针对特定“构建”的决策了.第3章“三思而后行:前期准备”讨论了设计蓝图和建筑许可证在软件业务里的等价物.你可能对那些准备工作没有多少发言权,所以在第3章关注的焦点是确定“当构建开始后你需要做什么”.本章关注的焦点是程序员和技术带头人个人必须(直接或间接)负责的准备工作.在向工地进发之前,如何选择适用的工作别在你的腰带上,你的手里车里应该装哪些东西?本章讨论的就是这事务在软件中的等价物. 4.1 选择编程语言(Choice of Progr

谷歌代码库已超过 20 亿行代码,他们是如何管理的

谷歌代码库已超过 20 亿行代码,他们是如何管理的? IT蓝豹发表于 2015/10/22 Google有多庞大?要回答这个问题,我们可以看收入,看股价,看客户数量,看影响力.但是这都还不够充分.说到规模,那么Google绝对是一个巨大的计算机软件帝国.为了印证着一点,我们还可以看看Google的代码规模. 周一,Google员工 Rachel Potvin 在一个硅谷举办的工程会议上提到了代码量这个问题(看视频,请科学上网).根据她的估计,你平时用到的Google互联网服务的软件(包括搜索服务

构建自己的js库

一.背景 web前端开发人员经常会用到一些现成的js库(框架).框架的使用增加了代码的模块化和可复用性,最主要的是屏蔽了浏览器之间差异性的实现,使得代码更加简洁,框架使用者只需要将注意力放在业务的实现上而不必为底层繁琐的实现感到头疼. 目前主流的js框架有很多,各有侧重,我们通常只会用到其中一小部分子功能.如果为了局部功能而引入一个庞大的框架,显然有点大材小用而且会增加浏览器的加载负担,浪费网络带宽,影响用户体验.因此,很多时候定义我们自己的js库非常的有必要,我们只需要根据项目需求构建出个性化

34. 代码库监控

1.首先我们需要安装Jenkins插件,我们点击Manage Jenkins-->Manage Plugins,点击Advanced,Update Site输入http://updates.jenkins.io/update-center.json 2.Update Site输入http://updates.jenkins.io/update-center.json,重启tomcat生效 3.点击Available,下载Git和Github两个插件 4.安装成功如下图所示,继续重启tomcat,

【Neko C Engine】一个基于 C 语言的游戏基础代码库

原本已经用 C++ 在写着一个游戏代码库了,个人作品,规模很小,只能满足基本的游戏开发需求,后来突发奇想,试着用 C 语言重写了一次自己的游戏代码库,姑且叫做 Neko C Engine 吧,缩写 nkCEngine,基于 Windows 系统,底层封装了 Win32 窗口.D3D.DirectSound 等等,使用的时候不需要操心 Win32 窗口,不需要操心绘图与音效播放的细节,直接一个 C 函数创建对象,然后用对应的 C 函数操作对象: 这个库的最终目标,是希望公开出来给所有对游戏开发感兴

iOS流行的开源代码库

本文介绍一些流行的iOS的开源代码库 1.AFNetworking 更新频率高的轻量级的第三方网络库,基于NSURL和NSOperation,支持iOS和OSX.https://github.com/AFNetworking/AFNetworking 2.GPUImage 图像处理库,基于OpenGL ES,图像处理效率高.https://github.com/BradLarson/GPUImage 3.Masonry 自动布局库.https://github.com/SnapKit/Mason

mac终端push代码库到github

一: 安装git和配置略,网上太多教程. 二: 1.cd到项目所在目录 2.初始化 git init 初始化后在本地代码库会自动创建一个.git隐藏文件,这个就是本地代码库 三:加载文件 git . . 是把文件夹里面的所有文件都加载进来 还可以单个加载 git add index.html ,test.html 四:提交文件,创建时间点 git commit -m "init commit" -m "引号内是注释内容" 创建之后可以随时回到这个时间点,可以看到有若