第一百九十四章 留下

“原来北魔工并没有计算机学院?”

办公室里,坐在沙发上,捧着茶杯的玛丽恍然大悟。

坐在斜对面的李力有些尴尬地挠了挠头,“原本是没有的,因为计算机的发展和研究一直以来都是几个实验室用有限的人在去做,这个学科还不太成熟,所以归到了机械学一级学科下面。”

顿了顿李力又说道,“不过随着计算机学科的复杂性与日俱增,我们现在也在考虑创办计算机学院,只是这个想法还停留在构思上。”

“那您不应该对我欺骗呀”,玛丽无奈地说,虽说是指责的语气,不过玛丽却并没有露出多少指责的表情,“我是学习计算机技术才来到遥远的东方国度,如果您这里没有计算机,那么我就一走了之。”

李力表情抽搐,脑海中努力转义玛丽说出来的别扭的帝国语,看着她将茶杯轻放在茶几上,准备站起离开,他连忙上前劝解道:“稍安勿躁稍安勿躁,有句老话说得好:既来之,则安之,你说来都来了是吧,哪有空着手走的道理,况且我们没有计算机学院,但是其他地方也没有啊!”

坐在旁边的樾樾满脸不忍地看着李力,他这是留人呢还是赶人呢?

得亏玛丽的帝国语也不怎么样,在歪着头思考清楚李力的话后,她问道:“那么我该去哪里学习呢?”

“咳”,李力轻咳一声,“刚才我已经说了,计算机科学现在还处于原始的阶段,这个学科目前归类到魔导机械一级学科下面,原因就在于大部分时候,我们只关心处理器以及各部件,说白了就是硬件,而将软件作为硬件的驱动。”

玛丽努力地消化着李力所说的话,在明白李力所说的意思后,她眼睛蓦然亮了起来,“您说得正确!”

“而且我看了你的那篇论文”,李力回过头来向樾樾,樾樾从随身空间里掏出玛丽邮寄来的论文递了过去。

玛丽表情惊讶地接过自己的论文,奇怪地问道,“为什么我的论文出现在您这里?”

“大概是因为只有我能看得懂你的论文吧。”李力耸了耸肩,“打开看看。”

玛丽低下头,翻开自己的论文,结果刚翻开第一页她就呆住了。

论文的空白处用红色和黑色的笔迹写满了各种各样细致的批语和意见——用正常的字体。

论文的内容她早已烂熟于心,因为这是她反复推敲过的内容,几乎已经细致入极,完善如终,但是在浏览了李力所写的批语,理解了李力对所谓编程语言与面向对象概念以后,新的感悟涌上心头,这让她惊呼出声。

“怎么样?能不能帮到你?”看到玛丽似乎已经沉浸其中,李力露出引诱小萝莉一般的微笑,循循善诱地说道:“留下吧,在我们实验室你可以接触到比这些更先进和抽象的东西,你甚至可以开创一个新的学科,将计算机科学发扬光大,成为计算机程序设计的奠基人!怎么样?跟我签订契约,成为马猴烧酒吧。。。”

“这是您写的?”玛丽的眼睛瞪得滚圆,不可思议地表情略显可爱,抬起头来看向李力。

“是啊”,李立点点头,“我刚才不是说了,能看懂你的论文估计也只有我一个人了,所以学校就把论文转给我了啊。”

听了这话,玛丽“噔”地从椅子上弹了起来,直接对着李力弯腰九十度,大喝一声:“师父!!!!”

“噗——”

一口水还没喝下去的樾樾,就听见这一声突如其来的“师父”,直接喷了出去,好巧不巧地喷在了震惊地张大嘴的李力脸上。

满脸水花的李力生硬地转过脖子,瞪着樾樾。

“咳咳。。。对不起对不起。。。你们继续。。。”樾樾不好意思对着李力说道,招了招手瞬间蒸发掉李力脸上和身上的水珠,然后努力缩在沙发里,假装自己是个抱枕。

勉强从震惊中回复过来的李力转回头去,对着玛丽委婉地说:“八戒呀,我们这里是研究机构,不兴旧社会那一套,不搞拜师的。”

玛丽微微抬起头来,疑惑地看向李力,“那么。。。教练?”

“你想打篮球吗?”李力瞪了她一眼,“叫教授!”

“哦哦,教授”,玛丽反应过来,又重新鞠了一躬,“我想学习计算机科学跟您!”

李力身心疲惫地抹了把脸,才反应过来水珠已经蒸发了,将玛丽扶起来以后说道:“来了实验室的话我们就是同事关系,当然如果遇到问题,我们可以探讨,共同进步,计算机的知识浩如烟海,它可以应用到人类的方方面面,从抽象到具体,从研究到应用,即便是我也仅仅有一些算不上多的灵感而已。”

“嗯嗯!”玛丽努力地点点头。

“就比如说你对语言的抽象化是怎么想的?”李力伸手将论文翻到了第二章节,指了指上面的文字。

“通过设计好的指令,将机器的执行细节掩埋,这样的话编辑者在编辑时就可以不用记忆和拆解每一个步骤将其指令,就可以开发快速。”突然谈到正题让玛丽一下子兴奋了起来,“很多步骤都可以包裹成一个命令,开发好的程序可以将命令转化为机器执行码。”

“但是你所说的其实已经将两个东西混杂在了一起”,李力指出,“语言和库。

“语言是用来进行逻辑编辑的,它通常基于某种抽象逻辑,比如数学,比如符文学,当然为了能让处理器执行,计算机语言已经将数学语言或者符文学语言复杂化了。而另一种东西则是库,也就是通过语言编写和封装的,可以被别人使用的成熟代码段,两者的关系就好像帝国语和诗词的关系,当你感慨‘念天地之悠悠,独怆然而涕下’的时候,就是在调用登幽州台歌的代码段。”

旁边的樾樾眼前一亮,刚想说话,却猛地捂住自己的嘴。

帝国语贫穷如玛丽,并没有感受到诗词中的韵味,但前面的逻辑她懂了大概,“语言只有我们定义,库不仅仅我们定义,也你们定义,也他们定义,和调用。”

“是的”,强忍着玛丽用错误语法编写的帝国语,李力点点头,“当然为了保证语言使用的简洁,编程环境一般都会自带官方库,我们会写一些通用的库内置进去方便调用,尤其是涉及外部硬件控制的指令,都会进行封装。”

“可是,怎么样能保证使用者按照库的编写者要求调用呢?”玛丽又问道,“我们提供库,要使用者调用正确能使用,但是不正确不能,这样怎么办?”

“哦?有一些没法封装的步骤,但需要使用者按正确方式调用么?”李力抬了抬眉毛,“举个例子。”

“材料加工程序,开始前必须检查材料的形状和纯度,一些半永久转换或者对称转换需要结束的时候转换回来。”

听了这个问题,李力摸了摸自己的下巴,“按照开放程度高的语言设计,这种需要前置或者后置的东西通常只是留出语法让使用者自己调用,当然如果对方没有调用就会出现系统级别的故障,比如内存泄露,比如锟斤拷烫烫烫什么的。。。”

“如果限制呢?”玛丽迫不及待地问道。

“这样的话,就需要运行环境,而且如果你真的要限制使用者使用方式,那么你所写的就不是库了。”

“那是什么?”

“框架”,李力说道:“与库不同的一点在于框架是控制反转,虽然这个词听起来挺高大上,不过意思就是原本是由使用者调用库来完成某些工作,但现在是框架调用使用者所写的一些东西来完成某些工作,既然如此,使用者就必须按照框架的使用规则来写这些东西。

“比方说如果你需要使用者在执行对称转换程序时必须初始化和销毁,那么你就必须留出初始化和销毁的接口,让使用者完善它,这样程序就可以在执行主体程序之前调用初始化内容,并在结束之前调用销毁。”

听了李力的话,玛丽兴奋地叫了起来,“就是它就是它!我在写转换程序时思考过这个问题,但是在编写c语言的时候总是无法将这个想法融入里面,原来是我搞错了!”

“c语言。。。”李力满脸纠结地看着玛丽,心想着要不要建议她换个名字,既然想做框架限制的语言类型,不如建议改叫Java?

“当然了,这只是软件级别上的框架,如果你想要做到硬件层面上的框架,要求使用者按照你指定的规则,在你的控制下进行运行,那就是另外一种东西了。”

“什么东西?”

“操作系统。”

第一百零五章 到达第二章 这就是魔法?第一百八十章 庆典(二)第五十七章 樾樾大魔王第十八章 魔法塔第一百二十一章 返校(下)第二百六十三章 小店谈天第七十章 英雄主义第三章 魔法车第三十章 实验(下)第八十六章 传送猜想第一百章 天才青年(下)第二十一章 穿孔纸带计算机原型机(下)第一百七十八章 联欢会准备第一百七十三章 迎接第二百五十七章 毁灭第一百零四章 解答第六十二章 (准)丈人和(准)丈母第一百二十章 返校(中)一百四十章 阶段实验(上)第二百六十八章 朊元素第七十六章 存储器(下)第一百零一章 甜点(上)第七十四章 存储器(上)一百四十章 阶段实验(上)第二百七十八章 撬动第四十三章 再赴元素海第二十八章 实验(上)第一百章 天才青年(下)第九十章 发射岛建设(下)第二百六十九章 方案讨论第一百六十五章 编程语言第九十八章 跳蚤市场(下)第一百零二章 甜点(下)第一百七十六章 关键点统计图与质数螺旋第二章 这就是魔法?第一百章 天才青年(下)第五十八章 同居啦第一百五十章 登天(三)第八十四章 大魔导师李力(中)第二十一章 穿孔纸带计算机原型机(下)第五十九章 遥测与通讯第一百五十章 登天(三)第二百六十九章 方案讨论第二百零八章 神秘的莉莉丝第一百一十二章 火箭发射(上)第二百五十二章 送别第一百六十七章 微波(三)第一百一十章 植物学者第二十一章 穿孔纸带计算机原型机(下)第三十四章 皇家占星台第七十五章 存储器(中)第一百九十九章 旅程(一)第三十三章 授勋(下)第一百三十五章 波澜第一百八十五章 推迟第二百零八章 神秘的莉莉丝第二百四十五章 传送事故第五十五章 李力一号第二百二十四章 精灵(中)第二百四十二章 传送2.0第一百九十五章 植物3D打印机第二百五十一章 不可控裂变第一百八十九章 神迹第一百六十九章 面向对象编程第五十章 同行的非·华丽女仆莉莉丝SR第五十一章 嚣张的女仆第五十七章 樾樾大魔王第二百二十七章 一步之遥第一百一十七章 新年(下)第六十七章 高校交流(下)第七十六章 存储器(下)第一百二十一章 返校(下)第八十章 冷战计划第二十一章 穿孔纸带计算机原型机(下)第二百零九章 微波背景辐射第四十章 面试第三十三章 授勋(下)第四十八章 方案讨论(上)第六十一章 数模转换装置第八十六章 传送猜想第五十六章 卡门大魔导师来访第三十章 实验(下)一百四十章 阶段实验(上)第五章 宿舍第二百四十二章 传送2.0第二百五十七章 毁灭第一百一十七章 新年(下)第八十九章 发射岛建设(上)第九十一章 辞职第五十八章 同居啦第五章 宿舍第一百一十一章 种菜第二百零七章 旅程(七)第一百三十章 唐古拉元素坝第一百九十五章 植物3D打印机第七十八章 历史时刻第二百三十五章 着陆(下)第二百三十六章 探索(一)第三十一章 帝都之行
第一百零五章 到达第二章 这就是魔法?第一百八十章 庆典(二)第五十七章 樾樾大魔王第十八章 魔法塔第一百二十一章 返校(下)第二百六十三章 小店谈天第七十章 英雄主义第三章 魔法车第三十章 实验(下)第八十六章 传送猜想第一百章 天才青年(下)第二十一章 穿孔纸带计算机原型机(下)第一百七十八章 联欢会准备第一百七十三章 迎接第二百五十七章 毁灭第一百零四章 解答第六十二章 (准)丈人和(准)丈母第一百二十章 返校(中)一百四十章 阶段实验(上)第二百六十八章 朊元素第七十六章 存储器(下)第一百零一章 甜点(上)第七十四章 存储器(上)一百四十章 阶段实验(上)第二百七十八章 撬动第四十三章 再赴元素海第二十八章 实验(上)第一百章 天才青年(下)第九十章 发射岛建设(下)第二百六十九章 方案讨论第一百六十五章 编程语言第九十八章 跳蚤市场(下)第一百零二章 甜点(下)第一百七十六章 关键点统计图与质数螺旋第二章 这就是魔法?第一百章 天才青年(下)第五十八章 同居啦第一百五十章 登天(三)第八十四章 大魔导师李力(中)第二十一章 穿孔纸带计算机原型机(下)第五十九章 遥测与通讯第一百五十章 登天(三)第二百六十九章 方案讨论第二百零八章 神秘的莉莉丝第一百一十二章 火箭发射(上)第二百五十二章 送别第一百六十七章 微波(三)第一百一十章 植物学者第二十一章 穿孔纸带计算机原型机(下)第三十四章 皇家占星台第七十五章 存储器(中)第一百九十九章 旅程(一)第三十三章 授勋(下)第一百三十五章 波澜第一百八十五章 推迟第二百零八章 神秘的莉莉丝第二百四十五章 传送事故第五十五章 李力一号第二百二十四章 精灵(中)第二百四十二章 传送2.0第一百九十五章 植物3D打印机第二百五十一章 不可控裂变第一百八十九章 神迹第一百六十九章 面向对象编程第五十章 同行的非·华丽女仆莉莉丝SR第五十一章 嚣张的女仆第五十七章 樾樾大魔王第二百二十七章 一步之遥第一百一十七章 新年(下)第六十七章 高校交流(下)第七十六章 存储器(下)第一百二十一章 返校(下)第八十章 冷战计划第二十一章 穿孔纸带计算机原型机(下)第二百零九章 微波背景辐射第四十章 面试第三十三章 授勋(下)第四十八章 方案讨论(上)第六十一章 数模转换装置第八十六章 传送猜想第五十六章 卡门大魔导师来访第三十章 实验(下)一百四十章 阶段实验(上)第五章 宿舍第二百四十二章 传送2.0第二百五十七章 毁灭第一百一十七章 新年(下)第八十九章 发射岛建设(上)第九十一章 辞职第五十八章 同居啦第五章 宿舍第一百一十一章 种菜第二百零七章 旅程(七)第一百三十章 唐古拉元素坝第一百九十五章 植物3D打印机第七十八章 历史时刻第二百三十五章 着陆(下)第二百三十六章 探索(一)第三十一章 帝都之行