-高效程序员的45个习惯:敏捷开发修炼之道 (图灵程序设计丛书 11)
        -版权信息
        -目录
        -版权声明
        -引言
        -对本书的赞誉
        -推荐序一
        -推荐序二
        -译者序
        -第1章 敏捷——高效软件开发之道
            -敏捷的精神
            -敏捷的修炼之道
            -魔鬼和这些讨厌的细节
            -切身感受
            -平衡的艺术
            -致谢
        -第2章 态度决定一切
            -1 做事
            -2 欲速则不达
            -3 对事不对人
            -4 排除万难,奋勇前进
        -第3章 学无止境
            -5 跟踪变化
            -6 对团队投资
            -7 懂得丢弃
            -8 打破砂锅问到底
            -9 把握开发节奏
        -第4章 交付用户想要的软件
            -10 让客户做决定
            -11 让设计指导而不是操纵开发
            -12 合理地使用技术
            -13 保持可以发布
            -14 提早集成,频繁集成
            -15 提早实现自动化部署
            -16 使用演示获得频繁反馈
    -   所以要尊重客户的时间。如果客户只可以接受一个月一次会议,那么就定一个月。
            -17 使用短迭代,增量发布
            -18 固定的价格就意味着背叛承诺
        -第5章 敏捷反馈
            -19 守护天使
            -20 先用它再实现它
    -   [TestFixture]
    -   public class TicTacToeTest
    -   {
    -     private TicTacToeBoard board;
    -     [SetUp]
    -     public void CreateBoard()
    -     {
    -       board = new TicTacToeBoard();
    -     }
    -     [Test]
    -     public void TestCreateBoard()
    -     {
    -       Assert.IsNotNull(board);
    -       Assert.IsFalse(board.GameOver);
    -     }
    -   }
    -   public class TicTacToeBoard {
    -     public bool GameOver {
    -       get {
    -         return false;
    -       }
    -     }
    -   }
    -   [Test]
    -   public void TestSetFirstPlayer() {
    -                      // what should go here?
    -   }
    -   board.SetFirstPlayer(new Player("Mark"), "X");
    -   board.SetFirstPlayer("X");
    -   [Test]
    -   public void TestSetFirstPlayer() {
    -     board.FirstPlayerPegIsX = true;
    -     Assert.IsTrue(board.FirstPlayerPegIsX);
    -   }
            -21 不同环境,就有不同问题
            -22 自动验收测试
            -23 度量真实的进度
            -24 倾听用户的声音
        -第6章 敏捷编码
            -25 代码要清晰地表达意图
    -   coffeeShop.PlaceOrder(2);
    -   coffeeShop.PlaceOrder(2 /* large cup */);
    -   public enum CoffeeCupSize
    -   {
    -     Small,
    -     Medium,
    -     Large
    -   }
    -   coffeeShop.PlaceOrder(CoffeeCupSize.Largxe);
    -   Line 1  public int compute(int val)
    -        -  {
    -        -    int result = val << 1;
    -        -    //... more code ...
    -        5    return result;
    -        -   }
    -   Public void MakeCoffee()
    -   {
    -     lock(this)
    -     {
    -       // ... operation
    -     }
    -   }
    -   Private object makeCoffeeLock = new Object();
    -   Public void MakeCoffee()
    -   {
    -     lock(makeCoffeeLock)
    -     {
    -       // ... operation
    -     }
    -   }
            -26 用代码沟通
    -   using System;
    -   namespace Bank
    -   {
    -       ///
    -       /// A BankAccount represents a customer' s non-secured deposit
    -       /// account in the domain (see Reg 47.5, section 3).
    -       ///
    -      public class BankAccount
    -      {
    -         ...
    -         ///
    -         /// Increases balance by the given amount.
    -         /// Requirements: can only deposit a positive amount.
    -         ///
    -         ///
    -         /// The amount to deposit, already
    -         /// validated and converted to a Money object
    -         ///
    -         ///
    -         /// Origination of the monies
    -         /// (see FundSource for details)
    -         ///
    -         ///
    -         /// Resulting balance as a convenience
    -         ///
    -         ///
    -         ///
    -         /// If depositAmount is less than or equal to zero, or FundSource
    -         /// is invalid (see Reg 47.5 section 7)
    -         /// or does not have a sufficient balance.
    -         ///
    -         public Money Deposit(Money depositAmount, FundSource depositSource)
    -         {
    -            ...
    -         }
    -      }
    -   }
            -27 动态评估取舍
            -28 增量式编程
            -29 保持简单
            -30 编写内聚的代码
            -31 告知,不要询问
            -32 根据契约进行替换
    -   utils = new BasicUtils();
    -   ...
    -   sortedList = utils.sort(aList);
    -   utils = new FasterUtils();
    -   ...
    -   sortedList = utils.sort(aList);
        -第7章 敏捷调试
            -33 记录问题解决日志
            -34 警告就是错误
    -   Assignment in conditional expression is always constant;
    -   did you mean to use == instead of = ?
    -   条件表达式中的赋值总为常量,你是否要使用==而不是=?
    -   if (theTextBox.Visible = true)
    -   ...
    -   public class Base
    -   {
    -     public virtual void foo()
    -     {
    -       Console.WriteLine("Base.foo");
    -     }
    -   }
    -   public class Derived : Base
    -   {
    -     public virtual void foo()
    -     {
    -       Console.WriteLine("Derived.foo");
    -     }
    -   }
    -   class Test
    -   {
    -     static void Main(string[] args)
    -     {
    -       Derived d = new Derived();
    -       Base b = d;
    -       d.foo();
    -       b.foo();
    -     }
    -   }
    -   Derived.foo
    -   Base.foo
    -   Warning. Derived.foo hides inherited member Base.foo
    -   To make the current member override that implementation,
    -   add the override keyword. Otherwise, you' d add the new keyword.
            -35 对问题各个击破
            -36 报告所有的异常
            -37 提供有用的错误信息
        -第8章 敏捷协作
            -38 定期安排会面时间
            -39 架构师必须写代码
            -40 实行代码集体所有制
            -41 成为指导者
            -42 允许大家自己想办法
            -43 准备好后再共享代码
            -44 做代码复查
            -45 及时通报进展与问题
        -第9章 尾声:走向敏捷
            -9.1 只要一个新的习惯
            -9.2 拯救濒临失败的项目
            -9.3 引入敏捷:管理者指南
            -9.4 引入敏捷:程序员指南
            -9.5 结束了吗
        -附录A 资源
            -A.1 Web资源
            -A.2 参考书目
        -索引
            -A
            -B
            -C
            -D
            -E
            -F
            -G
            -H
            -I
            -J
            -K
            -L
            -M
            -N
            -O
            -P
            -Q
            -R
            -S
            -T
            -U
            -V
            -W
            -X
            -Y
            -Z
Copyright & copy 7dtime.com 2014-2018 all right reserved,powered by Gitbook该文件修订时间: 2018-09-02 18:03:53

results matching ""

    No results matching ""