代码精进之路--极客时间课程推荐/优惠
版权声明
本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
你将获得:
- 编程实战中的避坑清单;
- 高效规范的代码编写方法;
- 消除代码中的安全隐患;
- 为团队交付最佳性能的代码。
课程介绍
2014年2月,安全研究人员爆出苹果公司旗下的iOS和OS X操作系统出现了严重的安全漏洞,黑客可以利用这一漏洞轻松获取用户的数据。
if ((error = doSomething()) != 0)
goto fail;
goto fail;
if ((error= doMore()) != 0)
goto fail;
fail:
return error;
其实这个漏洞产生的原因仅仅是因为出现了一行多余的代码,导致后面的其他代码“失效”,这一低级错误也让所有的安全人员大跌眼镜。你可能会说,这开发人员真是太粗心了,是不是他复制代码的时候,多复制了一行,然后忘记删除了?
可能是这个原因,但问题的源头肯定不是粗心。有专家在看完了代码文件之后,发现相关的bug代码没有正确使用缩进,也没有正确使用括号,并且其中的空格、制表符和代码注释也都不统一。
你看,苹果公司的这个案例给我们上了教科书般的一课,深刻地告诉我们编程的基础能力是有多么重要。一个小小的疏忽,可能就会造成严重的后果。
编写安全、高效、易读和可扩展的代码,是每一个程序员的毕生追求。那到底怎么才能实现这个目标呢?
为此,我们邀请到了范学雷老师,他将带你开启一段代码精进之旅。
范学雷,Oracle首席软件工程师,Java SE安全组成员,OpenJDK评审成员。范学雷是Java SE安全的主要推动者和贡献者之一,也是Java语言平台的设计实现者之一。
在专栏里,他将带着自己20多年的编程心得和丰富的代码评审经验,围绕代码的规范、经济和安全三个方面展开讲解,选取实际工作中最常遇到的40多个经典细节,通过多种语言来描述,帮你纠正错误的编码认知,带你挖掘实际工作场景中的编码隐患,教给你最具体实用的优化方案,一起培养良好的编码习惯,写出优秀的代码。
专栏模块
专栏分为4个模块。
认知篇
什么样的代码是优秀的代码?如何才能写出优秀的代码?优秀的软件工程师什么样?这一模块将为你清楚介绍优秀代码的准则和达成路径,其中的核心认知将贯穿每一个程序员的编程生涯。
“规范”修炼篇
怎么给你的代码起好名字?写好注释很容易吗?异常处理都有哪些陷阱?这一模块将带你讨论代码规范的十个关键维度,结合正反面案例,手把手教你编写规范的代码。
“经济”修炼篇
Java垃圾管理器可以提高多少效率?列表查询速度可以提高多少?这些问题都能通过编写“经济”的代码搞定。这一模块将带你深入十余个编码细节,教你写出维护性高、兼容性好的高质量代码。
“安全”修炼篇
代码安全是老生常谈的问题,一个疏忽的小细节就有可能造成一个大漏洞。这一模块将从案例入手,教你规避编码过程中常见却又容易疏忽的安全隐患,编写“牢固”的代码。
课程目录
开篇词
- 开篇词 | 你写的每一行代码,都是你的名片
第一模块:代码“规范”篇
- 01 | 从条件运算符说起,反思什么是好代码
- 02 | 把错误关在笼子里的五道关卡
- 03 | 优秀程序员的六个关键特质
- 04 | 代码规范的价值:复盘苹果公司的GoToFail漏洞
- 05 | 经验总结:如何给你的代码起好名字?
- 06 | 代码整理的关键逻辑和最佳案例
- 07 | 写好注释,真的是小菜一碟吗?
- 08 | 写好声明的“八项纪律”
- 09 | 怎么用好Java注解?
- 10 | 异常处理都有哪些陷阱?
- 11 | 组织好代码段,让人对它“一见钟情”
- 12丨组织好代码文件,要有“用户思维”
- 13 | 接口规范,是协作的合约
- 14 | 怎么写好用户指南?
- 15 | 编写规范代码的检查清单
- 16丨代码“规范”篇用户答疑
第二模块:代码“经济”篇
- 17 | 为什么需要经济的代码?
- 18丨思考框架:什么样的代码才是高效的代码?
- 19 | 怎么避免过度设计?
- 20 | 简单和直观,是永恒的解决方案
- 21 | 怎么设计一个简单又直观的接口?
- 22丨高效率,从超越线程同步开始!
- 23 | 怎么减少内存使用,减轻内存管理负担?
- 24 | 黑白灰,理解延迟分配的两面性
- 25 | 使用有序的代码,调动异步的事件
- 26 | 有哪些招惹麻烦的性能陷阱?
- 27 | 怎么编写可持续发展的代码?
- 28 | 怎么尽量“不写”代码?
- 29 | 编写经济代码的检查清单
- 30丨“代码经济篇”答疑汇总
第三模块:代码“安全”篇
- 31 | 为什么安全的代码这么重要?
- 32 | 如何评估代码的安全缺陷?
- 33 | 整数的运算有哪些安全威胁?
- 34 | 数组和集合,可变量的安全陷阱
- 35 | 怎么处理敏感信息?
- 36 | 继承有什么安全缺陷?
- 37 | 边界,信任的分水岭
- 38 | 对象序列化的危害有多大?
- 39 | 怎么控制好代码的权力?
- 40 | 规范,代码长治久安的基础
- 41 | 预案,代码的主动风险管理
- 42 | 纵深,代码安全的深度防御
- 43 | 编写安全代码的最佳实践清单
- 44 | “代码安全篇”答疑汇总
加餐
- Q&A加餐丨关于代码质量,你关心的那些事儿
结束语
- 结束语|如何成为一个编程好手?
期末测试题
- 期末测试丨有关代码编写的那些准则,你掌握了多少呢?