小编ami*_*mit的帖子

如何从代码库中删除System.out.println

我们有一个巨大的(旧的遗留Java)代码库,其中许多文件(大约5k)都有System.out.println.我们计划因清理/性能原因删除它们.我们如何编写一个脚本来替换它们而不会在代码中引入任何问题?脚本不能盲目删除它们,因为以下情况可能是一个问题:

if ()
  some.code...
else
  System.out.println(...);
DB.close();
Run Code Online (Sandbox Code Playgroud)

我想用';'代替它们.这将照顾上述情况.你还有其他问题吗?还有其他建议吗?

java scripting performance code-cleanup

9
推荐指数
4
解决办法
7624
查看次数

解决距离问题的最佳方法

有一组共线点.问题是添加一个位于同一行的新点,以便从新点到现有点的距离总和最小.(假设该点位于水平线上).

我想到的解决方案是:

  1. 根据它们的x坐标对点进行排序(无论如何,y无关紧要).
  2. 如果no.of点是奇数,则将新点放在与中间点相同的坐标处.
  3. 否则,将该点放在n/2和n/2 + 1点的中点.

我无法证明上述方法有效.这是对的吗?还有什么更好的解决方法吗?

algorithm

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

Java Hotswap的局限性

java hotswap功能为我节省了大量时间.但是,它有许多限制(不支持模式更改).是否有人会更快地解决这个限制?根据这个论坛条目,它似乎被忽略了.

我知道像JRebel这样的产品有帮助.但有没有人知道任何开源工具呢?

java debugging hotswap

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

提高Sql Delete的性能

我们有一个查询,要根据id字段(主键)从表中删除一些行.这是一个非常简单的查询:

delete all from OUR_TABLE where ID in (123, 345, ...)
Run Code Online (Sandbox Code Playgroud)

问题是没有.id可能很大(例如70k),因此查询需要很长时间.有没有办法优化这个?(我们正在使用sybase - 如果这很重要).

sql database sybase query-optimization database-optimization

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

如果功能在最后一刻被删除,您会怎么做?

假设您正在处理每个版本中具有多个功能的大型项目.对于每个功能开发,我们可能具有不同的功能分支(在VCS中).但是,在完成所有功能分支并完成集成之后,请说删除了其中一个功能(这种情况在我们的组织中比您想象的更频繁).有没有办法在此时回滚功能?我们通常做的是找出所有代码更改并手动回滚.您是否有任何有助于减少这种努力的流程/最佳实践?为了记录,我们有一个带有subversion作为VCS的java项目.

version-control project-management process release-management

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

Python字符串编码方法

在Python中,encodeunicode字符串中有一个方法可以从unicode编码为字节字符串.decode字符串中有一个方法可以反过来.

但我很困惑encode字符串中的方法是什么?

python unicode

6
推荐指数
2
解决办法
2973
查看次数

FreeBSD上的Python字符串内存使用情况

我在Freebsd上用python字符串观察一个奇怪的内存使用模式.考虑以下会话.想法是创建一个包含一些字符串的列表,以便列表中的累积字符为100MB.

l = []
for i in xrange(100000):
    l.append(str(i) * (1000/len(str(i))))
Run Code Online (Sandbox Code Playgroud)

这按预期使用大约100MB的内存,'del l'将清除它.

l = []
for i in xrange(20000):
    l.append(str(i) * (5000/len(str(i))))
Run Code Online (Sandbox Code Playgroud)

这是使用165MB的内存.我真的不明白额外的内存使用来自哪里.[两个列表的大小相同]

FreeBSD 7.2上的Python 2.6.4.在Linux/Windows上,它们仅使用大约100mb的内存.

更新:我正在使用'ps aux'测量内存.在上面的代码片段之后,可以使用os.sytem执行该操作.这些也是分别执行的.

Update2:看起来像freebsd mallocs内存的2的倍数.所以分配5KB实际上分配8KB.我不确定.

python malloc freebsd

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

如何在gdb中的python函数上设置断点

我有时使用gdb来调试python脚本(当然是CPython).通常调试核心转储(以及涉及c扩展模块时)非常有用.

一个基本问题是如何在gdb中的python函数上设置断点.假设我有一个带有foo函数的python脚本,我想在调用foo后立即中断.我想设置一个条件断点PyEval_EvalFrameEx可能会起作用,但不知道该怎么做.

python debugging gdb cpython

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

如何在没有字符的情况下找到JTextField的宽度?

我有一个JTextField可以接受固定数量的字符(例如10个字符).我想限制TextField的宽度以准确地采用那么多字符.所以给定no.of字符,有没有办法找出它将采取的宽度(像素)?假设我们知道字体.

java user-interface swing

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

如何在python中导入部分模块?

我需要使用python模块(在某些库中可用).该模块如下所示:

class A:
  def f1():
  ...

print "Done"
...
Run Code Online (Sandbox Code Playgroud)

我只需要A类的功能.但是,当我导入模块时,底部的代码(print和其他)会被执行.有没有办法避免这种情况?基本上我需要导入一个模块的一部分:"来自module1 import A",它应该只导入A.是否可能?

python import module

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

Java构造函数可以构造子类的对象吗?

有没有办法修改构造函数中构造的类?

public class A {
  A() {
    //if (condition) return object of type B
    //else return A itself
  }
}
public class B extends A { }
Run Code Online (Sandbox Code Playgroud)

基本上我想使用基类构造函数作为工厂方法.在java中有可能吗?

java factory

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

用ast获取模块名称

如何使用ast获取python模块名称?我尝试了以下操作来获取模块节点,但看起来它没有名称信息:

class v(ast.NodeVisitor):
    def visit_Module(self, node):
        print "Module : %s" % node

v().visit_Module(ast.parse(f.read(), filename))
Run Code Online (Sandbox Code Playgroud)

我基本上需要实际的模块名称(如果它在一个包中,则像abmodule一样完整)。

python parsing abstract-syntax-tree

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

Container.validate()方法有什么作用?

Java awt Container类中似乎有许多与validate相关的方法.显然他们不做数据验证.在任何情况下对Swing开发人员都有用吗?一些方法:validate(),invalidate(),validateTree(),isValid()等.

java swing awt

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