使用make是深入进行c++开发的必然选择
2015-07-22 15:58
441 查看
最近,看了一本《Data Structures and Program design in C++》(Robert L. Kruse and Alexander J. Ryba,2000),同时在电脑上面实现了书中的代码。在惊叹于计算机强大的解决问题的能力的同时,也对使用计算机进行C++开发产生了自己的思考。这就是:使用g++编译器进行命令行编译算法程序,使用专门的代码编辑器,比如Notepad++,来编写代码,使用make来高效地编制一个C++项目。上面是一个最好的选择,在Linux系统下编制算法,将自己的想法转换成计算机程序。
而对比之前大学的时候,在Microsoft IDE上面开发编制和学习书本上的算法,这种方式让我舒服多了。Microsoft IDE方式让自己编程傻瓜了,使用的时候总感觉有一些超出自己掌控的东西,使自己无法聚焦真正的编码实现,是阻碍计算机人员成为电脑编程高手 (guru)的一种机制。这就好比没学过摄影的人使用傻瓜照相机也能照出精美的图形,但是要想成为摄影高手就仅仅依靠傻瓜相机是不可能的。
刚开始的前几章,我一种使用g++的编译命令来编译各个算法程序。但逐渐地,随着学习的深入,发现各个.cpp文件的依赖关系越来越复杂,迫切需要一种程序来管理这中依赖关系,同时能够方便的支持项目的编译。幸而,我知道make程序的存在,也粗略地知道它的简单用法。这就是我学习make命令的动力,能够以非常明白、简洁的方式管理各个package、library、项目文件的依赖关系,同时方便的支持编译,与g++编译器相结合。我想,先前的计算机科学家们也是由于这样的一种存在的需求才发明的make工具吧!
我为什么喜欢这种方式来编写和编译程序呢?因为它能使用专注于问题本身,而不会受到IDE的复杂的内容的干扰。接下来的任务就是学习make命令,让自己的编程效率更快的提升。
而对比之前大学的时候,在Microsoft IDE上面开发编制和学习书本上的算法,这种方式让我舒服多了。Microsoft IDE方式让自己编程傻瓜了,使用的时候总感觉有一些超出自己掌控的东西,使自己无法聚焦真正的编码实现,是阻碍计算机人员成为电脑编程高手 (guru)的一种机制。这就好比没学过摄影的人使用傻瓜照相机也能照出精美的图形,但是要想成为摄影高手就仅仅依靠傻瓜相机是不可能的。
刚开始的前几章,我一种使用g++的编译命令来编译各个算法程序。但逐渐地,随着学习的深入,发现各个.cpp文件的依赖关系越来越复杂,迫切需要一种程序来管理这中依赖关系,同时能够方便的支持项目的编译。幸而,我知道make程序的存在,也粗略地知道它的简单用法。这就是我学习make命令的动力,能够以非常明白、简洁的方式管理各个package、library、项目文件的依赖关系,同时方便的支持编译,与g++编译器相结合。我想,先前的计算机科学家们也是由于这样的一种存在的需求才发明的make工具吧!
我为什么喜欢这种方式来编写和编译程序呢?因为它能使用专注于问题本身,而不会受到IDE的复杂的内容的干扰。接下来的任务就是学习make命令,让自己的编程效率更快的提升。
相关文章推荐
- 设定C和C++ CodeBlocks编译器的初学者教学指南
- C++类型转换运算符 static_cast,dynamic_cast,reinterpret_cast,const_cast
- C语言inline函数
- C语言的inline
- [C++设计模式] composite 组合模式
- C语言的inline(转载)
- c语言,enum
- c++11标准范围for语句的尝试
- 指针参数传递
- POJ 3268
- C++学习之旅——结构体和联合体的区别,以及数据对齐方式影响内存大小
- C语言指针总结
- C语言中 float double在内存中的存储
- C宏定义#和##的用法
- PAT (Basic Level) Practise (中文)1026. 程序运行时间(15) C语言
- C语言获取系统时间的方式
- 重新认识C语言
- LeetCode 204. Count Primes
- PAT (Basic Level) Practise (中文)1025. 反转链表 (25)C语言
- LeetCode 203. Remove Linked List Elements