没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
极客时间
http://139.196.35.134/time/#/article/471[2018/8/1 9:18:13]
推荐阅读:每个程序员都该知道的事
2017-10-24 陈皓,杨爽
在专栏开篇词中,我提到,在每个月月中,我会推荐一些有价值的内容,供你参考。这个月,我将为你推荐五篇阅读文章,这五篇文章我觉得都是比较不错的经验总结,是我们每一
个技术人员都需要知道的东西。它们分别是:
上开出来的一个经典书书单;
美国某大学教授给计算机专业学生的一些建议,其中有很多的资源;
LinkedIn的高效代码复查实践,很不错的方法,值得你一读;
一份关于程序语言和bug数相关的有趣的报告,可以让你对各种语言所有了解;
最后是一本C++性能优化的非常有价值的电子书。
每个程序员都应该要读的书
在上有一个问题
,网址为:
虽然这个问题被关闭了,但是这是一个非常热门的问题。排在第一个的人给了一大串书的列表,看上去着实吓人,不过都是一些相当经典相当有影响力的书,在这里我重罗列一些我
觉得你必需要看的。
《代码大全》虽然这本书有点过时了,而且厚到可以垫显示器,但是这是一本绝对经典的书。
《程序员修练之道》这本书也是相当的经典,我觉得就是你的指路明灯。
《计算机的构造和解释》经典中的经典,必需读的书。
《算法导论》美国的本科生教材,这本书应该也是中国计算机学生的教材。
《设计模式》这本书是面向对象设计的经典书。
《重构》代码坏味道和相应的代码的最佳实践。
《人月神话》这本书可能也有点过时了。但还是经典书。
《代码整洁之道》细节之处的效率,完美和简单。
《》/《》C++中两本经典得不能再经典的书。也许你觉得C++复杂,但这两本书中带来对代码稳定性的探索方式让人非常受益,因为这种
思维方式同样可以用在其它地方。以至于各种模仿者,比如《
》也是一本经典书。
《Unix编程艺术》、《Unix高级环境编程》也是相关的经典。
还有好多,我就不在这里一一列了。你可以看看其它的答案,我发现自己虽然读过好多书,但也有好些书没有读过,这个问答对我也很有用。
每个搞计算机专业的学生应有的知识
What every computer science major should know,每个搞计算机专业的学生应有的知识,网址为:http://matt.might.net/articles/what-cs-majors-should-know/
本文作者马修
·
迈特(
Matthew Might
)是美国犹他大学计算机学院的副教授,
2007
年于佐治亚理工学院取得博士学位。计算机专业的课程繁多,而且随着时代的变化,科目的课程
组成也在不断变化。如果不经过思考,直接套用现有的计算机专业课程列表,则有可能忽略一些将来可能变得重要的知识点。为此,马修力求从四个方面来总结,得出这篇文章的内
容。
1. 要获得一份好工作,学生需要知道什么?
2. 为了一辈子都有工作干,学生需要知道什么?
3. 学生需要知道什么,才能考进研究生院?
4. 学生需要知道什么,才能对社会有益?
这篇文章不仅仅对刚毕业的学生有用,对有工作经验的人同样有用,这里我把这篇文章的内容摘要如下。
极客时间
http://139.196.35.134/time/#/article/471[2018/8/1 9:18:13]
首先,对于我们每个人来说,作品集(
Portfolio
)会比简历(
Resume
)更有参考意义。所以,在自己的简历中应该放上自己的一些项目经历,或是一些开源软件的贡献,或是你完
成的软件的网址等。最好有一个自己的个人网址,上面有一些你做的事,自己的技能,经历,以及你的一些文章和思考会比简历更好。
其次,计算机专业工作者也要学会与人交流的技巧,包括如何写演示文稿,以及面对质疑时如何与人辩论的能力。
最后,他就各个方面展开计算机专业人士所需要的硬技能:工程类数学、
Unix
哲学和实践、系统管理、程序设计语言、离散数学、数据结构与算法、计算机体系结构、操作系统、网
络、安全、密码学、软件测试、用户体验、可视化、并行计算、软件工程、形式化方法、图形学、机器人、人工智能、机器学习、数据库,等等。详读本文可以了解计算机专业知识
的全貌。
这篇文章的第三部分简直就是一个知识资源向导库,给出了各个技能的方向和关键知识点,你可以跟随着这篇文章里的相关链接学到很多东西。
LinkedIn
高效的代码复查技巧
,LinkedIn的高效代码复查技巧,网址为:https://thenewstack.io/linkedin-code-review/
对于
Code Review
,我有一篇文章
《从
Code Review
谈如何做技术》,讲述了为什么
Code Review
是一件很重要事情。今天推荐的这篇文章是
LinkedIn
公司的相关实践。
这篇文章介绍了
LinkedIn
公司内部实践的
Code Review
形式。具体来说,
LinkedIn
的代码复查有以下几个特点。
从2011年开始,强制要求在团队成员之间做代码复查。Code Review带来的反馈意见让团队成员能够迅速提升自己的技能水平,这解决了LinkedIn各个团队近年来因迅速扩张带
来的技能不足的问题。
通过建立公司范围的Code Review工具,这就可以做跨团队的Code Review。既有利于消除bug,提升质量,也有利于大家对代码的学习和技能的传播。
Code Review的经验作为员工晋升的参考因素之一。
Code Review的一个难点是,Reviewer可能不了解某个修改的背景和目的。所以LinkedIn要求代码签入版本管理系统前,就对其做清晰的说明,以便复查者了解其目的,促
进
Review
的进行。
我认为,这个方法实在在太赞了。因为,我看到很多时候,
Reviewer
都会说不了解对方代码的背景或是代码量比较大而无法做
Code Review
,然而,却没有找到相应的方法解决这
个问题。
LinkedIn
对提交代码写说明文档这个方法是一个非常不错的方法,因为代码提交人写文档的过程其实也是重头梳理的过程。我的个人经验是,写文档的时候通常会发现自己把事儿干
复杂了,应该把代码再简化一下,于是就会回头去改代码。是的,写文档就是在写代码。
有些Code Review工具所允许给出的反馈只是代码怎样修改以变得更好,但长此以往会让人觉得复查提出的意见都表示原先的代码不够好。为了提高员工积极性,LinkedIn的代
码复查工具允许提出
“
这段代码很棒
”
之类的话语,以便让好代码的作者得到鼓励。我认为,这个方法也很赞,正面鼓励的价值也不可小看。
为Code Review的结果写出有目的性的注释。比如“消除重复代码”,“增加了测试覆盖率”,等等。长此以往也让团队的价值观得以明确。
Code Review中,不但要Review提交者的代码,还要Reivew提交者做过的测试。除了一些单元测试,还有一些可能是手动的测试。提交者最好列出所有测试过的案例。这样可
以让
Reviewer
可以做出更多的测试建议,从而可以提高质量。
对Code Review有明确的期望,不过分关注细枝末节,也不要炫技,而是对要Review的代码有一个明确的目标。
编程语言和代码质量的研究报告
A Large-Scale Study of Programming Languages and Code Quality in GitHub,编程语言和代码质量的研究报告,网址为:
https://cacm.acm.org/magazines/2017/10/221326-a-large-scale-study-of-programming-languages-and-code-quality-in-github/
这是一项有趣的研究。有四个人从
Github
上分析了
728
个项目,
6300
万行代码,近
3
万个提交人,
150
万个
commits
,以及
17
种编程语言(如下图所示),然后,他们想找到编程
语言对软件质量的影响。
然后,他们还对编程语言做了一个分类,想找到不同类型的编程语言的
bug
问题。如下图所示:
剩余9页未读,继续阅读
史努比狗狗
- 粉丝: 29
- 资源: 317
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【java毕业设计】大学生租房系统源码(springboot+vue+mysql+说明文档+LW).zip
- 番茄叶片病害数据集-植物病害
- 【java毕业设计】大学生体质测试管理系统源码(springboot+vue+mysql+说明文档+LW).zip
- 深信服升级客户端6.2
- 【java毕业设计】车辆充电桩源码(springboot+vue+mysql+说明文档+LW).zip
- AStarGrid.m
- 【java毕业设计】超市进销存系统源码(springboot+vue+mysql+说明文档+LW).zip
- 第三章多表查询练习二续答案.sql
- 基于ssm框架+mysql+jsp实现的图书商城管理系统【完整源码+数据库】
- 数据库课程设计-JavaEE实现网上购物子系统+项目源码+文档说明
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0