zoukankan      html  css  js  c++  java
  • 消失的那3个月__怎么看代码的小结

         距离上一篇文章到现在已经过了3个多月,这3个多月,我没有写一篇文章,也没有制定学习计划。天知道这3个月我经历了什么。~~~
         进了鹅厂之后的这3个月,前2个月,每天我都是在度日如秒的状态下度过。还记得第一次发版本,我居然有点失眠(当时是有多激动和多紧张)。每天感觉时间不够用,每天有看不完的代码,每天有学不完的新业务点。测试完一块地方,又有一块新的系统业务需要了解。这3个月看的C++代码,肯定比之前毕业4年加起来还多好几倍。几乎熟悉每个系统,都是靠走读代码去熟悉,然后再看一些文档进行辅助理解。没进鹅厂之前,虽然我也会偶尔看下业务代码,自己写一些代码,但是这还真不是一个等级的事情。后面1个月慢慢的习惯了这样的节奏和怎么跟同事相处,在版本不紧急的情况下,稍微能控制下进度了。
        在这边工作跟以前在小公司工作,我有以下几点不同的感触:
    第一:公司牛人真多,KM上的技术文档看得眼花缭乱,包括上面测试人员写的阅读开源测试框架的文档,看着让我觉得自己写的东西都是~~~~
    第二:高效沟通很重要,怎么跟组长和测试负责人反馈测试进度,让大家都清楚当前项目的版本,风险,进度呢?
    第三:快速熟悉一个系统,看代码能力急需提升。
    第四:公司很多小福利,班车啊,食堂啊,这些小福利虽然不值多少钱,但是却觉得很暖心。
    第五:每天都加班的生活,晚上8点钟就下班真不叫加班。
        其实我不是很喜欢这样的生活和工作节奏,并不是神马老加班这种原因,是因为感觉自己每天都处于无法自控的状态,这滋味不好受。那问题来了?为什么每天我都处于这种状态呢?其实原因自己是心知肚明的。我想应该有以下几个原因:
    原因一:c++编程基本功底不够;看c++代码很吃力,一些复杂的数据结构+一些复杂的语法,看不懂,导致业务理解速度慢。对于一个入门级别的我来说,一两天看完一个系统确实是很不容易的一件事。
    原因二:总结的知识点不到位;每天学习不同的知识,遇到一些零碎的知识点,没有集中的总结,有时候偶尔会犯毕业生的错误,同一件事,问了2遍,这种事情不应该发生多次。
    原因三:刚入职时,收集的资料不全面;这也有可能是由于当时能力的不足导致的收集资料的局限性。除了导师给的资料,应该主动跟部门老同事咨询资料库,部门文档SVN路径等地方。至少应该弄清楚有哪些DB,有DB相关文档;有哪些系统,系统大致介绍的文档等。
       这几个月多多少少估计看了快几万行代码了吧,最深刻的感想就是对代码的阅读能力需要快速提升,思考下自己看代码和开发看代码的方法,还真是有点不一样。一方面:感觉我认识一部分测试人员看代码跟我看代码一样,都是拿着代码后,狂看业务逻辑,然后再总结下业务流程,然后等着测试了;但是开发似乎不是这样的,他们一般都是拿到版本后,先部署,然后一边断点调试,一遍查看代码逻辑。还有一方面:我看代码容易一开始就局限在一个功能点上不断深入的看,而开发哥哥更有那种纵观全码的气概。还有一个被灌输的理念在我脑子里,我觉得也挺对的:提高编程能力万无一失的方法就是阅读别人的代码。阅读那些经常用的库,编程框架的源代码,大牛的源代码。我觉得以下阅读代码的方法是可行的:
        首先:在宏观上对代码有所了解。拿到代码前,最开始能对项目本身的大体功能有所了解,可以阅读一些开源代码简介,项目文档类似这种非代码本身的任何资料。对整个功能大致了解后,再开始从宏观层面对代码进行了解。比如:了解项目部署后文件的层次结构;项目的配置文件;项目的源代码层次结构等。
        然后:阅读代码,断点调试,记录业务逻辑。如果项目部署在windows平台上,可以直接在vc上部署项目并调试,不过现在c++编写的后台程序基本都是在linux下的,在linux下就可以用GDB进行调试;
        接着:改变入参内容,继续调试,总结业务逻辑。不断调试,熟悉业务逻辑,熟悉到一定的程度,除了画出业务逻辑流,还能画出UML的类图之类的应该可以更进一步加深对代码本身的理解。
        一股劲的只看代码,虽然有时也能看懂,但是养成一个看代码的好习惯才是最终的目的。17年已经开始了,加油吧骚年!
  • 相关阅读:
    poj 1579(动态规划初探之记忆化搜索)
    hdu 1133(卡特兰数变形)
    CodeForces 625A Guest From the Past
    CodeForces 625D Finals in arithmetic
    CDOJ 1268 Open the lightings
    HDU 4008 Parent and son
    HDU 4044 GeoDefense
    HDU 4169 UVALive 5741 Wealthy Family
    HDU 3452 Bonsai
    HDU 3586 Information Disturbing
  • 原文地址:https://www.cnblogs.com/loleina/p/6403301.html
Copyright © 2011-2022 走看看