阿里文学 > 字节跳动 > 第39章 源代码

第39章 源代码

推荐阅读:风起龙城第九特区英雄联盟:我的时代问道章创业吧学霸大人未来天王天机之神局硬核危机武侠世界大穿越诡域迷踪

一秒记住【阿里文学 www.alwx.net】,精彩小说无弹窗免费阅读!

    合抱之木,生于毫末;

    九层之台,起于垒土;

    千里之行,始于足下。

    ……

    刘昊然给舒朗重新串了一遍api,一边串一边给他讲大道理。

    如果说前边学的那些语法,是学api的基础,那么api就是写其他一切应用程序的基础。

    基础是什么?

    好比中文之汉字和成语,英文之字母和单词,数学之加减和乘除。

    所有优美的文章都是由一个一个的字组成的。连字都不认识,还想写诗词歌赋?那不是天方夜谭吗?

    不管是后续要学的高级编程,还是将来要学的资深编程,无非都是对各种api的不同组合的运用,所以学好api,是将来一切应用编程的基础。而高级编程和资深编程,不过是在过往经验的基础上,用api进行特定范围内的组词造句罢了。

    舒朗明白了其中的道理,自然也就明白了api的重要性。但是,纵然他的逻辑思维能力再强,也扛不住这毫无逻辑可言的大量api啊!

    简直比背单词还要痛苦。

    没点真正的实战演练,这些api不可能记得住。别说一共有三千多了,就连核心的那203个,他也没找着谱。

    刘昊然告诉他,记不住没关系,知道有这么回事就行,将来用的到的时候再查也来得及。当然了,你至少得知道去哪查,目录和索引至少得会用。

    舒朗把这当成了救命稻草,干脆一个也不背了。他把这些api按照自己的逻辑方式分门别类,重新组织了一下。这种奇葩的组织方式,估计也就只有他自己能够看懂。

    他准备用刘昊然给他的那套极速靴代码练手,先把他的代码看懂,把那个bug找出来再说。

    6点,刘昊然离开了。

    舒朗坐上轮椅,让刘琦推着他出去,俩人一块吃了顿豪华晚餐。

    期间,舒朗对刘琦说:“联系一下你老板,我要见她。”

    有些事,他必须得问清楚。

    “啊?现在吗?她…不见的能来啊!”刘琦惊道。

    “那就约明天,明天晚上不是有场足球比赛吗?你就说,我要约她赌球。”舒朗道。

    嗯,这个可以有。

    刘琦也知道陶小靖喜欢赌球,这么约的话,还真比较容易能约出来,同时还不至于让老板怀疑他的工作能力。说不定还会给他发奖金。

    刘琦麻溜的给陶小靖发了一条短信,立刻收到秒回:没问题,谢谢。

    这是他第一次痛痛快快的收到老板的回复,以前要么是根本不回,要么就是等很久才收到一个:知道了。

    这次不仅是秒回,而且还带上了一个“谢谢”。这把刘琦给美得,也不顾舒朗眼馋,给自己点了一瓶啤酒,他得好好庆祝一下。

    “?刘琦,陶小靖给你开多少工资啊?”舒朗终于找着闲心八卦了。

    “啊哈哈,这个嘛…反正比上班多,哈哈哈。”刘琦有点不好意思,同时也有点二皮脸。

    “那我要是出院了,你是不是就该换工作了?”舒朗问。

    刘琦滴流的两个眼珠,两个内侧眉角往中间向上一挤,手指敲着酒瓶子问:“给你也来一瓶?”

    “嘿,你还真想让我一直住院啊?卧槽,你特么不会半夜来害我吧?”舒朗佯装惊恐。

    “哈哈哈哈,你是不是傻?还是以为我傻?”刘琦说完给自己倒了一杯,先喝上了。

    舒朗当然知道,刘琦不傻。

    就算没有陶小靖给刘琦发工资,刘琦也肯定会过来照顾自己,至少也会帮他度过危险期。因为换了是他,同样也会这么干。

    在舒朗的记忆里,刘琦已经死过一次了,本来他来这个世界的目的,为的就是救刘琦的命。现在看着刘琦痛快的喝着啤酒,他自己感觉也很爽。仿佛那啤酒喝进了刘琦的嘴里,却流进了自己的胃里。

    “刘琦,明天我就开始学高级编程了,你跟我一起学吧!到时候,咱们一块去找工作。”舒朗说。

    他的意思很明显,咱还得为自己的职业生涯考虑,不能把自己的未来全都指望在一个女人身上,尤其是还不知道将来她会是谁的女人。

    男人要靠自己!

    就算陶小靖给了他很多钱,靠他自己的话,可能要奋斗十几或者几十年,甚至一辈子都有可能挣不到的钱。

    但是,男人要有男人的尊严。

    “我养你”这句话,只能是男人对女人说。反过来,那就是小白脸了。

    “哈哈哈哈哈哈哈,找一份好工作,不如傍一个好富婆,你已经成功了啊!还找什么工作,哈哈哈~”刘琦打趣道。

    “滚!”舒朗怒喷。

    对舒朗来说,他是那种…你给他多少钱让他去当小白脸…他都不肯干的人。

    当然了,他证明不了这句话的严谨性,因为他不满足当小白脸的条件脸不够“白”。

    但是呢,他却行了当小白脸的事实,起码在刘琦眼里是。因为他无法阻止别人往他的银行卡里打钱。

    话说当初请刘昊然当私教的那六万块钱,还是动的陶小靖给他的钱,这时候回想起来,真tm窝囊。

    他也只能把这当成是对他受伤住院的补偿了,找点心理安慰。

    “说认真的,从明天开始一块学,学不会,扣你工资。”舒朗威胁道。

    他要是真去找陶小靖去投诉刘琦一下,扣工资都是轻的,刘琦绝对不敢不答应。

    刘琦傻愣愣的发了一呆,他心里涌起的是激动,是感恩。他也渴望提高,但是他自律性不够,总是控制不住自己那颗躁动的心。当舒朗把这个提高的机会强加给他的时候,他倒是非常感动、开心。

    “朗哥,我敬你,我吹了。”

    刘琦举起剩下的那大半瓶啤酒,对着嘴,仰着头,一口气咕咚完。啤酒沫溢出嘴角,流进脖子里;两滴泪滑落耳根,终与酒沫汇融。

    渴望提高的人,都是知识的奴隶。自律与不自律的区别在于,是谁给你戴上枷锁。

    而那个帮你戴上枷锁的人,也许就是你生命中的贵人。

    这顿饭,他俩一直吃到了九点。

    舒朗不能喝酒,要不然,他俩能一直干到深夜或者是天明。

    ……

    回到豪华病房,舒朗决定研究一会api,记不记得住先不说,至少先记一下!

    舒朗有个习惯,以前学java的时候就有,但凡是学api,他都要看一下源码,看看人家api的内部逻辑是怎么实现的。“只会不懂”这种境界太低了,尤其是将来面试的时候,很容易被问住。

    现在学brave的api,他也要看一下源码,不看心里不踏实。源码里面就全是基础语法,完全没有阅读障碍。

    api的源码是需要单独下载的。

    打开eclipse,点开引用资源包,先找了几个核心api,双击下载源码。

    等待下载的功夫,他的注意力又来到了debug调试窗上。

    那个绿色的数字依旧是0,灰色数字是多少他都不在乎了,反正也没什么用,只有那个红点,是个货真价实的神器。

    忍不住点了一下红点,立刻得到提示:

    sourcepower资源包发现bug,

    灾难级 1个,

    是否自动修复?

    ……

    咦?

    视线左移,发现当前选中的文件,正是刚刚下载好的某个api源码文件:。

    卧槽!

    这意思是……bdk的源码有bug?

    上天了!

    上天了!

    上天了!

    重要的事情说三遍。

    bdk的源码也是人写的。只要是人写的代码,就不可能没有bug,这很正常。但是让舒朗感到诧异的是,这竟然还是个灾难级的bug!

    赶紧开始研究sourcepower的源码实现逻辑。

    从名称就能猜的出来,这是一个源能量驱动api。再看看英文注释,实在有点看不懂,干脆还是查中文api说明吧。

    sourcepower:混合能量驱动api,专门用于多能量源驱动编程时的能量切换,分为主动切换、被动切换、同步切换和异步切换四种模式。具体模式的使用,取决于对应的应用场景,由调用者自主选择使用……

    看完了说明,开始正式研究代码实现逻辑。四种切换模式各有一个程序方法负责本身的逻辑实现,除此之外,还有一个兼容方法,负责在这几种模式之间进行强制转换的时候,进行兼容性处理。

    舒朗一直研究到深夜。

    四种模式的实现源码无懈可击,舒朗不仅看懂了,还从中学会了好几招高大上的代码写法。

    但当他看到兼容方法的时候,突然眉头一紧。虽然代码逻辑表面上看起来是对的,但是直觉告诉他,这里很可能会有风险。

    他把四种模式的强制转换情况,依次代入代码逻辑,发现由异步切换强制转到同步切换的时候,有一个特殊的计数逻辑好像有问题。

    标准的计数都是从0开始的,这个逻辑也不例外,但是因为这是一个循环计数逻辑,当累计计数超过16的时候,需要从头开始加载计数。

    异步切换和同步切换之间,有一个特殊的强制转换占位标记,如果仍然从0开始计数,累计到15的时候就会重新加载,比预计的循环逻辑提前一个计数位进入下一个循环。

    以此类推,每一次循环提前退一位,15次以后将无位可退,必然会导致整个切换程序崩溃!

    这就是源码中的bug!

    当然了,这是一种极端情况,谁闲的没事会进行15次以上的能量源切换呢?还必须得是异步变同步!

    这bug被触发的几率,估计连万分之一都不到。

    不过舒朗突然想到了一点,刘昊然那个极速靴的代码里,也是多能量源驱动,那里提示的bug不会是由这个源码的bug引起的吧?

    太恐怖了!

    真要是这样,那岂不是说刘昊然写的代码里根本绝对完全彻底就没bug?