问题列表 - 第46319页

Ruby 1.9中的垃圾收集器调优

我知道GC.enable/disable,但有没有更详细的控制Ruby 1.9垃圾收集器的方法?

在分析我的代码时(使用perftools.rb)我注意到GC代表了总样本的30%,我想看看是否可以调整GC来减少这个数字.是否有任何环境变量或其他方法可以像REE一样设置堆槽数,malloc限制等?

ruby garbage-collection

19
推荐指数
2
解决办法
7407
查看次数

这样的网站开发设置/实践是否适合工作场所?

我在网络开发公司工作(现在已经半年了),这是我的第一个工作场所.但是我们做的一件事让我感到很烦恼.所以我想从更有经验的人那里获得意见.我不确定这是否是最好的地方,但我希望这个问题的答案也可能对其他人有用而且有趣.

我的主要和最可能只是对工作的不满来自于我们承诺生活系统(我们有一个运行在php和mysql上的门户网站)的事实,即我提交代码并且更改立即在线可见.对于小的或快速可检测的错误来说,这没什么大不了的.但是当一些可怕的错误进入时,它是一个大问题,即在某些地方错误地生成链接,并且你可以通过两个不同的网址(点击页面排名......)到达某个页面,很容易错过这些东西几天.(或者是吗?也许我只是不够小心?)但我真的尝试在提交之前检查所有内容,我们还使用phpunit和selenium(测试是由编写代码的同一个人编写的,用于测试)(尽管测试覆盖率可能更严格).

所以我的问题是:在进行Web开发时直接提交到在线系统是否常见?

language-agnostic

3
推荐指数
1
解决办法
182
查看次数

您如何在Web框架之外发展以创建自己的应用程序框架?

Web框架很棒.我认为滚动你自己而不考虑流行的开源库是一种设计气味.因此,如果有人打算开始一个Web项目而不使用流行的服务器端Web框架(如Rails)和流行的客户端框架(如jQuery),我认为他们要么疯狂,要么无知,要么非常小众.

也就是说,Web框架不会为您做很多事情.像Rails和jQuery这样的恕我直销框架已经取得了成功,因为他们试图将80%带到那里,接下来的20%让你去做.80%的比例使它们足够灵活,可以被广泛使用而不会变得过于紧缩或笨拙.所以问题就变成了,你如何处理剩下的20%,特别是当你的应用程序变大时?

过去1.5年,我们开发并维护了一个Rails/jQuery-UI应用程序.如上所述,这些框架的无限制功能证明了我们能够快速提高速度,保持生产力和加强优秀设计.然而,在过去的几个月里,我开始认为我们应该能够更快地开发和部署新功能,并且我开始觉得我们没有在Rails和jQuery给出的基础上建立足够的基础我们.新功能似乎必须从每次80%的点开发,而不是优选的90-95%.

为什么您的战略超越了Web框架?您曾经使用过哪些技术或技术将80%的起点移近90-95%?您遇到或克服了构建自己的应用程序框架或工具包的哪些具体障碍?在vanilla Rails和jQuery上开发的难点是什么促使您寻求更紧密的应用程序集成?

architecture jquery web-applications ruby-on-rails

7
推荐指数
1
解决办法
926
查看次数

单元测试纯域驱动的类

我的目标是创建一个基于纯域驱动设计的系统.据我所知,这意味着我的域对象应该有行为而不是形状.也就是说,他们不应该有任何吸气剂或其他访问者.

与此同时,我正在尝试遵循TDD流程,并遇到了我正在尝试编写测试的绊脚石.

[Test]
public class new_purchase_order_should_have_purchase_ordernumber_of_1
{
     PurchaseOrder po = PurchaseOrder.CreatePurchaseOrder()
     Assert.AreEqual(1,po.PurchaseOrderNumber); 
}

public class PurchaseOrder
{
       private int _purchaseOrderNumber;
       static CreatePurchaseOrder()
       {
           _purchaseOrderNumber = SomeWayOfGettingAPONumber()
           //other initialisation
       }

        public int PurchaseOrderNumber {get { return _purchaseOrderNumber;}
}
Run Code Online (Sandbox Code Playgroud)

如果不允许使用getter,如何验证CreatePurchaseOrder()方法是否正确运行并将值设置为1.

在尝试实现这个设计时,这对我来说是一个很大的概念障碍,因此任何建议都非常有用.

谢谢

c# tdd nunit unit-testing domain-driven-design

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

Objective-C是否对消息使用短路评估为零对象?

按照通常的短路评估问题,对零个对象建立和发送的参数进行短路评估工作吗?例:

NSMutableArray *nil_array = nil;
....
[nil_array addObject:[NSString stringWithFormat:@"Something big %@",
     function_that_takes_a_lot_of_time_to_compute()]];
Run Code Online (Sandbox Code Playgroud)

是否会调用慢速函数,还是在不处理参数的情况下优化整个addObject调用?

objective-c short-circuiting

5
推荐指数
2
解决办法
547
查看次数

如何在Eclipse CDT中为C++ STL对象启用gdb漂亮打印?

我正试图在eclipse cdt中为STL对象添加漂亮的打印.我试着按照这里描述的步骤:

http://sourceware.org/gdb/wiki/STLSupport

我检查了python文件夹,但我似乎无法完成这个...

我创建了一个gdbinit并为我的调试配置选择,但每当我尝试开始调试时,我都会收到以下错误:

Error while executing Python code.
!STACK 0
java.lang.Exception: /home/lizardking/workspace/eu.sofia.kpi.cpp.x86.testapp/.gdbinit:6: Error in sourced command file:
Error while executing Python code.
        at org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThread.processMIOutput(AbstractMIControl.java:824)
        at org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThread.run(AbstractMIControl.java:662)
Run Code Online (Sandbox Code Playgroud)

如果我尝试在python shell中执行gdbinit的内容,我会收到此错误:

Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39) 
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
import sys
sys.path.insert(0, '/home/Documents/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named libstdcxx.v6.printers
Run Code Online (Sandbox Code Playgroud)

似乎我没有这样的模块......我对Python没有任何线索所以我甚至不知道Python中的"模块"是什么....

有人可以帮我这个吗?能够看到真正的调试信息对我来说非常重要,或者对它来说非常重要.或者我甚至可以从控制台调试并从gdb获得不错的输出,因为如果我打印一个字符串,例如我得到无用的输出....

问候,亚历克斯

c++ eclipse gdb eclipse-cdt gdb-python

39
推荐指数
3
解决办法
4万
查看次数

如何使用Apache上的基本Python CGI脚本处理POST请求?

我正在构建一个简单的python CGI脚本来与Twilio一起使用.现在,它只输出一些简单的XML,但我希望它能够处理和响应POST请求(以获得传入的调用者ID).最后,我将使用完整的Web应用程序框架,如Django; 但是,就目前而言,我只想要一个可以与Twilio互动的简单服务.最简单的方法是什么?

提前致谢.

python apache post cgi twilio

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

在C++中实现GObject接口

我尝试使用Glibmm(Gtkmm的一部分)在C++中实现GType接口.该对象将被传递给C中的API.不幸的是,gtkmm 的文档没有涵盖它如何包装GObject系统的许多细节.

到目前为止我所拥有的:

class MonaCompletionProvider : public gtksourceview::SourceCompletionProvider, public Glib::Object
{
    public:
        MonaCompletionProvider();
        virtual ~MonaCompletionProvider();

        Glib::ustring get_name_vfunc() const;
        // ... and some more
}
Run Code Online (Sandbox Code Playgroud)

所有方法和构造函数实现都是空的.代码使用如下:

Glib::RefPtr<MonaCompletionProvider> provider(new MonaCompletionProvider());
bool success = completion->add_provider(provider);
Run Code Online (Sandbox Code Playgroud)

success 执行此代码后将为false,并在命令行中显示以下消息:

(monagui:24831):GtkSourceView-CRITICAL**:gtk_source_completion_add_provider:断言`GTK_IS_SOURCE_COMPLETION_PROVIDER(提供者)'失败

似乎底层gobj()不知道它应该实现这个接口.如果类不是派生的Glib::Object,gobj()甚至返回null.我希望我不必手动编写在C中实现此接口的GObject.

那么这样做的正确方法是什么?提前致谢.

PS:对于那些感兴趣的人:SourceCompletionProvider

c++ glib gtkmm

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

如何应用主题选择

我想用这个选择:http: //wiki.jqueryui.com/w/page/12138056/Selectmenu

但我无法理解,我怎样才能在自己的项目中使用其中一个主题?我应该怎么做,在自己的页面上选择样式?

谢谢.

jquery jquery-ui

9
推荐指数
1
解决办法
9528
查看次数

依赖注入与服务位置

我目前正在权衡DI和SL之间的优缺点.但是,我发现自己处于以下问题22中,这意味着我应该只使用SL作为一切,并且只在每个类中注入一个IoC容器.

DI Catch 22:

一些依赖项,如Log4Net,根本不适合DI.我称之为元依赖关系并认为它们对调用代码应该是不透明的.我的理由是,如果一个简单的类'D'最初是在没有记录的情况下实现的,然后增长到需要记录,那么依赖类'A','B'和'C'现在必须以某种方式获得这种依赖并将其从'A'到'D'(假设'A'组成'B','B'组成'C',依此类推).我们现在已经进行了重要的代码更改,因为我们需要登录一个类.

因此,我们需要一种不透明的机制来获取元依赖性.我想到了两个:Singleton和SL.前者具有已知的局限性,主要是关于刚性范围的能力:最好的是Singleton将使用存储在应用程序范围内的抽象工厂(即在静态变量中).这允许一些灵活性,但并不完美.

更好的解决方案是将IoC容器注入此类,然后使用该类中的SL从容器中解析这些元依赖关系.

因此,捕获22:因为类现在正在注入IoC容器,那么为什么不使用它来解析所有其他依赖项呢?

我非常感谢你的想法:)

c# singleton dependency-injection dependency-management service-locator

37
推荐指数
3
解决办法
4万
查看次数