当前位置: 首页 > wzjs >正文

wordpress响应式网站模板网站分析培训班

wordpress响应式网站模板,网站分析培训班,响应式网站模仿,wordpress 蛋彩画主题🐘 长方法(Long Method) 📍 什么是长方法? 一个函数(方法)写得太长了,比如超过了 10 行代码,就要开始警惕了。 ❗ 为什么不好? 一开始只是加两行代码&…

🐘 长方法(Long Method)

📍 什么是长方法?

一个函数(方法)写得太长了,比如超过了 10 行代码,就要开始警惕了。

❗ 为什么不好?

  • 一开始只是加两行代码,觉得“没必要单独写个函数吧”,但一直加一直加,就变成“面条式代码”。
  • 别人读这个函数会很费劲,自己写的时候也难维护。

✅ 怎么解决?

  • 如果你想在方法里加注释解释某段逻辑,说明这段代码应该拆出去成单独方法。
  • 哪怕是只有一行代码,如果需要说明,也应该单独封装成一个有意义的方法。

🔨 可以使用的技巧:

  • 提取方法(Extract Method)

  • 如果受限于变量,可以使用:

    • 用查询代替临时变量(Replace Temp with Query)
    • 引入参数对象(Introduce Parameter Object)
    • 保留整个对象(Preserve Whole Object)

💰 好处:

  • 小方法的代码更容易看懂、改动风险小。
  • 重复代码也更容易被发现和删除。
  • 不用担心“方法太多影响性能”,其实几乎没影响。

🏢 大类(Large Class)

📍 什么是大类?

一个类(类似于一块代码模块)里面包含太多变量、方法、代码行

❗ 为什么不好?

  • 类一开始很小,但功能一多,就越写越大。
  • 程序员偷懒,喜欢往原来的类里加功能,而不是重新建一个类。

✅ 怎么解决?

  • 把类拆成更小的类,一个类只负责一种职责。

  • 使用:

    • 提取类(Extract Class)
    • 提取子类(Extract Subclass)
    • 提取接口(Extract Interface)
    • 如果是界面类太大,考虑拆成“界面类 + 数据类”

💰 好处:

  • 更容易记住和管理类里的内容。
  • 避免重复代码,代码结构更清晰。

⚙️ 原始类型痴迷(Primitive Obsession)

📍 什么是“痴迷”原始类型?

就是你过度使用 int、string 这些基本类型,而不愿意封装成对象。

比如:

  • 电话号码用 string,金额用 float,而不是专门建个 PhoneNumberMoney 类。
  • 用常量 1, 2, 3 来表示权限等级,而不是定义角色类。

❗ 为什么不好?

  • 这些基本类型不好加规则,也不好扩展。
  • 常量意义不清晰,还容易出 bug。

✅ 怎么解决?

  • 使用对象代替基本类型,比如把 price 封装成 Money 类。
  • 用类表示状态、角色,而不是数字或字符串。
  • 参数多时,用类打包(Introduce Parameter Object)

💰 好处:

  • 代码更灵活,规则清晰。
  • 更容易找到重复代码,修改也集中,不怕出错。

📬 长参数列表(Long Parameter List)

📍 什么是长参数列表?

如果一个方法需要传超过 3~4 个参数,那就太多了。

❗ 为什么不好?

  • 参数太多让方法调用变复杂,容易传错。
  • 有时为了减少依赖,把对象提前创建好再传进来,结果传了一堆参数。

✅ 怎么解决?

  • 如果多个参数来自一个对象,可以直接传这个对象(Preserve Whole Object)。
  • 如果来自不同地方,但经常一起用,就打包成一个类(Introduce Parameter Object)。

💰 好处:

  • 方法调用更简洁,代码更清晰。
  • 还能发现重复逻辑,方便提取成公共方法。

🧱 数据泥团(Data Clumps)

📍 什么是数据泥团?

如果你在多个地方看到总是成组出现的变量(比如数据库连接的 host、port、user、pass),那就是一个“数据泥团”。

❗ 为什么不好?

  • 这些变量成组出现,一变就全变,容易出错。
  • 多次复制粘贴,非常不优雅。

✅ 怎么解决?

  • 把这些成组变量封装进一个类,比如 DbConfig
  • 如果是方法参数太多,也可以用“参数对象”。

💰 好处:

  • 所有相关操作集中在一个类中,更好维护。
  • 大大减少代码行数,也避免写重复的东西。

✅ 小结:什么时候该重构?

异味类型表现处理方式
长方法方法超过 10 行拆方法、封装注释
大类类里方法、变量太多拆类、抽子类/接口
原始类型痴迷int/string 代替对象用对象封装、引入类型
长参数列表传参超过 4 个保留整个对象或参数对象
数据泥团相同变量反复出现抽成类统一管理
http://www.dtcms.com/wzjs/324278.html

相关文章:

  • 传奇游戏排行榜官网seo关键词排名系统
  • 刚做的网站搜索不到站内推广方式
  • 合肥的网站建设公司哪家好网络平台怎么推广
  • 福建漳州网站建设哪家便宜小程序开发公司排行榜
  • 做网站插入音乐用什么下载一份完整的活动策划方案
  • 三网合一 网站建设汕头百度网站排名
  • 小网站建设公司排名网站搜索排名优化
  • 怎么可以自己制作网站竞价托管服务公司
  • 哈尔滨网络兼职网站建设网络营销运营公司
  • 贪玩原始传奇官方网站百度推广外推联系方式
  • 用花生棒做网站快吗微信朋友圈广告推广代理
  • 网站建设税收分类编码杭州产品推广服务公司
  • 企业网站的建立网络虚拟社区时对于企业济南网络优化哪家专业
  • 有了域名就可以做网站了吗昆明seo建站
  • 免费做代理的网站关键词排名seo优化
  • 学做网页的网站百度推广图片
  • 网站分站代理如何在微信上做推广
  • 纺织面料做哪个网站好网络营销公司注册找哪家
  • 手机网站制作服务机构站长之家备案查询
  • 企业网站商城自己开平台怎么弄啊
  • 阳谷做网站引擎网站
  • 龙岩做网站开发大概价格公司网站设计
  • 网站开发 职位描述长沙网站优化培训
  • 网站开发 需求说明书电商的推广方式有哪些
  • 滴滴优惠券网站怎么做的seo研究中心论坛
  • 怎么拥有网站的所有权广州网络推广选择
  • 木马网站怎么做百度云群组
  • 珠海网站建设招聘郑州网站排名优化公司
  • 外汇网站怎么做优化搜索引擎优化名词解释
  • 上海电子商城网站制作如何线上推广自己产品