刘炯(Sharpmark)的博客

v4.0 一个不怎么更新,又舍不得关掉的博客

编程五年(四)

今天把故事讲完。
中心搬到了信息中心四楼。我做了一组组长,当时还在做项目,记得因为自己的Asp.net基础,开学一个月做了一个仿CSDN论坛的XmlForums。先是分析过CSDN的一些数据,研究了它的一些结构,然后尝试自己开发。最终做出来一个能使用的,并找了我的几个朋友帮我测试,比较稳定,虽然功能不是很强。准备做成中心的官方论坛,部署的时候发现学院服务器.net framework是1.0的,我的是1.1,服务器是不能乱升级的,所以也就作罢了。
04年09月的时候,卡迪江还提出想做个J2ME的手机课程表下载。我一个人花了两天时间做完。当时Java一点不会,边学边做。不过毕竟没有做嵌入式经验,所以导致只能在电脑端的手机模拟器上运行,没有在真机器上试验。最后写完发现被人拿去演示,并归为己有。
到了04年11月份,帮助02级的一位(未经过同意,不在此署名)学长一起做了个基于用户行为的第二代浏览器。院一老师指导的,名字很酷,不过其实并没有多少技术含量。只是为了参加校攀登杯而做的,玩了些专业概念,弄了些很专业的名词写了篇论文最后是获了二等奖。我一向严重反对在科研上作假的事情,这次是无意上了贼船,一开始真想做个有突破性的东西,不过后来发现太难了,不可能一个月,两个月能弄出来。如开始所说,是帮助。还好我并没有实际参与到论文拟写过程,只是负责写了URL过滤、分类算法,所以并不算在我的编程历史上留下什么黑点……。这个程序是Delphi写的,因为我以前学过Pascal,所以上手很快。多说一句,希望大家不要对这位学长有所误会,这位学长是个很好的人,对我也有很大帮助,而且他学习也很可苦,编程水平也很高,为了比赛弄点高深的知识来震撼评委也还是可以理解的。
04年底,因为是学生会的小头目,所以给学生会无偿作了个校园文化网站,跟cloud合作的。她做网站美工,我做后台程序。她漂亮的前台将我简陋的后台装饰得很好。:),然后挂在中心服务器上跑了一段时间。在05年的时候随着中心服务器的被黑,也就灰飞云散了。后来在06年的时候,下一届学生会又把这个网站原封不动的挂上去了,现在还可以通过软件学院校园文化网站看到现在已经彻底看不到了。
04年10月,跟Jay、Jerry合作电子阅读器。当时加入的心态主要是觉得嵌入式没有研究过,想学学东西。三个人很努力的做了很久,到05年上半年才结束。我主要是写了大部分底层无关的逻辑代码。我们面对和解决了很多很难的问题,度过了快乐和紧张的半年。并做出了一个像模像样的东西,虽然还有一些小问题在里面。只是因为拖得太久了,我自身对嵌入式的兴趣也很少了,Jerry可能也没有什么激情了,做完也就这么完了。而我的大二也就如此过去了。
大二下学期期末,中心改组,我做了创新实践中心的技术部部长,管理的事情渐渐多了,很少能照出大块的时间专心于我的编程水平的进步。
大二下学期的暑假接了学院的宿舍楼管理系统,程序都写完了,不过后勤要求有个实时的图形界面。(各个楼层、房间等的平面图和信息的绑定),我去本部考察的时候,发现他们用Flash做的,-_-#,我蹩脚地用C#GDI+画着平面图,终于我还是崩溃了,图形设计比我想象的难很多,这个项目也就不了了之了。很是遗憾,不过也给我让我吸取了教训,让我开始膨胀的自信心和自以为是的编程能力开始反省和客观评价。
大三上学期的时候中心给信息中心做校园网平台的项目中的机房管理子系统,信息中心的李雅杰老师牵头,我、Jerry、WAKU、Brooklyn、华景煜五个人做,我做程序框架设计和逻辑部分代码编写;WAKU写界面;Brooklyn写数据操作和测试;Jerry和华景煜作数据库。做了一个学期,不过由于自身对项目需求没有确切了解,不切实际、双方出发点的不同等等原因,最终也还是不了了之了。
说完做的项目,说说上课与学习,面向对象C++我们是马瑞新老师上的,他偏重于OO语法,对思想讲得甚少,加之我大一上过曾老师的课,所以他的课上基本都在睡觉;现在想想,觉得挺不对了,毕竟人家是老师,我那么做太不尊重老师了。数据结构是蒋光远老师上的,讲得比较让人郁闷,以前也自学过,所以也是睡觉了…;最近学的于红老师的Java课我也是在睡觉,因为我看书比她讲得快~~。大学以来跟编程有关的课,我听过的有两门,一门是于红老师讲的VC/MFC,大三下学期学的,因为不会,所以认真听了。还有一门是大三上学期的曾葆青老师的计算机图形学,虽然叫做图形学,其实很多东西就是VC,学到了很多很多东西、思想。我认真做了他所有的作业,并将每次作业、课上讨论整理放在网上,本年级访问我的帖子的流量有两千多。这们图形学也是唯一一门他教过的课程,很多细节依然历历在目。还有一门数据库原理,虽然不是讲编程的,不过最后有一个大作业,我用C#写了个N层结构的MIS系统,个人比较满意,而且学到了很多东西。
然后再说说数模,数模比赛里面,我主要负责的依然是我的老本行,编程。校和全国的比赛完全用C++搞定,后来觉得光用C++做数模有点太说不过去,就在大三寒假学了Matlab,并在寒假参加的国际数模中算了两个公式。值得一提的是,国际数模中,我主要用的还是C++,第二天晚上一晚上猛写了2000+行代码,模拟了我们当时提出的4种调度算法,给出200组数据,然后再用Matlab将数据做成一张图表。贴在论文里面。唉,一个晚上啊,就一张图,为了小组的利益忍了。
我在大三下学期通过侯捷的《STL源码剖析》,研究了STL源码,C++功力精进不少。不过侯捷的东西还是很让人难以读懂,可能是文化背景不同吧。
最后以百度之星的比赛结束故事,因为它是故事发展到现在我最后一个写的程序。上周末参加百度之星初赛,写了整整10个小时的程序,虽然能不能进复赛还是个未知数,但是很久没有这么高强度的写程序了,也很久没有这么开心过了。我一直在寻找的就是那种感觉。昨天辞去了中心的职务,变成了一个真正的平民,感觉如此的轻松和惬意,准备开始重新开始我的新的编程五年。
总结一下:除去大一下学期荒废了之外,大学的两年半之内还是很认真地编程、学习了。大学期间共计写了代码约:28000行。以下为详细数据,所有代码我的电脑上都有,是实际的统计数据,但为了计算方便,一些做了舍入,结果只会少,不会多。大一做的网站模块:1000行;大二的XmlForums:2000行;学生会网站:1000行;给后勤、信息中心写的两个夭折的项目:3000行;电子阅读器:1500行;大学期间C++学习代码200行左右的写过80个;C#试验:200行左右写过10个;400行的写过5个;数据结构:200行左右的写过10个;OO思想实践代码:500行的写过4个。数据库大作业:2000行。MVC模型试验:1500行。数模:2400行;C#小程序:1000行的写过两个。
加上小学、中学的代码,一共50000行。绝大部分程序在我硬盘中都还能看到。恩,我的确有专门凑整数,不过五万行跟我实际编程量不会差很多,而且这个数字只会比实际的少,不会多。
加上小学、中学学的时间,一共是五年。很久了,也不算太久。对于我,只是一个开始。(未完待续)

…呃,是待续,还会有(五),故事讲完了,总是要上升思想高度,总结个什么中心思想的。这个下次说。

Comments