小编Var*_*una的帖子

敏捷的神话和误解

敏捷有哪些神话或误解?

有一些与敏捷有关的误解可能会导致普通新人陷入困境.敏捷世界有什么误解,你如何证明这是一种误解呢?


更新:敏捷神话总结

  • 敏捷不允许文档
  • 敏捷方法无法扩展
  • 敏捷意味着没有计划
  • TDD涵盖了所有单元测试需求
  • 结对编程总能产生更好的代码
  • 敏捷是解决软件工程问题的银弹解决方案(有一个银弹解决方案)
  • 敏捷不需要预先设计
  • 我们正在做scrum所以我们不需要做TDD,重构结对编程等.
  • 人们可以从一本书中学习敏捷
  • 敏捷只适用于琐碎的项目
  • 敏捷总是使用"用户故事"

阅读以下答案,了解有关上述神话和更多神话的更多信息.

agile scrum extreme-programming

31
推荐指数
7
解决办法
9096
查看次数

C++静态成员变量初始化是否是线程安全的?

根据以下资源,在C++(特别是Visual C++)中,作用域静态变量初始化不是线程安全的.但是,全局静态变量是安全的.

线程安全的静态变量没有静音?

http://blogs.msdn.com/oldnewthing/archive/2004/03/08/85901.aspx

那么,遵循静态成员变量的代码是否是线程安全的?

class TestClass
{
public:
   static MyClass m_instance;
}

Myclass TestClass::m_instance;
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c++ static multithreading member-variables

24
推荐指数
1
解决办法
2万
查看次数

Heroku的结算限额

我开始研究Heroku,并担心是否会因为我犯的错误而指控我.例如,填充数据库超过5MB.那么,当我超过价格限制时,是否有办法将计费限制设置为Heroku或通知系统以发送通知?

先感谢您!

billing heroku limit

7
推荐指数
1
解决办法
1676
查看次数

如何对代码进行分解以简化可测试性?

我正在学习单元测试,并想知道如何编写可测试的代码.但是,我不确定如何在不使其复杂的情况下编写可测试代码.我将采用着名的汽车和发动机问题来描述问题.

class Car
{
private:
   Engine m_engine;

public:
   Car();
   // Rest of the car
}
Run Code Online (Sandbox Code Playgroud)

我提出了以下解决方案,以使上述代码可测试.

  1. 更改Car的构造函数以将Engine作为参数.然后模拟引擎并进行测试.但是,如果我没有不同类型的引擎,那么参数化构造函数似乎是不合适的,只是为了使它可测试.

  2. 使用setter然后将模拟引擎传递给setter.与上述相同的流程.

  3. 首先测试引擎,然后使用经过验证的引擎(或使用存根引擎)测试汽车.

我必须在代码上测试哪些替代方案?每种方法的优点和缺点是什么?

c++ tdd unit-testing

4
推荐指数
2
解决办法
1674
查看次数