最近Erik Meijer和其他人已经展示了如何IObservable/IObserver是双重的IEnumerable/IEnumerator.它们是双重的这一事实意味着一个接口上的任何操作在另一个接口上都是有效的,从而为.Net的反应扩展提供了理论基础.
是否存在其他双接口?我对任何一个例子感兴趣,而不仅仅是.Net.
c# functional-programming reactive-programming category-theory system.reactive
我仍然在努力用CGContext绘制一条线.我实际上去绘制线条,但现在我需要将Rect的背景透明,以便现有的背景显示出来.这是我的测试代码:
(void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [UIColor clearColor].CGColor);
CGContextSetAlpha(context,0.0);
CGContextFillRect(context, rect);
CGContextSetStrokeColorWithColor(context, [UIColor whiteColor].CGColor);
CGContextSetLineWidth(context, 5.0);
CGContextMoveToPoint(context, 100.0,0.0);
CGContextAddLineToPoint(context,100.0, 100.0);
CGContextStrokePath(context);
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我正在使用python中的一个计时器,当等待时间结束时,它会发出响声.我使用以下代码:
from wave import open as wave_open
from ossaudiodev import open as oss_open
def _play_chime():
"""
Play a sound file once.
"""
sound_file = wave_open('chime.wav','rb')
(nc,sw,fr,nf,comptype, compname) = sound_file.getparams( )
dsp = oss_open('/dev/dsp','w')
try:
from ossaudiodev import AFMT_S16_NE
except ImportError:
if byteorder == "little":
AFMT_S16_NE = ossaudiodev.AFMT_S16_LE
else:
AFMT_S16_NE = ossaudiodev.AFMT_S16_BE
dsp.setparameters(AFMT_S16_NE, nc, fr)
data = sound_file.readframes(nf)
sound_file.close()
dsp.write(data)
dsp.close()
Run Code Online (Sandbox Code Playgroud)
它工作得很好,除非任何其他设备已经输出声音.
如果没有播放声音的先决条件,我怎么能基本相同(在linux下)?
如果您认为该过程需要API来确保软件混合,请建议一种方法:)
Thx的支持:)
我正在构建一个具有字符串到整数的映射的类.所以,如果我有3个苹果,我会将苹果映射到3个.
我需要编写一个类,通过减少数字来排序对象的名称.
所以,如果我有
(苹果,3)(橙子,2)(香蕉,5)
我会得到(香蕉,5),(苹果,3),(橙子2)
我想知道是否已经有一个课程可以让我的生活更轻松,或者我将如何实现这一点.
谢谢.
在我的上一个问题之后,我想了解何时优化确实值得开发人员花费时间.
是否值得花4个小时来查询速度提高20%?是的,不,也许,是的,如果......?
"浪费"7个小时将任务切换到另一种语言以节省大约40%的CPU使用量"值得"吗?
我对新项目的正常迭代是:
隐含着"编写好的,可维护的代码".
显然,大的"优化"部分发生在第2点,但通常在项目结束后审查代码时,我发现一些部分,即使他们做得好,也可以改进.这是第5点的基本原理.
为了给出最后一点的具体示例,一个简单的例子是当我期望90%的查询SELECT和10%的查询时INSERT/UPDATE,所以我对带有索引的数据库表收费.但是在6个月之后,我发现在现实生活中有10%的SELECT查询和90%的INSERT/UPDATEs,所以查询速度没有得到优化.这是第一个出现在我脑海中的例子(显然,对于最初的错误设计而言,这不仅仅是优化的"补丁").
请注意,我是一名开发人员,而不是商人 - 但我希望尽可能让我的客户尽可能地保持良心.
我的意思是,我知道如果我失去了50个小时来获得应用程序总速度的5%,并且该应用程序被10个用户使用,那么它可能不值得花时间......但它是什么时候它是什么时候?
您认为优化何时至关重要?
你通常使用什么公式,意识到优化所花费的时间(以及最终的收益)并不总是可以在纸上量化?
编辑:对不起,但我不能接受像"直到人们不抱怨id,不需要优化"这样的答案; 它可以是一个商业视图(可疑,imho),但不是开发人员或(imho)一个良好的答案.我知道,这个问题确实很主观.
我同意Cheeso,性能优化应推迟,对项目的真实使用情况和负载一些分析,但small'n'quick优化可以立刻后项目结束来完成.
谢谢大家 ;)
我正在尝试创建一个jquery插件,我想要有以下选项:
$.plugin_name(variable)
$(selector).plugin_name(variable)
第一种情况是插件不需要应用于一个元素(例如它可以创建一个)第二种情况,相同的插件将对所选的元素执行任何操作
我的问题是:如何在插件中指定:
if (selector is not given) {
create an element
} else {
( for example) insert variable in elements matching the selector
}
Run Code Online (Sandbox Code Playgroud) 我试图验证我对C#/ .NET/CLR如何处理值类型和引用类型的理解.我读过很多矛盾的解释
这就是我今天所理解的,如果我的假设是错误的,请纠正我.
诸如int等的值类型存在于堆栈上,引用类型存在于托管堆上,但是如果引用类型具有例如double类型的实例变量,则它将与其对象一起存在于堆上
第二部分是我最困惑的.
让我们考虑一个名为Person的简单类.
Person有一个名为Name的属性.
假设我在另一个类中创建了Person实例,我们称之为UselessUtilityClass.
请考虑以下代码:
class UselessUtilityClass
{
void AppendWithUnderScore(Person p)
{
p.Name = p.Name + "_";
}
}
Run Code Online (Sandbox Code Playgroud)
然后我们在某处:
Person p = new Person();
p.Name = "Priest";
UselessUtilityClass u = new UselessUtilityClass();
u.AppendWithUnderScore(p);
Run Code Online (Sandbox Code Playgroud)
Person是一个引用类型,当传递给UselessUtilityClass时 - 这就是我去的地方 - 坚果...... 作为Person引用实例的VARIABLE p由VALUE传递,这意味着当我写p.Name时我会看到"牧师_"
如果我写的话
Person p2 = p;
Run Code Online (Sandbox Code Playgroud)
我做到了
p2.Name ="不是牧师";
写下p的名字就像下面我会得到"不是牧师"
Console.WriteLine(p.Name) // will print "Not a Priest"
Run Code Online (Sandbox Code Playgroud)
这是因为它们是引用类型并指向内存中的相同地址.
我的理解是否正确?
我认为当人们说.NET中的所有对象都通过Reference传递时会出现一些误解,这并不是基于我的想法.我错了,这就是为什么我来到堆叠器.
我正在app-engine上构建我的第一个python应用程序,并想知道我是否应该使用Django.
每个的优点是什么?如果您的参考文献支持您的答案,请发布.也许我们可以用这个问题制作一个wiki.
现在因为我刚接触使用PHP中的对象,我觉得在我的脑海中,我认为PHP对象是一个庞大而笨重的东西.这让我想减少使用它们,我感觉就像我正在使用非常简单的代码并且通过将它放入对象中而使它过于复杂.
如果我有一个数据库,缓存,会话,核心和用户对象,我需要在彼此内部和其他未提及的类中访问它们,我决定将所有这些存储在一个注册表对象中.因此,由于我对对象如何工作的知识有限,在我看来,将注册表对象传递给一个简单的对象几乎是非常重要的.就像注册表一样,它里面有5个对象.这是错的吗?注册实际上只是传递了这些对象在内存中的位置吗?或者我真的将一个非常大的物体传递到我的所有物体中?
对不起,如果这根本没有意义,希望它确实如此.我只是想更好地了解它们如何在性能方面发挥作用.