2020-05-19
今天,来说说 CMake 中另外一个可能比较枯燥的环节:文档。
前言说起文档,就不得不提文档的维护了,如果纯手写,难免会遇到代码与文档不一致的情况,理想的状态下,最好全部由解析代码后生成,再加上开发人员少量写的说明性文档即可。
之前我也在 你的团队需要更好的 API 文档流程 里说过,好的 API 文档的特点也是类似。
至于我们今天要说的 C/...
阅读全文
2020-05-04
这周暂时不写 CMake 的内容,换换口味,说说一本非常值得推荐的书《穷查理宝典:查理 · 芒格智慧箴言录》。
简介作者是彼得 · 考夫曼,翻译者李继宏。
先来简单说下不足的地方:整体翻译欠佳,读起来会觉得比较絮叨,排版上也有不少问题,查理十一讲的内容有不少重复的地方,并且每一讲本身也有重复的地方,会让我觉着非常啰嗦。对于没有读过本书的朋友,重点读第二章...
阅读全文
2020-04-20
前言今天这篇,可以算是接着上次的 第三方依赖管理,因为今天说的是怎样成为第三方依赖。
当你开发库的时候,就需要考虑,其它人如何使用你的库。
就目前而言,目前有三种方式可以使用第三方库:
子文件夹(下载后编译、Git 克隆编译);
安装编译产物(各平台现有库,自己编译库下载配置);
导出编译目录;
下面分别来说说,该如何操作。
子文件夹对使用者而言,这...
阅读全文
2020-04-05
今天我们来说说,CMake 测试。
不过,其实我们还是在说 C++ 的测试。
CMake 给我们提供了完善的测试支持,比如它有一个专门的模块 CTest。
CMake 原生测试支持CMake 原生支持的测试很简单,只有两个函数:
12345enable_testing()add_test(NAME <name> COMMAND <com...
阅读全文
2020-03-23
上次 说了第三方依赖管理,提到了我们团队在使用 ExternalProject 来管理依赖,这次来说说具体实践,以及一个基于 CMake 的开源依赖管理工具 vcpkg。
ExternalProject 实践来看看它长什么样:
1234ExternalProject_Add(<name> [<option>...])Externa...
阅读全文
2020-03-15
接着上次的【CMake 系列】(一)入门 继续讲。
这次,主要说说 CMake 的依赖管理。
依赖管理当我们说 CMake 的依赖管理的时候,往往说的是 C/C++ 项目的依赖管理,但是这门古老的语言,到目前为止,还是没有一个官方大一统的依赖管理工具。
而回头看看它的后来者,Ruby 有 gem、Node.js 有 npm、 Golang 有...
阅读全文
2020-03-09
自从上次在为何 C++ 静态链接库顺序很重要捡回了 C++,自此开始了不归路。
今天我们来说说,CMake 这个现代 C++ 项目的利器。
前言为什么我们需要 CMake ? 对于 C++ 开发者来说,他们会习惯于使用 GNU Make 来编译 C++ 项目,对于简单项目来说,这无可厚非,再加上有那么多的开源工具可用,尤其是 autotools 系列,用...
阅读全文
2020-02-23
在上回,我在 如何克隆一个大 Git 项目 说到,遇到了克隆大项目的时候,如果遇到问题该如何解决,这次我们来继续聊聊,假如你是这种项目的维护者,该如何改善。
问题分析相信你也看到了如果你维护的是一个大项目,会给那些新加入的参与者带来什么样的麻烦了。
那么,有什么方法可以解决这个问题呢?我们不妨先来看看大项目往往是什么原因造成的:
的确是个有历史大项目,...
阅读全文
2020-02-10
用 Git 克隆新项目,可以说是每个工程师必备的基础技能,然而,当你遇到克隆过程中的各种各样问题的时候,可知道如何处理?
遇到问题某天在工作中,小 A 像往常一样要克隆一个新项目到本地,于是你熟练地敲下
1git clone git://github.com:example/awesome-project
然后很悲催的,小 A 发现它告诉你这个项目有几...
阅读全文
2020-01-28
2020 年的开场,多少让大家有点失望,新冠肺炎,还有今天 (2019-10-27) 的科比(虽然对篮球不感冒),不过我还是相信国家机器的运转效率的,这场灾难总会过去。
今年回家,给自己安排了几个任务,主要是为了提升父母的生活幸福感。
年货今年给家里买了点广东这边的糕点,点心礼盒,由于我所在的深圳靠近香港,我也了解到了很多香港有名的点心,比如美心,网上购...
阅读全文
2020-01-13
在我们日常的网络相关实践中,有个常见的需求便是,测试网速。
如果只是为了测试自己所在位置的网速,那么,我们可以直接打开网页,直接开始测试即可,比如著名的 SpeedTest 。
然而,如果你的需求是测试两台机器之间的网速,那么,我们就需要用其它的更专业的工具来测试了。
也就是今天要介绍的 iperf。
简介目前它的大版本是 3,对应的命令行名称是 ipe...
阅读全文
2019-12-30
为什么说三十是柔软的呢?
柔软这个词,大概是我与小花(图中的猫)的关系开始缓和的时候开始意识到的,之前会一直挑逗它,摸它的肚子与屁股,所以总是被挠被咬,然后我就打它,所以它跟我关系一直不是很好。直到某一天,我开始只摸它的头与下巴,然后给它买吃的,我们俩关系就变得好多了。
阅读全文
2019-12-17
在上篇我们说到,直播协议的介绍,简单回顾下几个技术点:
客户端 / 摄像头:RTSP/RTMP
视频传输:RTSP 转成 RTMP/HTTP-FLV/DASH/HLS/WebRTC
浏览器播放:video.js / flv.js
这篇我们接着来说说具体的实现方案。
方案现成的方案其...
阅读全文
2019-12-02
最近一两周折腾了监控视频的方案,现在把过程中涉及到的知识总结一下,希望对后来的你有帮助。
前言起初是为了客户端可以跨平台使用,但是我们又不想折腾不同平台的 UI 库,Qt 之类的跨平台库虽然不错,只是它的设计太丑,无法入我法眼。这时候 Electron 方案走进了我们的视线:可以用 Web UI,而 Web UI 的设计又有非常多可供挑选,于是,我们就选...
阅读全文
2019-11-18
这几周做的东西也比较杂,没有总结什么实质的内容,颈椎病这时候却找上门了,就此机会,来说说这个与技术无关,『轻松一点』的话题。
说起颈椎病,大家应该都不陌生,有个段子说的就是颈椎病是所有工程师的最高级别,是终极归宿,还有的说《颈椎病康复指南》是大家在技术生涯里读的最后一本书,而我就比较厉害了,直接跳过几级,直接修炼到程序员的顶级了。
实际上,我颈椎的富贵包...
阅读全文
上一页 1 2 3 4 5 … 11 下一页