问题列表 - 第17886页

代码是否应该阻止逻辑上无效的呼叫,即使不会造成伤害?

这个问题一直困扰着我.

让我们设想一个代表资源的类,为了能够使用这个资源,首先需要在其上调用'Open'方法,否则将抛出InvalidOperationException.

我的代码是否还要检查是否有人试图打开已经打开的资源,或者关闭已经关闭的资源?

代码是否应该防止逻辑上无效的调用,即使不会造成任何伤害?

我认为以这种方式编程有助于在另一方编写更好的代码,但我觉得我可能会承担太多责任并影响可重用性.

你们有什么感想?

编辑:

我不认为这可以被称为防御性编程,因为它不会让任何可能的错误使用滑动,并且将抛出另一个InvalidOperationException.

error-handling exception

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

可以将具有单个重复字符的java String初始化为特定长度

我想创建一个具有以下签名的函数:

public String createString(int length, char ch)
Run Code Online (Sandbox Code Playgroud)

它应该返回一串指定长度的重复字符.

例如,如果length为5且ch为'p',则返回值应为

public String createString(int length, char ch)
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点,没有循环,直到它是所需的长度?
没有任何外部定义的常量?

java string initialization

50
推荐指数
4
解决办法
3万
查看次数

在VS(2008)中是否有"跳过所有断点"命令?

作为标题,是否有一种快速方法可以在不停止断点的情况下运行代码一次?

breakpoints visual-studio

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

Amazon RDS实例是否可升级?

我是否可以根据需要切换(我的意思是升级或降级)Amazon RDS实例,还是我必须重新创建并重新迁移?

amazon-rds

63
推荐指数
5
解决办法
3万
查看次数

在C++中引用对象的适当英语术语是什么?

在C++中引用"当前"对象的正确/适当的英语术语是什么.例如,假设您在此实现的主体中编写注释:

Thing Thing::operator+(const Thing& other)
Run Code Online (Sandbox Code Playgroud)

你有一个变量名"other"用于另一个对象,但你用什么单词/表达来引用正在进行操作的对象?

c++ terminology

3
推荐指数
2
解决办法
494
查看次数

代码有多长时间了?

我正在回过头代码中的一些较小的TODO.其中一个是处理部分日期的类,例如2001年1月.它可以在我们的系统(1990 - 2099)中看到的日期工作正常,并且在其他日期优雅地失败.

我为自己留下的TODO是我在2100年及以后的世纪都没有处理日期.我真的不认为修复这个特定问题的努力是值得的,但我认识到Y2k的错误.如果我们已经在2080年了,我想我会以不同的方式思考并修复错误.

那么代码需要多长时间?我们应该在多大程度上规划我们的系统继续运行?

更新

好的,谢谢你的所有投入.我想我可以选择将TODO留在代码中,什么都不做.我发现最有趣的想法是:

  • @Adrian - 永恒,我认为这是最正确的假设,你对VM的看法是好的.
  • @ jan-hancic - 这取决于,是的.
  • @ chris-ballance - 我猜这个限制被击中的时候我会死的,所以如果他们想要他们可以来玷污我的坟墓,但我会死的,所以我只会困扰他的屁股.

我决定什么都不做的原因很简单.它增加了可忽略的商业价值,其他需要看的东西确实增加了价值所以我会先做它们,如果我有时间我会修复它,但实际上它只不过是一个学术练习.

language-agnostic

40
推荐指数
7
解决办法
1994
查看次数

JavaScript !! 运营商

可能重复:
什么是!! (不是)JavaScript中的运算符?

我见过运营商!使用过像!!.例如


var filter = !!(document.body.filters);

如果我没错,它就等同于var filters = typeof document.body.filters != 'undefined'什么?

这是一个好用的做法!!吗?

javascript

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

当有人杀死java.exe进程时,我怎么能抓住时机?

控制台java应用程序 有人通过任务管理器杀死java.exe进程.在申请终止之前,我如何写入记录某些信息?

Thread.currentThread().setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
    public void uncaughtException(Thread t, Throwable e) { ..... }
}); 
Run Code Online (Sandbox Code Playgroud)

要么

Runtime.getRuntime().addShutdownHook(new Thread() {
    public void run() { ..... }
});
Run Code Online (Sandbox Code Playgroud)

不要在这种情况下执行

java

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

ASPXAUTH cookie未保存

我正在ASP .NET MVC 2中的Web项目上工作.

在这个项目中,我们将一些信息存储在一个ecripted cookie(ASPXAUTH cookie)中,以避免为每个请求查询db.

事情是这部分的代码突然停止工作.

我查看了对源控制服务器上的代码所做的任何可能导致它的更改,我一无所获.我甚至还原到了一个已知的工作副本(处理其他人PC,相同的代码等),但经过调试后,似乎.ASPXAUTH cookie不再被保存了.而是设置了ASP.NET_SessionId cookie ...(之前没有)

我更改了web.config文件以关闭sessionState.这消除了设置ASP.NET_SessionId cookie,但它仍然没有保存auth cookie.

我最近安装了一些Microsoft Windows XP更新,但另一个人(PC运行应用程序就好了)也做了.

谷歌搜索后,我发现一些信息指出了cookie的过期日期问题.以太网电脑没有合适的时间/日期(事实并非如此),而其他人则错误地设置了有效期限.(我检查过,它设置正确)...

除了使用(Chrome)之外的其他浏览器,问题仍然存在,我尝试使用IE6.

有关为什么会发生这种情况的任何想法?

我继续发布我能找到的任何有用的信息.

提前致谢.

asp.net cookies asp.net-mvc forms-authentication

6
推荐指数
1
解决办法
4869
查看次数

为什么IEnumerable的ToArray()扩展方法抛出ArrayTypeMismatchException?

为什么下一个示例抛出System.ArrayTypeMismatchException?

New Int16(){4,5,6}.Cast(of UInt16).ToArray()
Run Code Online (Sandbox Code Playgroud)

我希望这一行返回一个包含4,5和6的UInt16数组.

提前致谢.

.net vb.net ienumerable exception

5
推荐指数
2
解决办法
420
查看次数