回顾2006我的邪派成长

       JavaScript曾经是我很早接就触的语言,大概是在五年前。那里只懂C语言,开始认识HTML的时候为了抄袭一个随鼠标动菜单被迫看了一下,不过也仅限于抄袭。今年对这个让无数程序员和新潮流爱恨交织的脚本研习了一下,对于这么一种语言实在是感受太多,她这把双刃剑兼俱的神奇与邪恶不知让多少coder们为她欢喜为她忧!最初我只是好奇一些美丽的特效,接着就是不刷屏的实用功能,后来则结合服务器端的逻辑处理一些刁钻的页面需求,最后就是把一些样式也交给她。由此算是中邪了,曾经一度时期在项目中过分得应用JavaScript,以至于大大压缩了后台逻辑的编写,但也让代码只属于我而别人是无法插手的。每一个结点都可以当作一个对象,你可以处理属性、内容等,DOM结构让原本简本的Javascript有了无群的力量,于是网页在客户端也可以动起来,关键是这还不消耗服务器的资源。其弱类型的特点使得编程方便灵活,也导致调试的困难与无助,你甚至可以动态地执行一段动态生成的Javascript语句或函数,这让人不可思议但又无法抗拒,但没有友好的调试工具和统一标准是致命的硬伤。就我的总体感觉而言,应该力所能及的前提之下去避免她的使用,尤其是初学者,因为其稳定性、兼容性、及调试方面实在是不敢恭维。
       CSS是今年研习的另一项内容,虽然从使用HTML起就知道CSS也一直在用,但是却从来没有比较正式地了解她。通过一段时间的试验我对于CSS的设计者非常钦佩,我从中了解到的绝不仅仅是页面样式方面的内容,而是一种多级的配置理念,这必然应用到其他方面的。CSS就像是国家政令一样,对于一项内容可以同时存在不同的定义和约束,但又绝对不会冲突地按优先级和顺序发挥作用。我认为CSS思想完全可以应用到项目开发的其他方面,比如一些配置信息等的设计上。实际上CSS也是一种面向对象,其简单的几条规则折射出了丰富多彩的表象,就像SQL语言一样,对同一问题的解决可以有千差万别的方法,对比一下才会发现做人的差距怎么这么大,回想曾经写过的无数页面都快要吐了!!!当年的那繁杂的嵌套和恶心的页面结构以及对用户无数要求的否认简直不堪回首,这是多么大的打击,忽然间发现从前一直在梦游!
       XML也是今年尝试的一项内容,一个文本结构可以有如此大的力量,你可以从中得到很多。结点、属性、嵌套等看起来是如此简单,但只要会了这三个并能写出相应的XPATH大概普通应用中已经无敌了,再扩展到命名空间等内容似乎没有必要了,因为我们面对的需求其实并不复杂。最初因为不熟悉有些抵制XML,感觉很浪费且有点麻烦,到后来我甚至觉得XPATH有时比SQL还要方便,以至于常常中了邪似得下意识地拒绝使用数据库来存储数据。再到后来迫不得已用到了XSL,这个东东实在是让人头大和心烦,但确实有意想不到的作用,也一度令我有替代HTML的冲动。
       .NET是我的主业,来我尝试了些许细节。探一下服务器端控件的原理,探一下页面的原理,探一下人们不常用的WEB控件:DATALIST和REPETER等,探一下用HTTPREQUEST去调WEB SERVICE。或者尝试取非服务器控件的值,或者运用一下Cache这个缓存,或者试试动态添加控件。于是我写出了些许简练精干的代码,但别人不会理解,所以这就不是好代码,抛弃是必然的。不过这些尝试给了我很多,几年来第一次感动有些清晰了,也发现从前的项目做得实在是难以言表,其实很少人真正发挥.NET的作用,其实好的硬件和带宽掩盖了我们的拙劣。
       此外,firefox几伴我走过整整一年,除非遇到特别的网站我可以说是放弃了IE。当时恰逢流氓软件和病毒得泛滥,我无奈中听说并尝试了Firefox,这给了我一个全新的眼界,据说firefox的市场份额还相当大,我此时才第一次意识到IE之外还有如此多的浏览器在支撑着互联网,想想一直是在一个版本的IE上做东西简直太土了,就像山里人进了城一样。经过与IE和firefox的长期相处我才开始对HTML有了真正的了解,感叹过去的工作实在是盲目且无知,原来JavaScript和CSS在不同浏览器里并不是一样的听话。也许很可笑,但我没有经历过正规的计算机教育只是半路出家,只对C语言较为熟悉,可现实是我走了MIS的B/S之路,JavaScript和CSS让我在痛苦中找到了过去学习C语言的感觉,那就是每次尝试都有新的发现和感觉,其夸张的灵活性让人难以琢磨。于是常有人告诉我页面显示有问题,因为有时我会忘记用IE也测一次,不过好在firefox通过的绝大多数IE下差别不大,但反过来则完全不一样。经过漫长的尝试我终于在javascript、CSS和XML方面有了很大的突破,其实三者联系是如此的密切,而我恰巧都用了一下。例如,你想要用好javascript绝不要局限在语法和案例上,没有CSS方面的熟悉你最多只能抄袭,而CSS的理解又要求你熟悉HTML,明白XML之后HTML也清晰了,最后你把她们搞到一起时就有了无限的选择空间而不是一筹莫展。B/S毕竟主要是在服务器端的工作,所以这些就都是表面工夫了,但当时知道了HTTP的交互内容后,你必定会恍然大悟,其实所有的浏览器都走不出那个圈圈,不管什么语言和平台也只能围她转。最终,什么web标准,ajax以及诸多新动象等等都不再神秘。
       上学时,教授们说一定要打基础走系统分析师的路线,写代码是最底层的工作。但两三年的工作下来发现软件开发通常没有什么可分析的,真正按一定的规程分析下来估计大部分功能需求已经变化了。另外目前国内软件业中手工作坊是不需要分析师的,熟练有经验的老师傅更有作用。曾经学到的UML等皮毛知识渐渐远离了我,因为没有施展的空间和必要。虽然我没有调查过,但还是敢断言还是鲜有使用UML的,大家可以到网上搜一下,炒得火热的UML案例除了POS机、学生课程和国书馆外几乎空白,而具体到实际应用则凤毛麟角。因此现如今我逐渐淡忘了系统分析的童话,而是转向一些低级的花拳秀腿,也让我在编程路上越走越邪。
       现在中国的软件业能搞讲座的分析师太多了,可能做一手漂亮活的高级蓝领太少了,大家到网上找东西就会发现到处是转贴,经常是引擎上搜无数相同的错误内容将真答案彻底淹没,偶然你也能看到出处,可多数是翻译外文论坛等。大家转贴时可不可以先试一下,或者是过一下脑子!是不是我们太过虚浮了,动不动就大谈系统架构,时不时地蔑视一下程序员的体力劳动,问题是你真的有那个高度吗?我一年的努力让我在这邪路上有了相当的功力,已经可以行走于客户端,我深知自己看到的不过是冰山一角,但我确信上面的中国人已经越来越少,很多问题国内论坛已经鲜有解决方案。不过说实话,对于目前如此热闹的论坛和博客, 当我们去掉转载之后,还剩下什么。。。。。。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值