当我要求使用工具来分析Rails应用程序时,有人指着DTrace.由于我在MacOSX工作站上工作并在OpenSolaris上部署,因此这是一种有效的方法.但我对DTrace知之甚少.
除了通常的嫌疑人,Sun DTrace页面和那里的可用信息,还有其他杀手指针可以学习Dtrace吗?
我陷入了ReSharper和StyleCop之间的争斗中,我想让ReSharper获胜,但我希望在我这样做之前听到支持StyleCop的论据.
当我写长参数列表时,ReSharper明智地切断参数列表并在下一行重新启动它.我发现它更具可读性.
当我在代码上运行StyleCop时,它希望我将这些行保留很长时间.我不喜欢这样,所以我想忽略StyleCop规则(SA1115).我想不出SC为什么会首先想要这些长线的一个很好的理由 - 这只是"我们总是这样做"的情况吗?
这是关于Unix shell脚本(任何shell)的问题,但任何其他"标准"脚本语言解决方案也将受到赞赏:
我有一个充满文件的目录,其中文件名是哈希值,如下所示:
fd73d0cf8ee68073dce270cf7e770b97
fec8047a9186fdcc98fdbfc0ea6075ee
Run Code Online (Sandbox Code Playgroud)
这些文件具有不同的原始文件类型,如png,zip,doc,pdf等.
任何人都可以提供一个脚本来重命名文件,以便它们获得适当的文件扩展名,可能是基于file命令的输出?
JF Sebastian的脚本既适用于文件名的输出,也适用于实际的重命名.
Eclipse IDE有一个简洁的小功能,我在Visual Studio中真的很想念.
如果我将光标放在变量或方法名称上,IDE将自动突出显示相关范围内当前文档中对它的所有引用.
我似乎无法在VS2008或Resharper 4中找到打开类似行为的选项.我知道VS有一个Find Usages功能,但我想在运行中自动执行.
有没有人知道一个免费的插件会添加这个功能?
这也是我在MiškoHevery 关于依赖注入处理谷歌会谈的评论中提出的一个问题,但它已被埋没在评论中.
我想知道将依赖关系连接在一起的工厂/构建器步骤如何才能在C++中工作.
即我们有一个依赖于B的A类.构建器将在堆中分配B,在A的构造函数中传递指向B的指针,同时在堆中分配并返回指向A的指针.
谁事后清理?建造者在完成后清理它是否好?它似乎是正确的方法,因为在谈话中它说构建器应该设置预期具有相同生命周期的对象,或者至少依赖关系具有更长的生命周期(我也有一个问题).我在代码中的意思是:
class builder {
public:
builder() :
m_ClassA(NULL),m_ClassB(NULL) {
}
~builder() {
if (m_ClassB) {
delete m_ClassB;
}
if (m_ClassA) {
delete m_ClassA;
}
}
ClassA *build() {
m_ClassB = new class B;
m_ClassA = new class A(m_ClassB);
return m_ClassA;
}
};
Run Code Online (Sandbox Code Playgroud)
现在,如果有一个依赖项预计持续时间超过我们注入的对象的生命周期(比如ClassC就是依赖项)我明白我们应该将构建方法改为:
ClassA *builder::build(ClassC *classC) {
m_ClassB = new class B;
m_ClassA = new class A(m_ClassB, classC);
return m_ClassA;
}
Run Code Online (Sandbox Code Playgroud)
你最喜欢的方法是什么?
结构化异常处理是不是很糟糕?处理异常的正确方法是什么?
编辑:使用C#在.NET中进行异常处理.
我通常有一组特定的异常类(DivideByZeroException,ArrayTypeMismatchException),并且没有通用的"catch(Exception ex)".
这背后的想法是我希望发生某些类型的异常,并在它们发生时定义特定的动作,并且意外的异常会在界面(windows或web)上升.这是一个好习惯吗?
你有几个错误报告都显示同样的问题.他们都是神秘的,有关问题如何发生的类似故事.您按照步骤操作但不能可靠地重现问题.经过一些调查和网络搜索,你怀疑可能会发生什么,你很确定你可以解决它.
遗憾的是,如果没有可靠的方法来重现原始问题,您无法验证它是否真正解决了问题,而不是完全没有任何影响或加剧和掩盖真正的问题.您可能无法修复它,直到它每次都可重现,但这是一个很大的错误而不修复它会导致您的用户出现很多其他问题.
你如何验证你的变化?
我认为对于任何设计软件的人来说,这是一个非常熟悉的场景,所以我确信有很多方法和最佳实践来解决这样的错误.我们目前正在研究我们项目中的其中一个问题,我花了一些时间来确定问题,但无法证实我的怀疑.一位同事正在测试我的修复,希望"没有崩溃的一天运行"等同于"它是固定的".但是,我更喜欢更可靠的方法,我认为这里有丰富的经验.
我有一个小项目,在Tomcat 5.5上部署了一些jsp.最近,部署了jsp文件(一个war文件)的Servlet也停止了工作.我还检查了我的svn以前的版本应该有用.我注意到了displayname(我使用的是Tomcat的德语版本,所以我想这就是我将如何翻译它,Tomcat管理器第二列中的名称)消失了.我在vista上使用Eclipse Ganymede.Tomcat正在Debian上运行.本地Tomcat显示相同的行为.希望有人有个主意.谢谢.
我有两个表需要通过LINQ加入,但它们存在于不同的数据库中.现在我正在返回一个表的结果,然后循环并检索另一个表的结果,你可以猜测它并不是非常有效.有没有办法让它们成为一个LINQ语句?有没有其他方法来构建它以避免循环?我只是在寻找想法,万一我忽略了什么.
请注意,我无法更改数据库,即我无法在引用另一个的视图中创建视图.我还没有尝试过的东西是在引用两个表的第三个数据库中创建视图.欢迎任何想法.
我有一个Web服务,它返回制表符分隔的数据(参见下面的示例).
我需要将其解析为数组或类似数据,以便我可以创建它的导航视图.
我已经设法执行Web请求并可以解析XML文件,但我对Objective-C的了解很少.
433 Eat
502 Not Fussed
442 British
443 Chinese
444 Dim Sum
445 Fish
446 French
447 Gastropubs
449 Indian
451 Italian
452 Japanese
453 Middle Eastern
454 Pan-Asian
455 Pizza
456 Spanish
457 Tapas
458 Thai
459 Vegetarian
434 Drink
501 Not Fussed
460 Bars
461 Pubs
Run Code Online (Sandbox Code Playgroud)