考虑这一行:
if (object.getAttribute("someAttr").equals("true")) { // ....
Run Code Online (Sandbox Code Playgroud)
显然这条线是一个潜在的错误,属性可能是null,我们将得到一个NullPointerException.所以我们需要将它重构为以下两种选择之一:
第一种选择:
if ("true".equals(object.getAttribute("someAttr"))) { // ....
Run Code Online (Sandbox Code Playgroud)
第二种选择:
String attr = object.getAttribute("someAttr");
if (attr != null) {
if (attr.equals("true")) { // ....
Run Code Online (Sandbox Code Playgroud)
第一个选项很难读,但更简洁,而第二个选项在意图上是明确的,但是很冗长.
在可读性方面,您更喜欢哪个选项?
换句话说,我有什么选择在JavaScript中分配内存?
我知道你可以在全局或在函数范围内分配内存.我可以动态分配内存吗?什么是new运营商究竟意味着什么?
编辑:这是一个具体的例子.你将如何实现从用户读取整数值 - n然后将n整数读入数组?
考虑以下测试用例:
public class Main {
static int a = 0;
public static void main(String[] args) {
try {
test();
System.out.println("---");
test2();
}
catch(Exception e) {
System.out.println(a + ": outer catch");
a++;
}
}
public static void test()
{
try {
throw new Exception();
}
catch (Exception e) {
System.out.println(a + ": inner catch");
a++;
}
finally {
System.out.println(a + ": finally");
a++;
}
}
public static void test2() throws Exception
{
try {
throw new Exception();
}
finally {
System.out.println(a …Run Code Online (Sandbox Code Playgroud) 正如杰夫·阿特伍德问:"什么是你的日志哲学应该所有代码被散落?.logthis()和.logthat()来电或你在事后注入记录不知何故?"
你好,
我正在创建一个非常简单的爱好项目 - 基于浏览器的多人游戏.我坚持设计用于存储任务/技能要求信息的表格.
现在,我按照以下方式设计了表格:
另一个例子:
那些是简单的案例.我必须承认,我在设计不同事物的要求时遇到困难,例如任务.示例任务A可能只有最低字符等级要求(并且易于实现) - 但另一个,任务B有许多其他要求(完成任务,获得技能,拥有特定项目等) - 什么是好方法设计用于存储此类信息的表格?
以类似的方式 - 什么是存储技能要求信息的有效方式?(特定角色等级,最低等级).
我将非常感谢有关创建数据库驱动游戏的任何帮助或信息.
谢谢你的答案,但我想收到更多.由于我在设计一个相当复杂的数据库布局时遇到了一些问题,我正在为这个问题开始最大的赏金.
我想收到的链接与设计数据库,用于存储游戏数据的最佳实践与文章/代码片段/任何(这类信息的一个很好的例子是在availibe buildingbrowsergames.com).
我将不胜感激任何帮助.
大多数编程都是在现有的框架或平台上完成的,并使用各种API使您的编程工作更加方便.
它可以是一套设计精美的API,也可以是一个很好的框架,你可以很快地完成很酷的事情.
所有答案都应该给出具体的例子,说明为什么这个框架如此棒,或者你用它做的很酷的东西的例子.
现有的框架真正激发了你做一些很棒的工作吗?
我想在Django中的Model的几个字段中查找某个字符串.理想情况下,它会类似于:
keyword = 'keyword'
fields = ['foo', 'bar', 'baz']
results = []
for field in fields:
lookup = "%s__contains"
results.append(Item.objects.filter(lookup=keyword))
Run Code Online (Sandbox Code Playgroud)
当然这不起作用,因为"查找"无法解析为字段.有没有其他方法可以做到这一点?
目标应用程序是一个中等规模的网站,每小时可以支持数百到数千个用户,可以选择扩展到每小时.数据模型相当简单,缓存潜力相当高(读取与编辑操作的比例约为10:1).
在选择基于SQL的关系数据存储区与NoSQL选项(如HBase和Cassandra)之间应该考虑什么?
我的仓库中有一个特定的文件,我已将假设未设置的位设置为:
git update-index --assume-unchanged someFile.txt
Run Code Online (Sandbox Code Playgroud)
偶尔,在对repo进行一些工作后,该位未设置,文件自动assume-unchanged不再存在.
谁在接触它?在明确告诉git之前,我怎样才能使这个永久化:
git update-index --no-assume-unchanged someFile.txt
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?
编辑:我在本地更改的配置文件上使用假定未更改的位,并且永远不应该提交,更不用说上推了.我不希望看到它们git status,也不想在其他任何地方看到它们,除非我明确告诉git我想编辑并提交其中一个.
编辑:好的,我想我设法重现了这个问题.
我从一个不同的仓库(没有它--assume-unchanged)提交文件,拉上我的仓库,果然,该位被重置.
所以出现两个问题:
java ×3
api ×1
architecture ×1
coding-style ×1
database ×1
django ×1
frameworks ×1
git ×1
git-index ×1
javascript ×1
jsf ×1
logging ×1
nosql ×1
scalability ×1
session ×1