这似乎不是他上辈子学过的任何一种编程语言,却是一种类似的东西。这些光点应该是一段程序的组成部分,有些是程序的框架,有些是程序使用的数据。那些闪烁的光点其实就是正在变化的数据,而飞来飞去的“流星”则是数据传输产生的现象。因为没接触过这段程序编写所用的方式,莫苏石花了很长的时间,才终于看懂了一点,却还无法完全理解这段程序的作用。
不过,这并不妨碍他对这个只有黑白两色的世界产生兴趣。
他本来最喜欢的就是电脑和机甲,上辈子整天跟自己的电脑和机甲模型厮混,没有一天离得了他的心头所爱。被小怪物带到这个世界来以后,他跟机甲倒是接触得不少了,跟电脑相关的东西却是如今才第一次碰到。
现在出现在他眼前的,就是这个世界人们所用的程序吗?
虽然不知道这段程序的来历,也不知道自己怎么会进入这个奇怪的空间,他却已经本能地开始了对这段程序的破解。陌生的编程方式让他的进展非常缓慢,他只能根据经验来作出一些零星的判断,再试图把这些碎片像拼拼图一样组合起来。
“这种算法,看起来好像是某种文字加密的技术……是用来编译密码的吗?”
“这个结构应该是用来管理用户权限的……还设计得挺严谨,看起来要钻空子可不容易啊。”
“咦,这个模块很奇怪呢,是用来做什么的?”
莫苏石一边自言自语着,一边沉浸在破解程序的乐趣中。连他自己都没有注意到,因为需要注意的光点太多,他的精神力已经不知不觉被调动起来,帮助他追随着那些时而变幻、时而移动的光点。从没学习过精神力使用方法的他,以前连主动连接小怪物的精神力都做不到,现在用精神力做起这种事情却毫无滞涩之感。
“真是太奇怪了。”他紧皱着眉头,苦苦思索着程序中让他觉得困扰的部分,“这个模块看起来相当多余,而且对程序其他部分的功能产生了明显的阻碍。可它看起来又不像病毒,倒像是设计者故意弄了这么一个模块,使程序可以在不同状况下发生不同程度的异常……到底为什么要这样做?”
就好像某人设计了一个网站,却故意留下一些隐藏指令,让这些指令生效的时候,网站会出现各种可笑的错误。比如网站导航按钮消失不见、站内留言变成乱码、留言者的用户名张冠李戴……这简直就像低劣的恶作剧!
这段程序给莫苏石的感觉非常严谨而庞大,显然是一个相当宏伟的工程。为什么在这样一件杰作般的程序里,居然会有这种恶作剧般的模块存在?
而且这个奇怪的模块,它所表现出的编程水准也很高,跟这个程序的其他部分相比,毫不逊色。还有它编写的风格,也跟程序的其他部分相似。这都说明,这个模块的作者跟整个程序的作者是同一个人,而且两者都是这个人以同样认真的心情设计出来的。可是,这个人到底为什么对自己的作品做出这种事情?
莫苏石怎么也想不明白这里面的设计意图,不由大伤脑筋。虽然这在技术上其实并不影响他对整个程序的破解,却让他忍不住耿耿于怀,不断苦苦思索着有关这个模块的问题。
反复扫描着这个模块附近的光点,他终于有了新的发现。
“LC-12……海?”莫苏石如梦呓般,痴痴地念出眼前这段光点组成的文字。
☆、37排除异常
为什么在这个程序里会出现小怪物的名字?海又是谁?
莫苏石看着眼前这片光点,它们出现的方式,在这个程序里应当属于注释的部分——也就是类似于备注之类的东西。它们对程序的功能和数据毫无影响,也不会被程序的使用者看见。它们隐藏在代码中,只有阅读代码的人才会看到它们。
根据上辈子研究电脑所得的经验,莫苏石知道,程序员通常会写在注释里的内容无非两种类型。
一种是关于代码的解释。比如某一段代码大致是用来做什么的,可以怎样使用……这种注释可以提高阅读代码的效率,人们不需要细看,就能对程序的框架有个大致的了解。对于维护和修改程序的人来说,这样可以让他们省不少事儿。这对程序日后的维护和完善很有好处。
一种是关于程序产品的信息。比如使用说明,版本信息,更新日志……这种注释的作用很多,不过基本上都和程序本身没有关系——那就不是莫苏石感兴趣的范畴了。虽然他知道业内很多人有这种习惯,但他自己接编程委托的时候,从来都不在自己的代码里添加这种注释。
当然,能在程序里添加的注释并不仅限于这两种类型。理论上来说,在注释里出现任何内容都有可能。只要程序员乐意,哪怕在里面写一句“今天天气真不错”,也是没有问题的。有些人还会故意把注释写得跟暗号一样,除了自己就没人看得懂,故意不为其他阅读代码的人提供方便,以此来对自己的作品进行“保密”。
不过专业的程序员都不会在正规的作品里做这种事,因为那只会破坏代码的整洁,还会给阅读代码造成许多不必要的困难。有时候,这就等于是跟自己过不去,因为注释往往也是写给你自己看的——虽然那本来就是你写的代码,但是几年之后你还会记得自己当时的思路吗?还会记得那暗号一样的注释是什么意思吗?本来注释可以帮你回忆起自己以前的想法,你把它写坏了,说不定到时候连你自己都看不懂了,那就是搬起石头砸自己的脚。
再说,如果你真的不需要注释来给自己备忘,同时也不想帮助别人理解自己的代码,那干脆一开始就不要写注释,不就结了?何苦写些自己看不懂,别人也看不懂的东西,浪费时间?
越是经验丰富的程序员,就越是明白,把注释写得清晰明了的重要性。
现在展现在莫苏石面前的代码,是那么简约、严谨而精妙,它的设计者当然不可能是个菜鸟。出现在注释中的“LC-12”和“海”,应该是有意义的。
这句话一点也不像是对某段代码的注解。而且莫苏石之前对这个程序研究了这么长时间,都不曾发现其他注释,只能靠自己来理解每一段代码的作用。这说明程序的设计者,多半是根本就没有留下任何帮助理解的文字——可能他就是那种不想让别人轻易读懂自己的代码,同时也不需要注释来给自己备忘的人。多半,他觉得自己的程序也不需要别人的维护和改进。
第一种情况基本可以排除了。
那么,这是关于程序产品的信息?
“难道是产品的名字和设计者的名字?”想来想去,莫苏石也就觉得这个答案比较合理了,“这个程序是用在小怪物身上的?海……他就是这个程序的设计者?把小怪物改造成机甲的事情,他一定也有参与吧。”
在他看来,把人类改造成机甲肯定是一件很庞大的工程,不是一个人就能完成的事情。海设计了小怪物身上的这个程序,却不一定是改造小怪物的主谋。这是因为他对这个世界的了解仅限于地下城,仅限于魔术师给他的记忆。如果是生活在其他地方的人,肯定不会有这样的疑惑。
人改兵器之父,海先生!现在的莫苏石并不知道,这个名字有多么的如雷贯耳。
现在的他必须考虑自己的处境。他想起来,自己在进入这个诡异的空间之前,正在尝试用精神力跟小怪物沟通。也许就是这个举动让他触发了小怪物身上的某些机关吧?
之前琢磨了这么久,他现在对这个程序的结构已经有了大致的了解,只是对它的具体作用依然不甚明了。不过,之前引起他注意的那个如同恶作剧般的模块,却让他耿耿于怀。即使只是一知半解,他也知道那个模块的存在对小怪物来说不是好事。
为什么海要在小怪物身上的程序里留下这么一个毒瘤?
莫苏石无法理解,也不想理解海的动机。他只知道,这个人对他的机甲做了不好的事情,这让他很不高兴。就算海是小怪物的改造者又怎样?现在他才是小怪物的机师。他觉得这段代码不好,就得改掉它!莫苏石上辈子修改过那么多奇奇怪怪的软件,他可不会觉得,保持程序的原汁原味有什么必要。
网址已经更换, 最新网址是:yzwnovel.com 关于解决UC浏览器转码章节混乱, 请尽可能不要用UC浏览器访问本站,推荐下载火狐浏览器, 请重新添加网址到浏览器书签里
目前上了广告, 理解下, 只有这样才可以长期存在下去, 点到广告返回不了可以关闭页面重新打开本站,然后通过阅读记录继续上一次的阅读
搜索的提交是按输入法界面上的确定/提交/前进键的