代码之丑
识别坏味道,重构问题代码
郑晔  开源项目 Moco 作者
专栏
已完结·共 24 讲
|
2.0w 人已学
|
收藏
6点无痛早起学习的和尚
这个专栏值得反复来阅读,尤其是那些坏味道的代码,值得记住,当自己 coding 的时候就多看看写的代码里是否有这些坏味道的代码
作者回复:记住多少用多少
2021-04-11
6点无痛早起学习的和尚
这几天早上起床就来刷这个课,之前一直没有留言,但是昨天看了之前的一个代码,然后发现了很多前面几章讲的坏味道(比如过长的消息链等),今天又学到了变量声明,记起来之前代码也有这样的问题,今天就立马去改了,点赞这门课
作者回复:学以致用
2021-04-09
大京
我设计了一个客hu模型,包含客hu基本信息(证jian类型,证jian号码,名称),个人信息(有些客hu是自然人,客hu不是用户),企业信息,联xi电话List,地址List(注册地址,经营地址,身份证地址),等等;个人信息、企业信息、联xi电话等都是懒加载,需要用到的时候get才执行查询。如果按照本节的说法,可能这种设计就有问题,但是不知道怎么解决
作者回复:先要分析这些模型之间的关系,如果它们是聚合和聚合根之间的关系,那就要一次性的拿出来,没有什么懒加载的问题。如果是组合关系,也许用不同的访问入口更合适。
2021-01-20
大京
枚举作为参数时,函数里就得根据枚举做不同处理;如果把枚举参数去掉改为多个对应的函数,那根据枚举做不同的处理就提前到调用的地方了。除非用其它一些设计模式
作者回复:这种情况其实可能需要多态
2021-01-19
Geek_3b1096
一直以来认为if-else成对出现
作者回复:就是要打破这种认知。
2021-01-18
Geek_3b1096
"根本没有构建模型的意识"...说得就是我啊
作者回复:你现在有了。
2021-01-18
于途
以卫语句取代嵌套的条件表达式。我在第一家公司转正后,组内code review ,我们组长就推荐了这种做法,一直沿用到现在😁,只是不知道“卫语句”这个正式的概念!
作者回复:学习一些行业通用的语言还是需要的。
2021-01-14
CityAnimal
在不知道要用什么词的情况下: 1. 词汇网站:如dict.cn 2. 把第一步搜到的词在github上搜一下,看下别人怎么用的
作者回复:非常好的补充。
2021-01-11
首长
为啥是“关注点越多越好”?
作者回复:对于大多数人的问题在于,能发现的关注点太少了,能观察到的侧面就太少,拆分的粒度远远不足。所以,尝试多发现一些问题,再来说怎么组合。
2021-01-10
mgxian
https://github.com/mgxian/todolist 刚刚写完第一阶段
作者回复:一点一点进步
2021-01-10
讲师

郑晔

开源项目 Moco 作者

郑晔,网名 dreamhead,极客时间《10x 程序员工作法》《软件设计之美》《代码之丑》《程序员的测试课》专栏作者,学习人数 11w+。   他是一位有着 20 多年研发经验的技术老兵,Oracle Duke 选择奖获奖作品 Moco 的作者,曾担任火币网首席架构师、...查看更多
编辑推荐
讲师的其他课程
10x 程序员工作法
郑晔
开源项目 Moco 作者

63讲 | 53442 人已学习

¥68¥199
软件设计之美
郑晔
开源项目 Moco 作者

42讲 | 19897 人已学习

¥59¥129
程序员的测试课
郑晔
开源项目 Moco 作者

23讲 | 18912 人已学习

¥59¥99
看过的人还看了
设计模式之美
王争
前 Google 工程师,《数据结构与算法之美》专栏作者

113讲 | 123470 人已学习

¥98¥299
数据结构与算法之美
王争
前 Google 工程师

81讲 | 283805 人已学习

¥68¥199
左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家

119讲 | 181001 人已学习

¥98¥399
MySQL 实战 45 讲
林晓斌
网名丁奇,前腾讯云数据库负责人

49讲 | 224938 人已学习

¥68¥199
Redis 核心技术与实战
蒋德钧
中科院计算所副研究员

53讲 | 81748 人已学习

¥68¥199
从 0 开始学架构
李运华
网名“华仔”,前阿里资深技术专家(P9)

66讲 | 152624 人已学习

¥68¥199