-会议内容-
课程简介
细节之中自有天地,细节也决定着成败。 对于编码的细节,一直被认为是小道。诸如方法命名,变量定义,语句组织,任务分解等内容,都是细枝末节,微不足道。然而,对一个整体的软件系统而言,既需要宏观的架构 决策,设计与指导原则,也必须重视微观的代码细节。在软件行业,有许多影响深远的重大 失败,其根源往往是编码细节出现了疏漏。
“代码即架构”,软件系统质量的好坏,归根结底还是需要代码来告知。代码的优劣不 仅直接决定了软件的质量,还将直接影响软件的成本。
目标收益
本课程可以让程序员将以往格式凌乱、拖沓冗长的代码变得更具可读性,更整洁,更优 雅。编写程序不仅是去告诉计算机你要做什么,更重要的是让人明白,你想要让计算机去做 什么。 而编写简洁、清晰、美观、容易理解的代码,才能够让”人“容易明白自己的意图。
培训对象
只要是需要编写代码的人员,都适合本课程,有 C 语言,C++/Java 语言背景者更佳
-主办方介绍-
麦思博(北京)软件技术有限公司(msup)
麦思博(msup)有限公司发源美国西雅图,2007年创办,是一家面向技术型组织的培训咨询机构,服务于技术团队的技能提升、软件工程的实际应用和产品品质的创新与超越。强调人员、技术、流程和管理的有机结合,注重角色岗位的技能提升与职业发展,以及技术团队复合管理与协作。每年超过1000家企业续单参与msup旗下公开课、工作坊、案例研究、国际游学等培训项目。
课程大纲
开篇
|
内容一:是什么让代码变得“更好”
1. 可读性基本原理
2.整洁代码的含义
3.高质量代码的关注点
4.优雅的代码 = 可读,整洁,高质量
|
代码形式的改进
|
内容一:将信息装进名字里
1.选择专业的词
2.避免使用像 tmp 这样泛泛的名字
3.用具体的名字代替抽象的名字
4.为名字附带更多信息
5.名字应该有多长
6.利用名字的格式类传递含义
内容二:不会误解的名字
1.Filter() 与 Clip(text, length)
2.使用 first 和 last 来表示包含的范围
3.使用 begin 和 end 来表示包含/排除范围
4.给布尔值命名
5.与使用者的期望相匹配
6.实战:如何权衡多个备选的名字
内容三:代码审美学
1.保持一致和紧凑
2.用函数来整理不规则的代码
3.在需要时使用列对齐
4.始终保持一个有意义的顺序
5.把声明按块组织起来
6.把代码分成“段落”
7.个人风格与一致性
内容四:该写什么样的注释
1.什么不需要注释
2.记录你的思路
3.站在读者的角度
4.让注释保持紧凑
5.避免使用不明确的代词
6.润色粗糙的句子
7.精确的描述函数的行为
8.用输入/输出例子来说明特别的情况
9.声明代码的意图
10.“具名函数参数“的注释
11.采用信息量高的词
|
简化循环和逻辑
|
内容五:把控制流变得易读
1.条件语句中参数的顺序
2.if/else 语句块的顺序
3.三目运算符
4.避免 do/while 循环
5.从函数中提前返回
6.臭名昭著的 goto
7.最小化嵌套
内容六:拆分超长的表达式
1.使用解释性变量
2.使用总结性变量
3.使用德摩根定律
4.滥用的短路逻辑
5.实战:与复杂的逻辑战斗
6.拆分巨大的语句
7.简化表达式的创意方法
内容七:变量与可读性
1.减少变量
2.缩小变量的作用域
3.只写一次的变量
4.实战:变量优化
|
重新组织代码
|
内容八:抽取不相关的子问题
1.例子:findClosestLocation()
2.纯工具代码
3.其他多用途代码
4.创建大量通用代码
5.项目专有功能
6.简化已有接口
7.按需重塑接口
3
8.过犹不及
内容九:一次只做一件事
1.任务可以很小
2.从对象中抽取值
3.大型的例子
内容十:把想法变为代码
1.清楚的描述逻辑
2.了解函数库是有帮助的
3.把这个方法用于更大的问题
内容十一:少些代码
1.别费神去实现你不需要的功能
2.质疑和拆分你的需求
3.保持小代码库
4.熟悉你周边的代码库
|
精化测试代码
|
内容十二:测试与可读性
1.使测试易于阅读和维护
2.测试代码的问题
3.如何使测试代码更可读
4.让错误消息具有可读性
5.选择好的测试输入
6.为测试函数命名
7.测试函数中的陷阱
8.测试驱动开发
|
项目实战
|
内容十三:设计并改进“计数器“
1.问题
2.定义类接口
3.尝试 1 – 一个幼稚的方案
4.尝试 2 – 传送带设计方案
5.尝试 3 – 时间桶设计方案
6.比较三种方案
|
Owen Dai
前富士通资深架构师
Clo,资深架构师。15年+大型软件产品架构经验。曾为瑞穗银行(Mizuho Bank),东京证券交易所,五十铃汽车开发企业级系统。擅长企业级系统架构,领域驱动设计,重构与模式。为深圳证券交易所,中国电信,中国平安,招商银行信用卡中心,DELL,中兴通讯讲授技术课程。现为南京大学,东南大学,南瑞集团特约技术讲师。
-会议门票-
会务费:5800元人,含参会费,住宿交通自理。
活动家提供2019优雅代码养成指南(9月深圳班)官网最新门票优惠(更新于:2019年07月15日)。2019优雅代码养成指南(9月深圳班)将于2019年09月21日在深圳召开,优惠票在线报名截止2019年09月21日。一键查询2019优雅代码养成指南(9月深圳班)会议通知及邀请函下载,包含开会时间地点、嘉宾演讲主题、日程、价格等会议信息,报名2019优雅代码养成指南(9月深圳班),轻松快捷。