我在大学的3年

     在大学的这三年时间里,编程成为了我生活的全部。
     从大一上了C程序设计开始,给我印象最深刻的是大一下学期测量学的奖励作业-闭合导线测量的程序设计,虽然开发出来的是控制台应用程序,但是最让我兴奋的是真正解决现实中难以解决问题的那种快感。自己用全站仪外业测数据,然后内业自己写程序处理,分析,最后得出结果,这个过程对于大一时候的我尤为重要,第一次让我对地理信息系统有了一个较为系统的认识-通过外业采集数据,然后内业编制程序用于数据的录入,存储,计算和输出,后来学习了地图学原理,为了方便我对不同城市不同比例尺的地形图分幅编号,又编制了一个各城市地形图的分幅与编号查询系统,学习了摄像测量学后,对我帮助最大的是空间后方交会程序的编制,这是我第一次接触最小二乘法,在这个程序中用的是最小二乘法间接平差原理,为此,我用C写了一个矩阵库,包括矩阵的四则运算,转置,求逆。
     大一暑假的时候,为了参加地理信息系统B/S开发组大赛,我自学了Html和Flex语言,开发了中国海域系统,获得了三等奖。这是我第一次接触Web开发,也是继C语言后学到的2种新的计算机语言,也是第一次可视化开发。这次比赛让我对专业的理解又加了一些内容,分析结果的可视化与网络发布。
     大二时,学习了C#程序设计,其面向对象的思想为这门语言注入了生命力,这门语言可以很好的抽象出现实世界的各种对象,为每个New出来的对象赋予成员,方法,其三大特性继承性,封装性和多态性让整个程序框架井然有序。为什么我这么痴迷于程序呢?因为程序满足了我无尽的控制欲,我可以像亚当一样,为整个世界的运转提供生命与魔力,世界需要生物圈,我只需写一个Biosphere基类 ,然后派生出Forest_Ecosystem,Grassland_Ecosystem等各种生态系统类,就像是魔术师一样,我可以在很短的时间内编制出一个庞大的生物圈。这种感觉并不是每个程序员都可以感觉的到,程序设计是一种艺术,是一种美的享受。
      大二下学期,学习了数据结构,这门课对我帮助最大的还是思想观念上的一些改变,一个茁壮高性能的程序需要一个好的数据结构,在一些偏于算法的程序设计中,数据结构主要体现在数据的存储结构,线性,树还是图?一定程度上数据结构决定了算法的性能,牺牲时间换空间?还是牺牲空间换时间?对我感触比较深的是哈希表,随着现在硬件空间的扩大,在做查询操作时,哈希表的查找速度还是相当快的,只是空间复杂度较高。在一些偏于应用工程系统的设计中,数据结构主要体现在数据库的设计(在大三学习了数据库技术与应用这门课),一个好的数据库设计能够使应用系统开发更方便,系统开销更小,更易于维护等等。
     在数据结构课程的结尾处,为了配合老师上课能更清晰直观的讲述一些经典但晦涩的算法,我开发了一个交互式动画演示系统,演示了经典的8大排序算法,哈希表的创建,查找和处理哈希冲突的几种方法。
     后来,我们又上了GPS原理及应用这门课,我记得在这门课中我第二次用到了经典的最小二乘法,完成了WGS84与BJ54坐标系之间的7参数转化法的程序设计。这为我大三时的LBS开发奠定了基础。
     大二暑假的时候,我同时参加了4个比赛,在短短2个月的时间和团队一起完成了4个比赛项目,ESRI开发竞赛ENVI/IDL开发组基于遥感的小流域水土保持监测系统,ESRI开发竞赛技术创新组基于色彩调和的专题地图制图系统,MapGIS高级C/S开发组小流域水土保持遥感信息系统,MapGIS初级C/S开发组中学地理教学平台。4个比赛都获奖了,虽然都只是优胜奖,但是至少我们坚持下来了,武汉的夏天很热,半年没回家的我也很想家,每天早上6:00坐在实验室,晚上11:00回寝室这种高强度的持续工作,很多队友劝我放弃,作为4个组中3个组的组长,面对队友的闹心,质疑,我需要周旋在4个组中,我不想安抚,我只想用我的行动给队友一些信心,每个比赛到了提交作品的前一周,我们开始不吃不喝的彻夜工作,最后我们也创造了奇迹,我们都坚持下来了,比赛结果已经不那么重要了,我们战胜了自己,这已经了不起了。这次的比赛比的不仅仅是学术能力,编程能力,更是内心的那份坚持与感动。
    大三的上学期,我们学习了农业遥感数字图像理解与分析,我觉得同时开这2门课真是太完美了。农业遥感这门课告诉了我数字图像可以做什么,数字图像理解与分析这门课告诉了我怎么做。所以每次农业遥感的作业我都可以自己编程实现。给我印象比较深刻的是遥感影像的生物量估算系统,这个系统是我第三次用到了最小二乘法,好像是在做多元回归方程的拟合中用到了。为了得到更准确的结果,我用了逐步回归的方法,每次回归将相关系数不大的影响因子剔除,直到通过F检验和T检验。其次就是DEM精度的自动评价系统,这个系统的闪光点是我自己写了一个自动生成检查点的算法,算法链接:http://www.cnblogs.com/zzkgis/p/3742108.html。最后就是高光谱数据的最佳波段选择的程序设计,算法链接:http://www.cnblogs.com/zzkgis/p/3742102.html,在我的博客中我写了很多的程序,就不一一列举了,链接http://www.cnblogs.com/zzkgis/
后来跟着综合导师开发了一个真实的项目兴山县水土保持在线分析与发布系统。链接(如果访问不了,估计是我们学院的服务器挂了,过段时间就可以访问的)。
    大三的下学期,在大学生创业创新训练计划项目中,就是之前提过的LBS项目了,是一个android开发,全称叫基于LBS的历史文化街区动漫导游系统,项目的2个特色就是AR和基于手绘地图的导航。现在正在写软件著作权。
posted on 2014-05-21 22:33  左小诸葛  阅读(606)  评论(2编辑  收藏  举报