C/C++ 在 linux 下可通过 gcc 进行编译,当文件数量少,文件依赖关系简单时可通过命令进行编译,但是当文件数量庞大且关系复杂时,就要依赖于 make 和 Makefile 管理这些复杂关系了。MakeFile 类似于 shell 脚本,定义了文件的依赖关系,以及编译的先后顺序。本文主要介绍 Makefile 的基本语法,本系列文章主要参考了 跟我一起写 Makefile

阅读全文 »

最近在学习 golang,本文主要是 A Tour of Go 的一些摘记,涵盖了 go 的一些基本语法与数据类型、通过 struct 和 method 实现类的特性、以及 go 中重要的 concurrency 特性。

阅读全文 »

文章为转载,转载自 Compiling Cpp,主要涉及到 C++ 在 linux 下通过 g++ 编译的一些基础知识,包括编译单个源文件、多个源文件、创建并使用静态库等。

阅读全文 »

Forecasting High-Dimensional Data》 是 Yahoo! 一篇关于流量预估的论文。在合约广告中,需要提前预估某个定向下的流量情况,从而进行合理的售卖和分配。但是由于定向的组合非常多(广告主的多样的需求导致的),而工程上不允许为每个可能的定向预估其流量,因此这篇论文提出了先预估一些基本定向的流量,然后通过 correlation model 从基本定向的流量计算出各种定向下的流量情况,具有较强的工程性,也是之前提到的文章 《Budget Pacing for Targeted Online Advertisements at LinkedIn》 中采用的流量预估方法。

阅读全文 »

本文主要是 Code Complete 中创建高质量的代码部分的的两章笔记:第 8 章(防范式编程)、第 9 章(伪代码编码过程),介绍了如何进行防范式编程(defensive programming),即保护程序免遭非法输入数据的破坏,目的其实就是增强程序的鲁棒性;同时介绍了如何通过伪代码编码方法来创建类和子程序。

阅读全文 »

最近在看 Code Complete(中文译作代码大全),一本关于代码构建的书。虽然研究生阶段做的东西与算法结合比较紧密,找工作的岗位也叫算法工程师,但是始终觉得算法工程师首先也得是个工程师,而不应该仅仅是调参师,因此一些基本的工程能力还是不可或缺的。本文主要是创建高质量的代码部分的的两章笔记:第 6 章(可以工作的类)、第 7 章(高质量的子程序),主要给出了在构建类和子程序过程中的一些建议。

阅读全文 »

统一规范的代码风格在团队协作中非常重要,在若干的风格标准中,Google C++ Style 又是较为被认可的,本文是阅读了 Google C++ Style Guide 中第六 (命名约定)、七 (注释)、八 (格式) 章后的一些笔记,主要涉及代码的一些基本规范。需要注意的是,各种规范之间并没有绝对的好坏之分,只要团队保持一致即可。

阅读全文 »
0%