问题列表 - 第30750页

接口与公共类成员

我注意到一些程序员喜欢为他们所有的类创建接口.我喜欢某些事物的接口(例如检查对象是否支持某种行为,然后为该行为设置接口)但过度使用接口有时会使代码膨胀.当我将方法或属性声明为public时,我希望人们只使用我的具体类,我并不真正理解在此基础上创建接口的必要性.

我想听听你对界面的看法.你何时使用它们以及用于何种目的?

谢谢.

language-agnostic oop design-patterns interface

3
推荐指数
1
解决办法
397
查看次数

检查一个名字是否看起来像"人"?

我有一个在线RPG游戏,我正在认真对待.最近我一直遇到用户制作假冒伪劣字符的问题,只是一堆不同的字母.像Ghytjrhfsdjfnsdms,Yiiiedawdmnwe,Hhhhhhhhhejejekk.我强迫他们改名,但它变得太多了.我该怎么办?

我可以以某种方式检查,至少你不能使用超过2个相同的字母彼此相邻?也许如果它包含元音

php artificial-intelligence

10
推荐指数
3
解决办法
1323
查看次数

是否存在密钥库的命名约定(java)

我是第一次使用java密钥库.密钥库是否有标准的扩展名/后缀?它们通常被命名为.ks吗?如果它是一个java密钥库我应该使用.jks?如果一般被接受,我想遵循命名约定.

java naming-conventions keystore

9
推荐指数
1
解决办法
4375
查看次数

ARM SUB指令操作数

我正在使用llvm-clang编译器,在ARMv7-A处理器上编译简单的C函数到汇编.我想弄清楚这个指令的作用.

SUB sp, sp, #65, 30
Run Code Online (Sandbox Code Playgroud)

显然它正在为一些局部变量的堆栈指针腾出空间,但我从未见过带有四个操作数的ARM SUB指令.我猜测30会以某种方式修改#65,但我不知道如何,而且我无法在"ARM体系结构参考手册"中找到详细信息.有什么建议?

好奇的是,这是一个程序的开头,它创建了一个8 x 8整数的单位矩阵,所以我希望sp需要为堆栈上的至少8 x 8 x 4字节腾出空间.

assembly arm

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

Moq:如何验证接受在方法中创建的对象的函数

我有以下方法;

public class MyClass
{
    public Repository UserRepository { get; set; }
    public void CreateUser(Message someMsg)
    {
       if (someMsg.CanCreate)
       {
           var obj = new object();
           UserRepository.Save(obj)
       }
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的测试用例中,我使用Moq来模拟ObjRepository,我想在"Save()"方法上调用verify.但是,save方法接受在被测方法中创建的对象,我无法模拟.

不管怎么说,使用Moq?我做错了吗?

c# unit-testing moq

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

单元测试的新手,如何编写出色的测试?

我对单元测试世界还很陌生,我刚刚决定在本周为我现有的应用添加测试覆盖率.

这是一项艰巨的任务,主要是因为要测试的课程数量,还因为编写测试对我来说都是新的.

我已经为一堆课程编写了测试,但现在我想知道我是否做得对.

当我为一个方法编写测试时,我感觉第二次重写我已经在方法本身中编写的内容.
我的测试似乎与方法紧密相关(测试所有代码路径,期望一些内部方法被调用多次,带有某些参数),似乎如果我重构该方法,即使该方法的最终行为没有改变.

这只是一种感觉,如前所述,我没有测试经验.如果一些更有经验的测试人员可以给我建议如何为现有应用程序编写出色的测试,那将非常感激.

编辑:我很想感谢Stack Overflow,我在15分钟内获得了很多投入,这些投入回答了我刚才在线阅读的更多时间.

testing unit-testing

252
推荐指数
7
解决办法
11万
查看次数

Cocoa:while(index> = 0)继续,即使index == -1

我有以下代码:

-(void)removeFilesWithPathIndices:(NSIndexSet*)indexSet {
    NSInteger index = [indexSet firstIndex];
    while(index >= 0) {
        [self removeFileWithPathIndex:index];
        index = [indexSet indexGreaterThanIndex:index];
    }
}
Run Code Online (Sandbox Code Playgroud)

哪个应该遍历NSIndexSet.但是,即使index = -1,while循环也不会停止

 NSLog(@"%d", index);
Run Code Online (Sandbox Code Playgroud)

有谁能为我解决这个谜团?:)

macos cocoa objective-c while-loop

0
推荐指数
2
解决办法
452
查看次数

使用部分参数创建Python函数

我想将Python函数传递给另一个函数,其中一些参数提前"填写".

这简化了我正在做的事情:

def add(x, y):
    return x + y

def increment_factory(i):  # create a function that increments by i
    return (lambda y: add(i, y))

inc2 = increment_factory(2)

print inc2(3) # prints 5
Run Code Online (Sandbox Code Playgroud)

我不想使用某种传递args然后将其爆炸,*args因为我传入的函数inc2不知道传递args给它.

对于一个团队项目来说,这感觉有点过于聪明......有没有更简单或pythonic的方式来做到这一点?

谢谢!

python lambda

8
推荐指数
1
解决办法
3214
查看次数

在.NET中管理数据库连接的最佳实践是什么?

关于在.NET应用程序中管理数据库连接的最佳实践 - 我知道,通常,传递连接对象是不好的.

但是,我有一些特定的好奇心:


1.我有两个业务对象的实例,不同的类,父母 - 孩子关系(孩子是私人的.)以下哪项是最好的?

  • 保持一个私有静态连接打开和共享,由两个对象使用,并保持打开状态直到父级被释放.

  • 保持两个私有静态连接打开,每个对象一个,在处理对象之前不要关闭.

  • 不要保持静态连接; 打开并随后关闭每个需要它的方法的新连接.但是,我的大多数方法只运行1-3个查询,所以这看起来效率低......


我的第二个问题基本上是相同的,但对于一个单一的形式.这里最好的是什么?

  • 在表单的生命周期内保持一个私有静态连接打开并共享.

  • 不要保持静态连接; 打开并随后为需要它的表单中的每个方法关闭一个连接(同样,每个方法只有1-3个查询.)

.net database-connection connection-pooling

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

Moq控制器测试重复设置

我开始使用Moq框架并且非常喜欢它.我正在编写一些控制器测试,它们有几个服务和接口来安排我的控制器进行测试.我想更多地模块化它,并认为这将是一项微不足道的任务,但事实证明它比我想象的要复杂一些.

这是一个简单的单元测试,我必须展示一个例子:

[Test]
public void Get_SignIn_Should_Return_View()
{
    #region //TODO: figure out how to extract this out to avoid duplicate code
    // Arrange
    var membershipService = new Mock<IMembershipService>();
    var formsService = new Mock<IFormsAuthenticationService>();
    var userService = new Mock<IUserService>();
    var dictService = new Mock<IDictionaryService>();
    var shoppingBasketService = new Mock<IShoppingBasketService>();

    //Create the service provider mock and pass in the IRepositoryFactory so that it isn't instantiating real repositories
    var repoFactory = new Mock<IRepositoryFactory>();
    var serviceProvider = new Mock<ServiceProvider>( (IRepositoryFactory)repoFactory.Object );

    var context = new …
Run Code Online (Sandbox Code Playgroud)

c# nunit unit-testing moq asp.net-mvc-2

5
推荐指数
1
解决办法
1016
查看次数