首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
代码重构
订阅
山寨之王
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
Android App封装 ——架构(MVI + kotlin + Flow)
最近看了好多MVI的文章,原理大多都是参照google发布的 应用架构指南,但是实现方式有很多种,就想自己封装一套自己喜欢用的MVI架构,以供以后开发App使用。
浅谈状态模式和状态机
背景与场景描述 在开发过程中我们时常需要对程序的不同状态进行切换以及产生不同的行为,通常我们可以使用 if… else 语句来做状态判断处理不同的情况。但是每次新增或者修改状态,if else 语句就
Java 有限状态机 (设计模式——状态模式)
编写代码的时候,有时会遇见较为复杂的swith...case...和if...else...语句。这一刻有时会想到状态机,用有限状态机替换swith...case...和if...else...可以: 状态机模式体现了开闭原则和单一职责原则。 每个状态都是一个子类,增加状态就要…
24种代码坏味道和重构手法
24种代码坏味道和重构手法 最近,小李感觉公司女生们看他的眼神不太对劲了,那种笑容好像是充满慈爱的、姨母般的笑容。 作为一名老实本分的程序员,小李不太习惯这种被人过度关注的感觉,他不知道发生了什么。
Java:单例模式我只推荐两种
延迟初始化。和懒汉模式一致,只有在初次调用静态方法getSingleton,才会初始化signleton实例。 性能优化。同步会造成性能下降,在同步前通过判读singleton是否初始化,减少不必要的同步开销。 线程安全。同步创建Singleton对象,同时注意到静态变量sin…
静态代理这么用?聊一聊ViewPagerIndicator重构的一些经验
ViewPagerIndicator的代码可谓一波三折,在不久前ViewPagerIndicator作为一个单独的仓库从BannerViewPager中拆分了出来。拆分后的indicator已经不仅仅适用于BannerViewPager,还可以用于ViewPager和ViewP…
什么?你还不会用位运算来操作状态?
左移(<<)。 右移(>>)。 无符号右移(>>>)。 与(&)。 或(|)。 非(~)。 异或(^)。 &(与运算):只有当两方都为 true 时,结果才是 true,否则为 false。 |(或运算):只要当一方为 true 时,结果就是 true,否则为 false。 ^…
重构:烧脑判断大扫除
给各位大佬泡上一杯82年的卡布奇诺,细细品味。 优点: if else 最为常见,是所有程序员最熟悉判断语句,可以包含复杂条件。 缺点: 逻辑过多就会变得非常冗长难以理解。 优点: 多种平行条件下更加简洁直观,可跳出,性能更优。 缺点: 同条件的逻辑过多就会变得像裹脚布,嵌套以…
如何优化代码中大量的if/else,switch/case?
这里我们简单的定义一个表示状态的枚举。 那么我们在使用的时候就可以直接通过枚举调用了。 这时候该掏出Optional这个秘密武器了,它可以让非空校验更加优雅,间接的减少if操作。没了解过Optional的同学可自行Google,这里就不再赘述。 上面的代码跟第一段是等效的,通过…
彻底消灭if-else嵌套
if-else作为每种编程语言都不可或缺的条件语句,我们在编程时会大量的用到。 但if-else一般不建议嵌套超过三层,如果一段代码存在过多的if-else嵌套,代码的可读性就会急速下降,后期维护难度也大大提高。 前阵子重构了服务费收费规则,重构前的if-else嵌套如下。 我…