我的编程之路(一)

时间过得还真快,投身软件行业已经有8年了,从接触计算机算起,已经超过13年。那年还是1993年,刚上高中一年级,就在第一个学期里,学校就开始教育计算机课了,使用的计算机是中华学习机、苹果机和IBM PC机。那时候开机特别麻烦,一定先开显示器,才能再开主机,否则会损坏机器,老师叮嘱了N遍,关机刚好要倒过来。在那年的课程里学会了BASIC语言,对着书里提到的数学问题一个一个地编写程序解决,记得最清楚的一道题就是百鸡问题,如下:
张丘建《算经》中提出“ 百鸡问题” :鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母、雏各几何?
这是一个不定方程组,如果人工计算,需要不断地尝试,需要花费不少时间。如果使用计算机来解决,计算的速度是非常快的,一运行就立即出来了,从那时起,我就觉得计算机是一个神奇的东西,心里就喜欢上计算机了。
1996年考到大学,接触计算机也比较高级了一点,当时还是286的机器,但开始学习操作DOS操作系统了,还知道计算机不但可以计算数学问题,还可以玩很多游戏,可以做很多管理的工作,比如帮老师打印试卷。在这学期里,也有过一次最深刻计算机教育,那就是全班去上一次化学实验课。那次化学实验课,老师也是别开生面的,不是真正地去实验室做实验,而是带我们去他的工作室里,打开一台当时是比较高级的计算机—486吧?一到那里就打开计算机,并且启动那个化学计算软件,然后输入一些参数就开始运行了,老师就开始给我们介绍怎么样计算,而那台计算机就足足计算了两个小时,才把一个简单的分子式计算完成。这时才知道什么是计算机性能,为什么需要大型机器。同年,也开始学习计算机文化基础,主要练习快速的键盘打字。常常跟同学比赛打字,看谁打得快,还蛮有趣的。同时更加系统地学习了计算机的历史,了解到计算机更加广泛的应用。
1997年开始学习C语言编程了。在这之前的大学课程都是教育FORTRAN或PASCAL的,毕竟那年开始,C开始越来越流行,不管是系统开发,还是应用软件开发都是C的天下。因为UNIX是使用C编写的,那么UNIX下的软件,大多数都是C写的。当然DOS下的应用软件也越来越多是C写的了。记得使用最有使名的C编译器是TC2.0,哈哈……。TC2.0是集成开发环境,也就是说把编写代码和调试代码放在一起,这样大大地提高了软件开发速度,算是一次软件开发的历史突破。
1998年开始接触网络了,网络才刚刚兴起。那时候上网,也不知道能做什么,只是知道可以收发EMAIL,立即发出去别人就能收到,这是一种速度效率。这一次上网的机会也是来之不易,是同学天天打电话去电台里答问题,答到的机会。当然,在这一年里就开始学习微机原理,了解计算机是具体有什么组成,怎么样运行的。开始学习使用汇编语言控制8255A编程了,了解CPU的基本指令。也慢慢开始学习C++编程,使用VC 5.0开始编写程序,刚开始发觉VC5.0编写Windows的程序非常因难,基本搞不懂从那里开始。
1999年开始多种编程语言的学习。这一年里,自己购买了一台K6-2的电脑,这样学习编程,就更加方便和容易了。当时开发Windows程序,还是VB比较容易一点,因此转向学习VB编程,搞了几个月,也能使用它编程了,后来发现使用VB编写一个扑克牌游戏,速度非常慢,就这样放弃了VB的学习了,那时应是自己的基本功不过关,而不是VB不好。接着又学习了Delphi,也玩了几个月,使用它来开发扑克游戏还比较快,但当我去图书饭馆看到LINUX时,发现全是C编写的,又重新回到C和C++的平台,接着为了看懂LINUX的源程序,还打印了一本LINUX的源码,一行一行地看。在这一年里,也是C和C++突飞猛进的一年。当时还为编译LINUX内核并安装,把朋友的硬盘数据全部搞坏了,朋友伤心了好久。
2000年毕业后,就直接进入了嵌入式软件开发。这一年里,学习makefile文件的编写,并开始看一万行以上的工程代码。毕竟以前看过LINUX代码,所以看那个嵌入式系统代码,就显得比较小了,接受的速度非常快,两个星期就完全搞懂,可以进入功能阶段开发。开发这个嵌入式软件,不是从头做起的,而是从原来别人的基础上进行修改开发,那么看懂别人没有注释的代码,就变成一种比较高的要求了。不过,这个系统是印度人开发的,毕竟文档写得比较全,大体的程序架构是写得非常清晰的。从这个项目里,学习到文档的重要性。
 

你可能感兴趣的:(编程)