Code Monkey home page Code Monkey logo

Comments (2)

GenXiaoLe avatar GenXiaoLe commented on September 16, 2024

技术债务

  • 概念
    由于产品版本代码的不断迭代以及开发成员的更换后,产品代码的维护和升级越来越难以进行,这种情况称之为技术债务
  • 出现原因(包括以下原因但不限)
  1. 开发人员的技术以及水平问题,写出的代码逻辑不规范和太过冗余,导致接手人员难以维护。
  2. 产品开发周期太短,导致为了产品功能和效果牺牲了代码质量。
  3. 后续开发成员由于种种原因无法对代码进行重构,只能在基础上不断打补丁,导致代码越来越难易维护。
  • 如何解决
    代码债务无法避免,只能开发人员经常review代码,规范代码写法,完善注释,简化代码逻辑,增强产品的健壮性等方法,尽量保证代码的质量和可读性。

from daily.

MMmaXingXing avatar MMmaXingXing commented on September 16, 2024

技术债务(软件体系结构和软件开发中最终产生结果是差劲的代码)

1、概念
债务可以被认为是工作之前必须完成特定的工作。从演化代码开始,经常有需要对变化做出协调的,同时也包括其他部分的代码或文档,也被认为是在一些在未来必须支付的债务。它也会在重构中(消除重复/冗余代码),随着时间的推移让代码质量恶化。

2、产生原因

  • 项目需求的变更或者开发人员能力问题等原因造成代码逻辑不规范
  • Bugs 出现bug之后,在原有基础上缝缝补补,或者修改阶段过于偏向产品和功能而并未对整个解构有完整的感知。
  • //TODO 一些TODO写的时候目的是稍后阶段重新审视这些问题。这些项目在不知觉的情况下变成了技术债务
  • 遗留代码,无法摆脱的一些旧的技术依赖
  • 工作中的项目,由于项目的运行,无法对原有一些模块进行重构

3、解决原因

  • 尽量今日事今日毕,TODO等类型的代码,尽量在发现的当下直接优化,即使它会使你消耗掉更多的时间,不要试图去躲避,否则可能会造成更多的技术债务。
  • 多想多做多思考,规范代码写法,多写注释,简化代码逻辑。
  • 将你发现的所有问题,尽量都记录下来,列为一个待检表(偿债计划表),很多债务你没办法当场解决,等待合适的修补时间,有些没有办法解决的问题,可以在下个项目设计阶段提前预防,或者代码书写时提前优化。
  • 规范代码写法,规范代码写法,规范代码写法。

from daily.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.