我有两个主要问题.
是否可以扩展Object计数?
什么是DOM包装?
http://perfectionkills.com/whats-wrong-with-extending-the-dom/
在阅读那篇文章之后,我找不到关于DOM包装的任何内容,也没有找到任何规范以及究竟是什么和不是DOM扩展.
我有一个非常简单的Android应用程序,只显示一个空白的白色屏幕.当我按下HOME按钮关闭应用程序,然后尝试再次打开应用程序,它崩溃,我得到"强制关闭"按钮.在Eclipse中我收到此错误,"ActivityManager:警告:活动未启动,因为正在为用户保留当前活动." 我该如何修复此崩溃?
public class HelloAndroid extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(new Panel(this));
}
class Panel extends SurfaceView implements SurfaceHolder.Callback {
private TutorialThread _thread;
public Panel(Context context) {
super(context);
// register our interest in hearing about changes to our surface
SurfaceHolder holder = getHolder();
holder.addCallback(this);
_thread = new TutorialThread(holder, this);
setFocusable(true);
}
@Override
public void onDraw(Canvas canvas) {
// Clear the background
canvas.drawColor(Color.WHITE);
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int …Run Code Online (Sandbox Code Playgroud) 我有以下继承链:
class Foo(object):
def __init__(self):
print 'Foo'
class Bar(Foo):
def __init__(self):
print 'Bar'
super(Foo, self).__init__()
class Baz(Bar):
def __init__(self):
print 'Baz'
super(Bar, self).__init__()
Run Code Online (Sandbox Code Playgroud)
实例化Baz类时,输出为:
巴兹
富
为什么没有调用Bar的构造函数?
我正在使用Ruby on Rails 3,我试图将哈希作为函数参数处理.
例如,如果我以这种方式声明一个函数:
def function_name(options = {})
...
end
Run Code Online (Sandbox Code Playgroud)
我想传递给function_name哈希一样
{"key1"=>"value_1", "key2"=>"value2", "..." => "..."}
Run Code Online (Sandbox Code Playgroud)
然后在函数内部使用它.
什么是最好的\常见(Rails)方式呢?
PS:我在extract_option!某个地方看过这个方法,但我不知道在哪里可以找到一些文档以及我是否需要它来完成我的目标.
我正在为网站实现RSS提要,但我不了解有关提要的XML文件的格式/大小/内容的某些信息.
我正在使用过去的数据初始化网站,这些数据可以追溯到1999年(之前没有任何订阅源),每年只会添加几百个项目.
是否有一些归档协议,或者我可以保留一个文件并继续追加它?我认为那将是低效的,因为聚合器必须下载整个事物(我假设).
那么,通常的习惯是什么?限制在上个月?目前900多个项目的文件是1.5MB,我希望1年的价值大约是或者更小的1/10.
有关使用什么原则以及如何实现它的任何指示?我正在使用PHP,但我的数据很复杂,我编写了自己的脚本来编写文件(并且验证得很好),所以我不能使用固定解决方案 - 我需要了解自己要实现什么脚本.
这个问题可能与语言无关,但我将专注于指定的语言.
在处理一些遗留代码的过程中,我经常看到函数的例子,(在我看来,显然)在它们内部做了太多的工作.我说的不是5000 LoC怪物,而是关于在其中实施先行检查的功能.
这是一个小例子:
void WorriedFunction(...) {
// Of course, this is a bit exaggerated, but I guess this helps
// to understand the idea.
if (argument1 != null) return;
if (argument2 + argument3 < 0) return;
if (stateManager.currentlyDrawing()) return;
// Actual function implementation starts here.
// do_what_the_function_is_used_for
}
Run Code Online (Sandbox Code Playgroud)
现在,当调用这种函数时,调用者不必担心要满足的所有先决条件,并且可以简单地说:
// Call the function.
WorriedFunction(...);
Run Code Online (Sandbox Code Playgroud)
现在 - 应该如何处理以下问题?
就像,一般来说 - 如果此功能仅执行所要求的操作并将"先决条件检查"移至呼叫方:
if (argument1 != null && argument2 + argument3 < 0 && ...) {
// Now …Run Code Online (Sandbox Code Playgroud) 现在我已经研究了这个,我正在改写它以使它更清楚.如果您正在寻找更多信息,可以使用旧编辑中的一些信息.
怎么了:
(这是指未设置任何launchMode设置的应用程序,因此使用默认设置)
您从市场或安装程序启动应用程序.这将使用FLAG_ACTIVITY_NEW_TASK标志启动应用程序的根/主活动,而不是类别.现在应用程序堆栈是[A]
然后,您将继续执行应用程序中的下一个活动.现在这个任务的堆栈是[A> B]
然后按主页键,然后按主屏幕或应用程序托盘中的图标重新启动相同的应用程序.
在这一点上预期的是活动B将显示,因为那是你离开的地方.但是显示A并且任务堆栈是[A> B> A]使用以下标志启动A的第二个实例:FLAG_ACTIVITY_NEW_TASK,FLAG_ACTIVITY_RESET_IF_NEEDED和FLAG_ACTIVITY_BROUGHT_TO_FRONT.它还有android.intent.category.LAUNCHER类别.
此时,如果您按下后退键,它将返回B,就像您离开时一样.
看一下文档,似乎只应为使用singleTask或singleTop launchModes的活动设置FLAG_ACTIVITY_BROUGHT_TO_FRONT.但是,此应用程序尚未设置任何launchModes,因此使用默认的标准launchMode.
我认为在这种情况下不会发生这种情况?
我还应该注意,一旦它进入这个奇怪的状态,那么每次从主屏幕或应用程序托盘启动应用程序时都会发生这种情况.如果任务完成(重新启动手机,强制停止应用程序,或一直回到堆栈)将解决此问题,并将不再错误地启动它.只有从安装程序或市场启动应用程序然后尝试从启动程序启动它时才会发生这种情况.
总而言之,为什么会发生这种情况?有没有办法防止它?
??在C#中使用运算符时,如果被测试的值不为空,它是否会短路?
例:
string test = null;
string test2 = test ?? "Default";
string test3 = test2 ?? test.ToLower();
Run Code Online (Sandbox Code Playgroud)
test3行是成功还是抛出空引用异常?
所以用另一种方式来表达这个问题:请问右手表达的问题是什么?如果左手不为空,则运算符得到评估?
来自DailyJS "让我们构建一个JavaScript框架"我对以下代码不太确定,显然是用作全局减排技术.
到目前为止,我的理解是在(function(){}).我理解设置turing var up,将global.turing设置为turing,然后返回窗口或者这个(如果不是在浏览器中),但是(function(global){})(this或window)让我感到困惑......我见过像这样的东西
var mything = {} 并在我的东西下设置你的所有代码,但这个成语让我有点困惑.
我真的很想理解这里的推理并记住它"有效"
(function(global) {
var turing = {
VERSION: '0.0.1',
lesson: 'Part 1: Library Architecture'
};
if (global.turing) {
throw new Error('turing has already been defined');
} else {
global.turing = turing;
}
})(typeof window === 'undefined' ? this : window);
Run Code Online (Sandbox Code Playgroud) 我想知道python的Multiprocessing.Pool类使用map,imap和map_async的方式.我的特殊问题是我想在一个迭代器上映射,该迭代器创建了占用大量内存的对象,并且不希望所有这些对象同时生成到内存中.我想看看各种map()函数是否会使我的迭代器变干,或者只是在子进程缓慢前进时智能地调用next()函数,所以我这样修改了一些测试:
def g():
for el in xrange(100):
print el
yield el
def f(x):
time.sleep(1)
return x*x
if __name__ == '__main__':
pool = Pool(processes=4) # start 4 worker processes
go = g()
g2 = pool.imap(f, go)
g2.next()
Run Code Online (Sandbox Code Playgroud)
依此类推map,imap和map_async.这是最公然的例子,因为简单地在g2上单次调用next()会从我的生成器g()中打印出所有元素,而如果imap这样做'懒惰',我希望它只调用go.next ()一次,因此只打印'1'.
有人可以清理正在发生的事情,并且如果有某种方法让进程池'懒惰'根据需要评估迭代器吗?
谢谢,
加布