美文网首页
重构实践(1)

重构实践(1)

作者: 墨_0b54 | 来源:发表于2021-10-21 23:30 被阅读0次

    本身是一个性能优化的需求,优化过程中发现这个实体类的查询很复杂,涉及到很多表,很多关系。
    涉及到很多的嵌套查询,很多数据要作为参数在嵌套查询中传递,或者很多数据需要重复查询。
    重构的想法:

    1. 构建一个查询的上下文类,将所有涉及到 这个超大实体的查询都放在上下文对象中,并实现懒加载。
    2. 在优化过程中,将嵌套的数据拆分到多个上下文类,将原本的整个上下文类根据实体的聚合关系进行拆分。
    3. 将实体数据逐渐重构移动到各个上下文中。
    4. 在这个过程中还发现一些几乎不变的数据,可以做成缓存,减少查询。
      重构结束后,数据的获取被限制在上下文中,数据更有组织,然后查询的代码就不会散落在各个函数中,并且消除了null判断,查询流程清晰易理解。
      再进一步,这个重构可以应用在当前项目里所有超大对象的查询里。

    相关文章

      网友评论

          本文标题:重构实践(1)

          本文链接:https://www.haomeiwen.com/subject/eqzqaltx.html