我的同事注意到,当javac正在编译时,它只使用一个核心.是否有类似-j命令与Java的gcc,这将允许我们跨核心或处理器分配编译器工作负载?如果没有,您是否认为这将是可能的,或者由于Java的设计是否存在某种基本限制?
环境是使用Sun J2SE 1.6.0.11 jdk的Linux.
我在SQL Server中有一个money数据类型.如何在查询中将0.00重新格式化为0?
我听说PHP最近遭遇了很多.在很多项目中,我已经看到了疯狂的PHP代码库 - 你真的很想知道这个人在编写代码时是否使用致幻药物.有时,我想知道如果最初的开发人员对不该做的事情有更多的指导,代码会是什么样的.
但是,我也看到了一些非常有条理的PHP项目,这些项目是用100%OOP完成的,并且很乐意维护,但它们不是由"php程序员"编写的.
我给所有初级开发者提供了Java Anti-Patterns的链接.该页面的一个好处是特定于Java的示例,因为Java的许多功能都适用于常见错误.我希望找到一个类似的PHP列表,但谷歌搜索没有透露任何有意义的.
关于编程PHP时开发人员应该知道的问题已经存在一些问题,但我想关注负面问题.
您在PHP中看到的常见问题应该避免哪些常见问题以及以更好的方式执行相同操作的常见解决方案是什么?
我想到的一些明显的例子我会想到,但不是PHP具体的:
这里有一些我会考虑PHP特定的例子:
那么,你最喜欢的PHP 不应该做什么,你是如何做到的?
我最初注意到我的问题引起了一些困惑.我不是在询问如何配置记录器,也不是如何正确使用记录器,而是如何捕获本地记录级别低于异常消息中当前日志记录级别记录的所有信息.
我已经注意到Java中的两种模式用于记录在发生异常时可能对开发人员有用的信息.
以下模式似乎很常见.基本上,您只需根据需要在线记录您的记录器日志信息,以便在发生异常时获得日志跟踪.
try {
String myValue = someObject.getValue();
logger.debug("Value: {}", myValue);
doSomething(myValue);
}
catch (BadThingsHappenException bthe) {
// consider this a RuntimeException wrapper class
throw new UnhandledException(bthe);
}
Run Code Online (Sandbox Code Playgroud)
上述方法的缺点是,如果你的用户需要相对安静的日志,需要点高度的可靠性,他们就不能"再次在调试模式下尝试",异常消息包含足够的数据本身是对开发者有用.
我看到的下一个模式试图缓解这个问题,但看起来很难看:
String myValue = null;
try {
myValue = someObject.getValue();
doSomething(myValue);
}
catch (BadThingsHappenException bthe) {
String pattern = "An error occurred when setting value. [value={}]";
// note that the format method below doesn't barf on nulls
String detail = MessageFormatter.format(pattern, myValue);
// consider this a RuntimeException wrapper …Run Code Online (Sandbox Code Playgroud) 我正在进行一个对称的舍入课程,我发现我对如何最好地找到x位置的数字感到困惑,我将会四舍五入.我确信有一种有效的数学方法可以找到单个数字并返回它而不必求助于字符串解析.
假设,我有以下(C#)伪代码:
var position = 3;
var value = 102.43587m;
// I want this no ? (that is 5)
protected static int FindNDigit(decimal value, int position)
{
// This snippet is what I am searching for
}
Run Code Online (Sandbox Code Playgroud)
另外,值得注意的是,如果我的值是整数,我将需要为FindNDigit的结果返回零.
有没有人对我应该如何处理这个问题有任何暗示?这是一件非常明显的事情吗?
对于那些不知道Quercus是什么的绊倒这个问题的人来说 - 它是用Java完成的PHP实现.
对于我目前正在处理的项目,我们通过cgi通过servlet提供php页面(我知道它很笨重,但它是支持遗留代码的要求).我很高兴发现了Quercus项目,因为它看起来像是一个将我们的项目转移到更纯粹的Java环境的有希望的途径.
我有几个关于栎属的问题:
我对命令模式非常熟悉,但我还不了解Functor和命令之间的理论差异.特别是,我正在考虑Java实现.两者基本上都是编程"动词",表示为对象.但是,在仿函数的情况下,正如我从一些示例中看到的那样,匿名内部类实现似乎很常见.谁能在那里为我清楚地解决这个问题?
在我目前的项目中,我经常发现自己经常使用责任链模式(对我来说经常是3次),我想知道我是否对解决方案过于热心.具体来说,我一直在使用Apache Commons 链项目.因此,我对它如何将一些复杂的可互换的应用程序逻辑简化为更具凝聚力和组织性的整体印象深刻.然而,项目中的一些新人似乎很难"得到它".你有什么经历?你在实施中遇到了什么问题?
到目前为止,我注意到的唯一问题就是当你试图处理需要关闭的对象时.将这些对象存储在Context类中会在完成链的执行时产生痛苦.我能够使用Filters而不是Commands来解决这个问题,但它似乎有点不直观,因为你的close语句通常离实例化对象的位置很远.
无论如何,我很想听到一些开发人员的想法,他们对我有这种模式的经验.
提前致谢.
我正在开发一个越来越大的项目,许多不同进程使用的活动线程数正在增加.最近,我一直在仔细研究调试器中正在运行的线程,我注意到很多我的第三方库给它们的线程命名很差--Timer-0,qtp0等等.我想让其他开发人员不熟悉使用命名不佳的线程立即知道正在运行的是什么.
而不是为我们正在使用的库编写补丁,有没有人知道如何重命名正在运行的线程?或者,如果这是一个好主意?任何建议,将不胜感激.
我终于通过努力在今天的维基百科上查找,发现了UTC和GMT之间的区别.从技术上讲,它似乎是GMT!= UTC,因为你不知道它是被引用的UTC还是UT1.然而,实际上,人们可互换地使用这些术语来表示相同的时区.
前段时间,我建议我们更改某个公司应用的用户界面,以显示UTC而不是GMT.
为了确保我们的数据库没有计算GMT和UTC之间潜在的秒差,我运行了以下查询并验证它们都只是作为同一时区的别名.
select now() AT TIME ZONE 'GMT', now() AT TIME ZONE 'UTC';
timezone | timezone
----------------------------+----------------------------
2009-02-11 08:46:11.643032 | 2009-02-11 08:46:11.643032
(1 row)
Run Code Online (Sandbox Code Playgroud)
你怎么看?有足够的用户了解UTC吗?使用较旧但更常见的术语是否更好?或者我应该做UTC/GMT?