不止于技术
一直想写这一篇文章,归纳自己国赛以及暑假的一些感悟,然后一直没有合适的时间与状态。今天从外面回来,寝室居然出奇的安静,我下去买了一瓶百世可乐,也是出奇地好喝,竟然没有碳酸饮料的那种冲劲,但是还有可乐独特的味道,不错不错。感觉自己的状态来了,就来写写这个了。说实话,自己的作品是什么技术含量自己心里很清楚,之所以能拿到国赛二等奖,作品的创意也是占了很大一部分的。
这个暑假,又开始玩起来了cf,一篇关于cf武器的文章这样说道:再好的武器也是辅助,也是次要因素,最主要还是个人的枪法,一个拿着火麒麟的新手,怎么也打不过拿着m16的高玩。
编程和打游戏是相同的,各种技术点就是各种武器,底层的语言是Gp点武器、高级语言是活动送的各种CF点武器、各种框架 类库就是英雄级武器,这种东西重要吗?确实很重要,各种技术点就是一个项目的肉体、骨架。不掌握具体的技术点就做不出项目,写不出程序。但是居于各种技术点之上的东西就是“枪法”了。这是一个项目的 灵魂所在,也是 编程奥义的所在。
灵魂的第一个层次是某种解决某个实际问题的算法,比如最简单冒泡排序、快速排序啦,应用某种算法同等长度的代码,却能更快地解决更大量的问题,诶,这就很有灵性了。
灵魂的第二层次是整个项目架构的设计。写一个项目如同建造一栋建筑,coder就是这栋建筑的设计师。项目分为前端 后端 ,然后每一端都很很多个功能模块,这么多个功能木块如何组织管理,如何分配私有与共有的资源、如何实现各部分信息的交互……。总而言之,coder就是一个将军,如何领千军万马去完成使命?这么多种的“如何”就是灵魂的第二个层次。
灵魂的第三个层次就是项目功能的设定,我要开发一个项目,这个项目具有什么样的功能,能有怎样的社会现实意义,能带来多少的实际经济利润。这是灵魂的最高层次,这决定这由26个英文字符和各种符号组成的千军万马的征战方向!这个时候就需要把代码世界同现实世界融合在一起思考了,需要考虑到这个功能依据当前的科技水平能否实现?如果能实现需要多少的财力物力而又能有多少的价值?种种、种种……。这个时候,coder就是一个国家元首,你的目光决定着整个项目的发展方向,当然也决定着整个项目的价值所在!
其实,最基本的还是各种技术点,这是基石,不会走的人还想去飞,无疑是痴人说梦。当然,不止于技术!从第二个层次开始,就开始与具体的代码有所分离,这个时候的高度不一样了,要考虑整个项目的全局了;到了第三个层次,就不止是这个一个项目本身了,与它相关连的各种事物都要有所考虑,可以是说又提升了一个层次。
心怀对技术的敬畏感与好奇感,让我重视各种技术点积累与沉淀。
同时又不止于技术,要有对项目整体的设计思想,更要有对项目规划设计的独到见解!