春节前的一个月开始,我沮丧地看到我开发的“你想谁”人力资源查询网页系统已经陆续在三台电脑上停摆,原因是微软提供的activex 分支树控件已经无法在浏览器上运行。当初2001年编制系统时我是抱着“拿来主义”的态度使用这种现成的控件的,因为我叹服于这种控件所实现的复杂的功能,它能将公司内每个人以“节点”的形式有序地组织到一个分支树上,便于查找,直观而清楚,然而实现这种控件功能的模块代码却不是那么容易编制的,否则人家就不会给个做好的控件了。我编制的人力资源查询网页系统经过四五年的正常的运行,在最近一个月内却接连出现了令人沮丧的情况:李荣田、靳群科长、李岩的电脑陆续停止支持这种控件,导致他们无法使用该系统。我使出了浑身解数,包括聘请公司内外的电脑专家,清理了一下运行该控件的环境,却最终是徒劳一场。我沮丧地意识到,如果不放弃这种控件,并做一种全新的实现该控件功能的模块来代替,我的“你想谁”系统将注定在所有的电脑上瘫痪。我上网搜了一下,却无法在网上找到现成的能实现该功能的模块。有些相关功能的模块我也半懂不懂。我想,我只有一条路可走了,那就是在春节期间,从零开始地编制一个实现该控件功能的模块。在用户们的热切期待中,在春节临近的鞭炮声中,我的“模块更新”计划一步步地展开了。仿佛探险登山者站到
了山的底部,望着山顶,开始寻找登山的路。
2月1日左右,我在网上查到了相关网页编程的关键命令,即列表命令
2月4日左右的两天,趁着临近春节期间工作清闲,我开始着魔般地编制代码。编程过程象艺术家使用雕刻刀在做一件雕塑:先要根据“试验模型”做出简单的大貌,然后逐渐细化和补充完善有关功能。而且我知道,按照我的能力,这个复杂的“艺术品”是不可能一个下午便能完成的,我也不需要一天就完成,我要慢慢地完成,做事解题的同时享受其中的快乐,这才对得起生命啊。
第一天,实现了正确的动态节点列表功能。这个功能属于最简单最基础的,编制成功后各节点能正确地连接在一起进行展现。还通过试验模型,确定了使用一种网页内臵的“对象感知器”来感知节点以及用于节点控制时的相对引用办法。这个“对象感知器”的应用非常关键,因为可通过该应用能在点击事件发生时让电脑知道是在哪个节点发生的,而
不必在每个节点上另外附加通知电脑的代码。明白了这个关键点,我确信我已经稳操胜券了。通向目标的道路已经明白无误地展现在眼前,剩下的只是时间问题。
于是在第二天,我对自己的脑细胞们发出了编程作战的“冲锋”动员令,意图完成对节点点击时的隐藏显示功能及节点后统计数字的正确显示功能。既然是冲锋,当然是不达目标不罢休式的拚搏,是绝对不计时间代价以及身体健康和脑细胞伤耗的。老实话,对节点的点击隐藏显示功能时倒没什么阻碍,然而对那个节点后统计数字的代码进行编制时却总是无法调试过关,真是“欲渡黄河冰塞川,欲登太行雪满山”啊。要知道,这种模块我平时做得多了,算法也不复杂,平时我是不放在眼里的。我知道是脑子累了,但是倘若今天达不到那个自己都不放在眼里的目标,实在是感到耻辱啊。于是晚饭也没出去吃,一直折腾到晚上十点。当门卫师傅任师傅给我打开公司大门时,他的脸上是一副大感诧异的表情。冲锋行动成功后,网页上带着正确统计数字的各节点都能随着点击进行展开和隐藏了。至此,粗陋的大貌已经完成,接下来工作只是进行“胜似闲庭信步”的细化完善了。
接下来的一天,网页陆续实现了节点前的复选框放臵以及程序的递归显示选中多级复选框功能。这个模块功能是在参照以前代码算法基础上修改的,修改过程中竟然发现了原算法的缺点,于是感叹自己曾经的蠢笨。编制实现这项功能
的代码时如走钢丝,小心小心再小心,细致细致再细致。相对引用时的层级十分复杂,看得见和看不见的控件叠套在一起,却要频繁地引用诸如某节点的父亲的父亲的父亲的孩子们的某个属性,稍有不慎,便不会得到正确结果。
达到了这一步,我可以轻松过春节了。
除夕夜值班,做好了与该模块对接的外部网页的信息转递接口,并顺便在电脑上搜寻了个美丽的小图标放到节点上。
正月初三,实现了原有数据导出功能代码的修正,对于我的大脑来说,算作一个舒服的“热身操”。
正月初四,在实现“搜寻员工后自动展现节点”的出了点小“乱子”。一开始按“过程式展现”的思路编制代码,结果发现代码太过复杂,于是转而尝试以简单的“模拟点击”方式打开节点。代码虽然运行通过,该响应的分支树网页却纹丝不动,同时在不该响应的网页上出现了异样,后来看着屏幕,突发猜想,这肯定网页焦点目标的问题,没有正确的焦点目标网页,点击只是瞎点。于是增加了一行代码,果然得到了理想的结果。此时已是下午一点钟,回家吃午饭吧。
正月初七上班,更换了一个新的节点图标,意外发现图标出现了动画效果。于是,QQ等即时通迅软件中的大量动画图标的“奥秘”被揭开了。开心的我,立刻找了两个生动的动画图标,放在网页显示图片的位臵。不用说,那网页仿佛
被赋予了生命,鲜活起来。
编程,象旅游登山探险,象艺术家做雕塑,象到战场冲锋作战。我边行动边思考,还要与休息相结合,张弛贵有节嘛。迷幻丛生时立刻参看有关教程,并通过试验模型测试一下有关命令。有时小心翼翼如履薄冰,有时险象环生背水一战,有时步步为营有惊无险,有时壁立千仞无路可走,转而却能峰回路转柳暗花明。有时高歌猛进势不可挡,有时云淡风轻又能闲庭信步,有时随心漫游却有意外收获。
我经过千难万险,终于挑战成功并攀登上一座高山的顶峰。在顶峰之上极目四望,风光无限。我很辛苦,却又激动落泪。一路走来,我获得了那么多的美妙的感受。这一辈子活到这份上,还复何求?我要感谢命运赐予给我的这个挑战,把我折腾得如此快乐。
倘若没有艰难险阻,无需要征服的困难,无需要面对的挑战,我很难想像,这种挑战成功的快乐将从何而来。我忽然明白了,佛家说,世上根本没有所谓的不幸与幸,只有思想的不同。人活着的一个任务,就是要学会用思想来点亮世界吧。
思想即世界,修行即人生。
(写于2016年春节后)
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务