转载请标明出处:http://blog.csdn.net/ecorefeng
作者:朱克锋
英语情节
我接触计算机编程应该说是一种偶然,高考考入某工业大学,学习食品科学,和大多数大学生一样我并不喜欢自己的专业,调剂害死人啊,呵呵呵。。。
从进入大学的第一天起我就给自己定下了最低限度:不能挂科!只要有了限度,那就可以肆无忌惮的做自己的事情了,这是我的做事方法,我不断地寻找自己喜欢的东西,不久我决定学习英语,我是那种很愚笨的人,盯上某件事就不会轻易放弃的人,于是报新东方英语培训班的课,能报的几乎全报了,只要有时间就猛背单词,结果呢,一年后单词背了好几万,也算小有所成,不敢说英语好但也不差,至少比专门学英语的学生要“好”,大学嘛,学的太多了,有用的太少了,英语专业也不例外哦呜呜呜。
我, 乐此不疲,学习着。。。
偶遇C语言
在大二的上学期,我们开设了一门叫《C语言程序设计》的课程,我至今也没有弄明白食品科学专业为什么要学习C语言程序设计这种东西,食品科学多学一些HACCP、QA、工艺远比学C语言好处要多吧?不过正是这门课对我以后走上程序员的道路产生了巨大的影响。
《C语言程序设计》给我的影响可以说是以痛苦开始的
和以前一样,我依然逃课,学习英语,过程并无多大差距,乃至很多代课老师都会瞪着眼睛问我你是这个班级的的吗?更有甚者打电话到系办确认我这个学生的存在!
为什么说我的C语言是从痛苦开始的呢?过程是这样的,因为过分的逃课,我甚至都没有见过带我们《C语言程序设计》的老师,在期末考试来临时,我和原来一样认为这些课花一天时间突击一下就过了(最低限度是不挂科,过了就行),可是当我拿起《C语言程序设计》课本的时候,我发现我犯了一个致命的错误:因为它是一门语言。学语言的人都应该知道,语言这个东西是不可能在一两天内突击出来的,看着那些奇怪的符号我痛苦至极,不是因为不会而是因为我要打破我的最低限度,要挂科了。也就是说这个极限都有可能突破,在我现在看来C语言考试是我大学四年所有考试中最痛苦的一课,面对试卷上的字符一脸茫然,读者可能没有经历过这种痛苦,是很难描述的。实在没有办法了,总不能真的挂了吧,幸好我前面的那个家伙学的不错,监考老师呢,和我关系还不错(可见大学和老师关系好是多么重要,开玩笑了),那是我对自己 说回去一定把它学了,就这样我开始我的C语言之旅。
事后我真的找了一本C语言学了起来,记得好像是谭浩强的书,国内很是经典。
学了几天之后我发现C语言这个东西挺有意思,学起来感觉很舒服,很实在,给人的感觉就是太神奇了,是那么的精确和可操控,当时索性把英语暂放一边学起C语言来,在学习C的过程中发现计算机可能是我遇到的学科中最真实的一门课了,它是实在的、客观的。
随着学习的深入,我开始感到力不从心,系统的知识太贫乏,无法深入理解其中的很多东西,在一段时间琢磨之后决定转向计算机系学习,无奈能力有限最终没有转成,但是这是我已经下定决心要学习计算机了,于是我放弃英语学习计算机,这个决定从现在看来是对的,当时就感觉我喜欢,我就要做。
以后相当的一段时间我都和计算机系的学生一起上课,学习系统的计算机理论知识,可是我慢慢发现计算机系的课程安排并不是太合理,比如说我认为很重要的课程他们都当做选修或考试不做重点,当然学生们学习起来不会上心了,学校教育以考试为目的嘛,如以后实际工作很重要的《数据结构》、《系统》、《编译原理》等等教学难度都降到了最低,慢慢的我就不再和他们一起上课了,自己到图书馆里研究这些东西,后面我会说到我在图书馆的学习经历。
通过对数据结构、操作系统的学习我对C语言有了更好的理解,但最终也没有掌握C语言的精髓,特别是C语言中的指针概念,这个东西学起来简单,用起来就有些难度了,特别是想用好就更难了,设计内存方面的东西可能是最难理解的,有些大师级的人物说过,如果没有深入理解C语言的指针就没有真正学会C语言。
在疯狂中堕落
事情与很多偶然性,我后来学习Java语言也不例外
大三的时候开始接触Java语言,事情起因是以为老师说和我谈论面向对象这种东西,当时我对面向对象与面向过程根本没有什么概念。之后不久我就开始对Java语言进行了学习,我的堕落也由此开始。
Java语言可以说是一种纯粹的面向对象的语言,它简单高效,学习Java因为有了C的基础,一开始就有了比较好的思路,学起来相对轻松但深入学习还是要下一番功夫的,这时我已经堕落的很严重了,虽然不抽烟、不喝酒、不打游戏,但是对本专业几乎放弃了,又时一周都不会去上专业课,当时考试还是很有心得,大学四年从没有出现过挂课。所有时间都花在了学习语言上了,我在图书馆租了一间工作室(我们学校图书馆这点很不错,在图书馆的一个楼层建了很多小的工作室),我基本上8点到工作室,晚上11点回宿舍,除了生活必须我基本上很少离开工作室,在里面我近乎疯狂地学习,一学期下来很少见到同学了,不过这段时间我确实进步了不少。
在没有人指导的时候就会走很多弯路(这里建议多和工作的人接触,会有很多意想不到的收获),以后几个月我偏离了正常学习轨道,我浪费了大量的时间去学习所谓的那些新的技术,从现在来看当时的几个月时间算是浪费了,学到的都是没有是没有实质的东西
实习与工作
我是大三的下学期开始实习的,是一位老师找到我说给我一份兼职,搞编程的,我当然欣然答应了。
工作任务就是老师从外面接来项目让我们做,象征性的付给我们一些薪水,不过千万不要看重这些薪水,要看重这份工作,在做项目过程中把学到了东西实践化、系统化很是提升能力,正是这份兼职让我走上了程序员的道路。
我的第一份工作,也是我目前从事的工作,公司也是原来的公司,大四我离开学校只身前往深圳,加入一家通讯公司做服务器与互联网开发,我所在的部门是公司的一个高端产品部门,是一个学习型的团队,经理是一位资深的工程师,在这里无论是从技能还是处事方面我都有很大的进步,后来大学毕业之后还回到原来的部门继续以前的开发。
给在学习编程的同学一些建议
作为文章的结尾,我想把一些建议写出来,其实不能说是建议,是经历与感触吧。
1,不管你是计算机专业还是非计算机专业的,你都可以成为程序员,并且可以成为一个优秀的程序员,只要你努力。
2,不管你是计算机专业还是非计算机专业的,如果你想成为程序员你都要努力学好《数据结构》《操作系统》《编译原理》《组成原理》等等一大批基础课程
3,不管你是计算机专业还是非计算机专业的,如果你想成为程序员你都要努力学好C语言,不管你喜不喜欢,当然如果你不喜欢你怎么会想成为程序呢呵呵呵呵,所以你一定喜欢
4,切忌要多动手,程序是写出来的不是看出来的。
5,不能只学一门语言,要相辅相成。
6,要尽可能找一份兼职(编程方面的)在你毕业前。
7,找一个专业人士寻求帮助。
----end----