zoukankan      html  css  js  c++  java
  • 敏捷开发-各个原则的理解

    个人理解的敏捷开发:

      一个开发团队在开发的过程中需要应付不停变更的需求,而敏捷开发的宗旨就是迎合这些变更,敏捷开发就是为了快速变更而产生的一种开发理念。

      在团队中开发,测试,产品,设计。都处于高效沟通的状态,及时的反馈信息,做到及时的变更,快速的迭代。

      敏捷开发不同于传统的开发模式,不需要考虑没有发生的场景,不需要太多的预判。设计好当前的需求,开发,测试,上线。

      当下个需求提出时,可能与当前的设计相违背,那么就需要丰富的经验去修改当前的设计,所以敏捷开发也需要大量的实战经验去实现。

      敏捷开发就是不停的满足变更的需求,迎合需求去不停的修改设计,修改代码,开发出满足新需求的功能来。

    区别于传统开发:

      需求呈现的周期非常短,由于敏捷开发不需要预估大量的设计,单纯的为了需求做呈现,可以在极快速的周期内呈现出大致的需求效果。

    敏捷开发的难点:

      在项目的不停迭代的期间,会不停的去修改设计,去修改代码。这个时候如果没有一个良好的开发习惯,那么代码的茁壮性就会慢慢的在不停迭代的过程中变差。

      敏捷开发不仅仅要应付新的需求,还要修改老的设计,当老的设计不满足或者不符合当前新的需求的时候,那么新需求开发和老代码优化这2个问题需要同时进行。

      不然日积月累下代码中冗余的问题会慢慢积累,到最后代码的迭代将变得寸步难行!!!

    发现代码中的腐臭味:

      僵化代码:是指难以对软件进行改动,即便是简单的改动。如果单一的改动会导致有依赖的模块的连锁改动,那么这样的设计就是僵化的。如果牵连的模块越多,那么这样的设计越是僵化。

        脆弱代码:是指在进行一个改动时,程序的许多地方就会出现问题,出现问题的地方和改动的地方并没有概念上的 关联,如果要修复这些问题那么又会引发新的问题的产生,这样会使得开发人员光是修复问题就会浪费大量的时间。所以在不停迭代需求的同事不停的优化老代码,不停的变更设计是敏捷开发的一个核心理念。

        牢固代码:是指设计中对其他系统有用的代码,但是如果要将这些有用的部分分离出来,需要花费巨大的精力,可能还要伴随很大的风险。

        不必要的复杂代码:即代码中不需要过分预估需求,导致一些设计过于的复杂。这些设计可能出发点是好的,但是结果可能恰恰相反,设计会因此变得复杂,混乱,难以开发。

        不必要的重复代码:即指有些代码块只有稍许的不同,但是却被大量的复制粘贴,这样的重复代码会导致系统的维护变得十分困难,可能一处错误就需要全局的去修改所有类似的地方。党面临过这种情况是优先去考虑能否使用继承,封装去解决这种重复的代码。

        晦涩代码:难以阅读,理解的代码。

    如果在开发中发现以上的问题,那么需要及时的想办法去沟通解决。不然问题日积月累会导致项目以后寸步难行!!!

        

     

  • 相关阅读:
    MySQL令人咋舌的隐式转换
    MySQL 数据库基础(二)(MySQL 服务基础与使用 MySQL 数据库)
    以友盟+U-Push为例,深度解读消息推送的筛选架构解决方案应用与实践
    逆向工程,调试Hello World !程序(更新中)
    520了,用32做个简单的小程序
    postgresql 数据库 update更新慢的原因(已解决)
    面试题单例模式的五种写法(枚举妙用)
    人工智能能力提升指导总结
    数据结构-队列(2)-循环队列
    数据结构-队列(1)
  • 原文地址:https://www.cnblogs.com/culushitai/p/10025292.html
Copyright © 2011-2022 走看看