鹅厂实习第六周流水账(崩溃版)
-
周一 1.15
今天开始做技术需求了,先去阅读代码,理解代码,了解这一模块是负责什么的。不过原来这部分的开发也是借鉴另一个开源框架实现的。我慢慢开始认为其实我们这一行就是在一直copy,借鉴,运用到自己的项目中。
也看到了其实我们面试的时候被要求写的算法题其实还是会应用到真实项目中的,比如我今天看的那一块内容就是关于任务启动的,技术优化的内容就是原来是串行启动各模块的任务改为并行启动,那么就需要用到多线程的知识,比如线程池去实现并发;还有,各模块并不是完全独立的,所以不能直接把它们丢给线程池就完了,因为有的模块需要依赖于另一个模块,所以需要先启动模块A再启动模块B,因此还需要处理它们的依赖关系。最好的模型就是有向无环图,我看的那个开源框架用的是链表来实现的,这部分比较有趣。
还有,上个月苦于 git 指令用不明白,后来花了一下午去学,现在一些基本用法都会了,不至于汗流浃背了。甚至今天还能够举一反三,用 rebase 节省了一天的工作量(如果不用这个方法)。
因为之前实习的时候同事告诉我遇到合并的问题,直接merge就完了,我之前又没有探究精神,所以一直没有去看 rebase 到底是干嘛的,怎么用。后来为了面试去看了一会儿,发现看不懂,后来自己拉了几条分支出来试了一下就整明白了基本用法。
可能大家都觉得git很容易,就是 commit 就行了,其实 git 复杂的嘞,会用 git 在面试和工作中都是一个很大的加分项哟!
-
周二 1.16
这周组长很忙,他是晋升答辩的评委,基本上这周的白天都用来去当评委了,只有晚上才有时间做项目的事情,导师偶尔回去参加答辩旁听,我没有去听,因为没有收到邮件,所以应该是还没有权限什么的,所以就在工位上做需求。
今天发现组长给我的另一个需求其实我听了两三次了,还是不太清楚到底要做的是什么,他觉得很容易,但是我还是不懂来龙去脉,觉得问了很多次他都有点不耐烦了,所以就没问了。大概知道这个需求跟另外一个部门有关,然后需要跟那边的人确认,所以下午他带着我去找了那边的负责人,最后发现我们这边还不需要做什么,我们是提需求的人,把需求提给他们就行了。然后提需求就需要参考另一个部门的实现方案,接下来就是要申请权限才能查看他们的实现方案,现在晚上了权限才审批下来。
这周就比较闲了 ,没有bug要修复,就是两个需求,一个工程量比较大,开发部分已经做了60%了,完全做完还需要测试然后回归;另一个就只需要提需求给别人做就行了。
-
周三 1.17
今天还是在完成昨天的需求,编译起来debug,果然会出现很多意想不到的bug,因为涉及并发编程,很容易出现线程安全问题,考虑的还是太少了,而且以前没怎么处理过,所以很容易蒙圈。
有时候出了问题找导师,他又开始各种花式找代码,根本跟不上,有一个地方他感觉有问题,让我去问那个写这段代码的同学,我跑去问了,但没问到重点,然后回来了,导师问我他怎么说,我说阿巴阿巴,他说那最关键的点呢,我才想起来我没问,然后那时候又汗流浃背了,感觉让他失望了,我说我其实没看懂那里的代码,跟不上你的节奏,他也没说什么,就回去了,我继续看那里的代码然后再去问那个写那段代码的同学。
其实我也知道导师没有对我失望什么的,不要自己脑补太多,导师也只是不知道说什么。
发现其实做客户端,要用到非常多的底层代码,C和C++,每次到了这一步我就懵了,完全不知道怎么处理,如果这里跟不上,以后会很受限制,还得还时间去补这一块。
今晚也是因为有crash(崩溃),一直在处理,导致九点五十才下班,打车等了25分钟才来,唉,成年人的崩溃只在一瞬间。
-
周四 1.18
今天好像摸了一天鱼,没有做什么,但是也确实在工位上。没有写什么代码,因为实际工作中写代码好像也是占比很小的一部分,今天还是了解一些工作相关的事情,比如打包之类的,因为打包不像以前了,直接在ide打出来就行了。
没什么写的今天,真想不起来干了什么….
-
周五 1.19
今天好轻松,上午开会,摸大鱼。没有给我分配新任务,因为快年底了,同事也不怎么想做新需求,我就还是守着这周那俩需求,而且还给我排了4天的工期。我另一个需求虽然不用写什么代码,更多的是和别的部门沟通,但是也需要花时间,尤其是跟其他的部门协作,效率就特别低,一整个下午都在等那边的同学,结果等到下班才告诉我要等我这边上传数据才能继续…
下午因为没事干,一行代码都没写,就用公司内网看极客时间,在公司内网可以免费看上面的付费课程。后来感觉对我的工作帮助不大,就去 github 找了个跟安卓相关的项目下来学习,这是我入职以来第一次有时间自己学习,但是发现不太会利用这些时间… 总感觉没有在做需求或者修bug 被人看到了不太好…
-
总结
虽然上周说是做技术需求,但是这周才发现其实也不是什么技术需求,因为技术需求我肯定做不来,我那个来了2年的同事都没有做过技术需求,都是在修bug和做一些打杂的活。
我这周其实也是在做一些打杂的活,没有什么技术增长,我也不知道要怎么才能提高自己的代码能力,因为平时工作也感觉不到技术的提升,可能这是一个潜移默化的过程?或者需要一些刻意练习?
不清楚,之前的每个周末我都是玩过去的,就没有学习过,这周末打算学习然后写写毕业论文。
越来越流水账了,大家也不要抱着学习到技术的心态来看我的文章,就当乐子看就好了。