[随想]C/C++程序员

来源:互联网 发布:怎么收集大数据 编辑:程序博客网 时间:2024/05/17 01:09

       刚刚看过这篇30 years of C,回想了这几年的学习历程。

      在大学里,我学习的第一门程序设计语言是C,但花时间最多的还是C++。大约五年前,开始啃《 C++编程思想》两卷本,用Dev-cpp在机器练习着书上的例程,之后又学习了面向对象编程、模板、STL。凭着这些纸上谈兵的经历,参加了数学建模比赛,写了几个数值计算与运筹学的小程序,小有成就感。再之后参加ACM程序设计比赛,这期间受到ACM代表队的老师和同学的影响,开始接触Unix并接受自由/开源软件的思想。但是在参赛期间,我发现学会了C++、STL这些还是不能把那些问题搞定。然后总结失败原因可能是基础不牢、内功不够,于是开始返工,重学C和数据结构。买了一盒A4打印纸,把纸对折开来练习在纸上用C写代码。今天,当我看到《30 years of C》里的这一句“ I just read the book cover-to-cover and wrote out the exercises on paper. ”很有共鸣。纸上写代码颇有写散文的感觉,当然也是形散而神不散的。Knuth早就说过类似的话,编写程序的过程能给人以美的享受,就像写诗作曲一样。我想他老人家应该也有过纸上写程序的经历。言归正传,写完了那一盒A4纸之后,比较顺序地考上研。考完研在家做UVA上的题目就感到轻松多了,从那时起信奉格言"No magic,Just basic“。读研之前,加入一个团队做了四个多月的MFC编程,那几个月的时间也让我明白了面向对象与软件架构的重要性,当时还憧憬在读研期间在这两方面打下基础。没想到因缘际会,上研后呆的实验室里有几台大机器,跑的是Solaris/Linux之类的系统,所以研究生阶段的大部分时间是在Unix系统上用C编码,这样也好,因为我本科毕业前就成为了开源信徒,在Unix系统里编程正好能无限满足精神需求。研究生毕业前夕,发觉Unix编程的功底还不够(尤其是网络编程),无奈之下还是凭着前几年积累的C++底子找到了工作。七月毕业后立即到岗工作,到现在四个月时间,又转换了开发环境,现在Windows平台上用C++编程。经过这一波三折,最终还是成为一名Windows C++程序员。今天看到部门的一些学习资料和这份文档《Google C++ Style Guide》,突然感到自己在C++方面还只是入门级水平。

     五年过去了,算是学到了一些程序设计的基本知识,接下来还得继续学习与实践,也继续享受着编程带来的快乐。


     PS:

             Google C++ Style Guider           http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml

              中文版的在这里                            http://www.yulefox.com/20080710/translation-google-programming-style-01.html/

原创粉丝点击