大学四年, 专业心得

林锐有一本书, 叫做 <<高质量 C/C++ 程序设计指南>>. 其中附录里有他的一篇十分震撼的文章叫做 <<大学十年>>. 讲述了林锐从大学以来学习的经历和所获得的感想. 我看过后, 内心深深的被触动了, 都是大学 4 年, 为何差距如此之大? 都是学计算机专业, 为何水平如此悬殊? 我也时常回忆起大学四年中所作所为, 现今整理一下, 也反思一下自己的得失.

 

    本人自幼喜爱计算机, 对编程有着深深的好奇, 对操作系统尤甚. 抱着对计算机的喜爱, 我来到了北信科大, 学习计算机科学与技术专业, 可以说, 我赢在了起点. 如果让我给高三即将报考大学的后来者推荐学校和专业的话, 我会送个他一个数学函数:

 clip_image001_thumb

    关于这个函数我只做一点说明, 就是 ‘学校名气^10’ 是因为考虑到学习氛围以及所接触到的人导致的自身眼界问题所产生的差异. 其它的我不想解释, 仁者见仁.

    说道我的大学四年, 真是有太多的要写, 不过但从专业教育和心得来说, 我主要从看书自学和获得的成果来说. 的回忆如下:

 

大一上:

  • ‘认真’ 学习了谭浩强的 C 语言. 做出了第一个难住我的课后题, 就是输出这个形状: clip_image003_thumb. 我想大家对这道题应该有印象. 三年过去了, 我们再提起谭浩强的书, 更多的是看到了发行量从 1000 万册变成了 1100 万册….

大一寒假:

  • 这个假期最令我骄傲的就是我在 10 天时间内完成了谭浩强的 C++ 程序设计学习, 并做了所有习题.

大一下:

  • 利用课余时间学习 MFC, 看的是 <<孙鑫的深入浅出 VC++>>, 入门很不错, 推荐小学弟们买一本,看的时候不用求甚解, 因为你现在的水平一般人想解也解不了…, 但是一定要跟着做, 要么白看. 我依稀记得一个人在昌平自习室对着我的 12.1 寸小本, 傻子似的书上写什么就跟着学的我. 下午的阳光照进教室, 有种沧桑的美感.

大一暑假:

  • 我为祖国做贡献. 国庆六十周年群众游行训练中, 平均每天要站, 一动不动的站 8.5 小时. 晚上训练完后, 我便翻开那本黄色的 <<精通 MFC >> 跟着例子做…

大二上:

  • 看过 Linux Kernel Development 中文版, 当然, 看不懂是必然的, 硬着头皮看. 最终感觉没什么收获.
  • 后来看了林锐博士的 <<高质量 C/C++ 程序设计指南>>. 这本书客观的评价就是名字起的太大了, 书中的内容虽然不错, 但是配不上这个名字. 适合大二下半学期的同学看. 里面讲述了一些常见的误区以及一些好的编程习惯. 特别强调书中后面林锐写的 <<大学十年>>, 一定要看看, 尤其是北信的, 10 级以前的同学… 因为 10 级以后的同学就不认识周维真老师了. 如果你不知道我在说什么, 去读一读吧. 这本书总体感觉不难, 给我了学习的信心.

大二寒假:

  • 在 504 学习.

大二下:

  • 真正让我飞跃的是接下来要介绍的一本书 --- <<Thinking In C++ Volume One: Introduction To Standard C++>> 英文版. 这是一本神奇的 C++ 书籍! 里面用通俗易懂的语言讲述了 C++ 的几乎全部方面的知识, 以及一些常见的编程习惯, 和一些应该避免的问题. 如果说对 C++ 的掌握能用 100 分衡量, 那么就是这本书, 让我这个一直使用 C++ 的选手从 40 分变成了 60 分. 看这本书最好一遍看原文, 一边看译文. 而且是先看原文再看译文, 这样既锻炼了专业英语能力, 又对作者的思想有自己的认识. 所以你同时应该看了两遍书.
  • 此后, 我发现在实际编程中遇到了一些很实际很具体的问题, 诸如代码格式和注释风格, 以及命名约定等问题, 这些困惑促使我要 “规范” 我的代码, 让代码成为一种艺术品. 于是我买了 <<C++ Coding Standards>>. 这本书… 名字起的太泛了, 让我理解成了 Coding Style and Name Convention 了. 但实际上次数讲述了 coding 中需要注意的编程习惯. 这时的我还没能力完全领悟其思想, 只是看完以后的 3 分钟还有印象.
  • 此外, 我认识了一个影响我一生的女孩, 现在已经是我的未婚妻. 应该说, 不久之后就是我的妻子.

大二暑假:

  • 去浦华众城实习. 这是我人生的一个实习! 我记得当时非常非常激动, 因为自己在学校看过两本书, 一瓶子不满半瓶子咣当, 觉得自己已经可以工作了, 于是想出去试试身手, 以为自己能有一份作为… 实际上是, 我做了一份无技术含量的工作 --- 网络推广, 换句话说, 就是在论坛上发帖. 这一个假期, 我拿了 600 元的交通补助.

大三上:

  • 在看完了 Thinking In C++ Vol.1 时, 我就决定要看 Vol 2 了. 这回有时间了, 我还是看得英文版 <<Thinking In C++ Volume Two: Practical Programming>>, 并配合中文版看. 但是个人感觉这本书讲的不如第一本好接受, 可能是知识层次深了.
  • 我又心里痒痒了, 同时看 <<Exceptional C++>>(中英文两本) 和 <<The C Programming Language>> 以及 <<Inside The C++ Object Model>>. 这段时期真是太痛苦了, 每天都有相当繁重的看书任务, 正赶上课程多, 所以日子过得很快, 也很快乐.
  • 这学期看得左后一本书是 <<The Elments Of C++ Style>>, 这本书其实是我大二想看的, 但是现在才知道这本书的名字. 此时的我已经形成了一部分自己的编程风格了, 不过大多数都是公认的, 只有少数是我个人独有的. 此书大部分我都不用看了, 少部分看了也接受不了了. 可以说时间的一个眨眼, 使这本书对我的价值约等于 0.

大三寒假:

  • 杭钢项目.

大三下:

  • 各种课程各种考试… 当然, 前面说的都是借口, 最主要的原因是我心思都在她那里. 这里我不对我的行为作价值分析, 仁者见仁. 时间也许会告诉我们结果.

大三暑假:

  • 参加杭钢项目.
  • 空三所实习.
  • 忘了在哪里获得了如下理念: 大学期间要精通一门主流的, 可以编写大项目的语言, 此外还要掌握一门动态语言. 我瞄准了 Perl, 为什么呢? 因为我之前接触过 Regular Expression. 了解 Perl 或者 Regex 的人就懂了…
  • <<Expert C Programming>> 英文版是一本好书, 已经大三的我, 看了这本书还是发现了自己的漏洞, C 语言的漏洞, 你能想象么? 一个 C++ 选手发现自己的 C 语言漏洞时间很兴奋事情, 因为普遍 C++ 选手都以为自己 C 语言, 至少是语法已经完全掌握了… 可能是我自大了. 此书强烈推荐大三的同学看看. 大二下半学期也可以尝试着, 不过吸收程度肯定和大三的不一样.
  • 前面说过, 我很喜欢操作系统, 当然, 每个程序员都有过写 OS 的梦, 我也是, 而且我还比他们更进一步, 开始学汇编. <<80x86 Assembly Language and Computer Architectre>> 英文版给了我回忆汇编, 并消除了我对汇编的恐惧感. 汇编并不恐怖, 此时我还开始使用汇编重写 C 语言的函数. 不为别的, 只为加深自己对汇编的掌握和对 C 的理解. 当然, 如果有一天 C 语言突然不让用了, 那我写的汇编还可以再造一个 C… 就让我做做梦吧…

大四上:

  • 之前就看过 <<精通正则表达式>> 中文版, 但是没看完, 一直断断续续, 终于看完了. 英文版的我也有, 但是实在... 逻辑性太强, 此时我英语还是达不到这个程度的. 个人感觉, 只要掌握某些章节就可以了, 因为 Regex 是相当相当深奥且需要经验积累的, 如果不靠它吃饭还是略懂为好. 就像数据库一样, 略懂往往会在效率上想一个小丑... 关于取舍, 自己衡量.
  • 和同学参与一个 Linux 聊天程序项目, 正好学习了一直以来不会的网络编程, 我看的书是 <<Linux/Unix 网络编程>>, 主编是甘刚. 这是一本实践性非常好的书, 细致的讲述了 socket 编程中的一些原理和实现。 如果想亲自实践 socket 编程, 这是我个人推荐的一本初级教程。
  • 同时, 在 Linux 下使用 GNU Make, 所以顺便看了看 GNU make 中文手册 ver – 3.8. 其实看了和没看只在管理大型项目的时候才能体现出来.
  • 因为学习了汇编, 我就向 OS 迈出了第一步, 接下来我要系统学习操作系统的原理: <<操作系统: 精髓与设计原理>> 一书是我个人很推荐的, 讲的比较透彻. 这本书是在很多个早上起床并吃饭后的 1 小时里看完的, 因为 9:30 还要去实习.
  • 之前大三暑假的时候买了一本 <<C 语言常用函数大全>>, 是个叫陈超等编的, 黄色的封皮. 此书多出错误, 讲述混乱, 粗糙. 实为国产书籍之次品. 买了就扔了吧.

 

    以上是我的主要学习经历, 你会发现我压根没提学校的课程, 并是不他们不重要, 而是因为他们是你的本职任务, 就像吃饭呼吸一样. 另外, 我所参与的项目也尚未提及, 因为项目多是实战性的, 所以我认为你无法从我的描述中获得什么有价值的东西, 而且我也写不清楚.

 

    一定要知道, 你是为什么而学, 为了当官还是为了显摆? 还是为了老师表扬? 都不是, 应该是为了知识, 为了真理, 为了你自己. 如果你有才, 还应该为了全世界.

posted @ 2012-01-12 15:03  walfud  阅读(460)  评论(0编辑  收藏  举报