互联网信息技术迭代周期快是有目共睹的,浮躁的代码无处安放,因此,稳扎、学习、更新自己的知识库就显得尤为重要。如何稳扎基础、自我提升和学习源码。分享如下:
如何稳如泰山地编码
1. 想清楚,在动手写代码
刚入行的新手,为展示自己的能力,拿到需求迫不及待地开始上手写代码,大忌。
2. 不交流就会头破血流
不爱说话和沟通,需求都理解错了,最后做出来,才发现,只能加班返工。
3. 一定要写注释(添加/修改,作者,日期,功能)
时间久了,你会连自己的代码都看不懂!
4. 文档没有人看,但还是要写
文档的作用大部分时候不是用来沟通的,是用来做记录的,大部分需求还是通过口头来沟通,但是不写文档做记录,后续就会容易扯皮。
5. 业务高于技术
如果技术不为公司商业做服务,那将毫无价值,公司赚钱才是硬道理。
6. 别指望需求会稳定
产品需求是根据商业需求不断调整的,改需求是最正常不过的事,别抱怨!
7. 慎用新技术
新技术是好东西,但没有100%把握,自作主张用了,多半是作死。
8. 不要心存侥幸,
你隐约感觉会出bug的地方,依据墨菲定理,就一定会出bug。
9. 自己先测几遍
不要写完就扔给测试人员测试,经自己手的东西,要保证质量。
10. 尽可能自己解决问题
遇到不懂得问题,要先自己尽力解决,别动不动就截个图求支援,上司和同事不是给你擦屁股的,但是真的搞砸了就要尽快求助。
如何精益求精的提升
1. 多做项目,多思考
1>无偿工作 (几乎免费)---开源项目,二次开发,帮人做
2>拼命工作 (加班)
3>在家工作 (自由职业者) ---网络论坛,社交网络,客户推荐
2. 自己开发框架与工具来提高工作效率
1)从无到有为架构
2)开源工具(starUML等)
3. 参与开源项目
1)码上公益
2)参与论坛编码
4. 写技术文档,参加技术论坛
1)微信公众号—安知有话说
2)技术活动——huodongxing
5. 参看参考手册
1)java编码规范集合(总结)
6. 不要害怕复杂,深入分析问题原因
1)独自分析并解决
2)利用线上线下搜索
3)寻求专业人员
7. 扎实计算机基础,深入技术原理
1)读书、文档
2)视频学习
8. 关心产品市场与商业动态(新闻、时报)
1)公司邮报
2)新闻、时报
9. 不要轻视任何一种职位,语言,工具
* 多尝试
如何解读源码
1. 读懂源码,使心法皆为我所用
1)先了解系统架构与行为模式,再细读(在你需要了解任何片段的细节实作时,能够很快在脑上对映到具体的源码位置,直到那一刻,才是细读的时机)
2)熟悉沟通语言与惯例用语
3)掌握源码撰写者的心态与习惯
2. 摸清架构,便可轻松掌握全貌
1)阅读的目的,在于了解全貌而非细节
2)由上而下理清架构后,便可轻易理解组成关系
3)了解架构,必须要加上层次感
4)探索架构的第一件事:找出系统如何初始化
5)探索架构的第一步─ ─找到程式的入口
3. 找到程式入口,再由上而下抽丝剥茧
1)展开的同时,随手记录树状结构
2)无法望文生义的函式,先试着预看一层
3)根据需要了解的粒度,决定展开的层数