我开始学习红宝石了.我也是一个日常的C++开发人员.对于C++项目,我通常使用以下dir结构
/
-/bin <- built binaries
-/build <- build time temporary object (eg. .obj, cmake intermediates)
-/doc <- manuals and/or Doxygen docs
-/src
--/module-1
--/module-2
-- non module specific sources, like main.cpp
- IDE project files (.sln), etc.
Run Code Online (Sandbox Code Playgroud)
Ruby(非Rails,非Merb)的dir布局会建议保持干净,简单和可维护吗?
换句话说:
是否有充分的理由选择松散类型的集合而不是类型安全的集合(HashTable vs. Dictionary)?它们是否仅用于兼容性?
据我所知,通用集合不仅类型安全,而且性能更好.
这是一篇关于该主题的综合文章:使用C#2.0对数据结构进行广泛的检查.
为了满足客户的功能要求,我希望我的应用程序在互联网可用时,如果有新版本,请查看我们的网站.
问题是我不知道在服务器端需要做什么.
我可以想象我的应用程序(使用Qt在C++中开发)必须向服务器发送请求(HTTP?),但是这个请求会响应什么?为了通过防火墙,我想我将不得不使用端口80?它是否正确 ?
或者,对于这样的功能,我是否必须要求我们的网络管理员打开我将通信的特定端口号?
@ pilif:谢谢你的详细解答.还有一些我不清楚的事情:
喜欢
http://www.example.com/update?version=1.2.4
然后你可以返回你想要的东西,也可能是新版本安装程序的下载URL.
我该如何退货?它会是一个php或asp页面(我对PHP和ASP一无所知,我不得不承认)?如何解码?version=1.2.4
零件以便相应地返回内容?
我试图用混合的行和简短的文本片段(通常是两个或三个单词)制作SVG XML文档.我遇到的主要问题是使文本与线段对齐.
对于水平对齐方式,我可以使用text-anchor
与left
,middle
或right
.我找不到垂直对齐的等价物; alignment-baseline
似乎没有这样做,所以目前我dy="0.5ex"
用作中心对齐的kludge.
是否有正确的方式与文本的垂直中心或顶部对齐?
首先,这个问题从这个问题中被删除了.我这样做是因为我认为这部分比一个较长问题的一部分要大.如果它冒犯了,请原谅我.
假设您有一个生成随机性的算法.现在你如何测试它?或者更直接 - 假设你有一个混合了一副牌的算法,你如何测试它是一个完全随机的算法?
为问题添加一些理论 - 一副牌可以在52中洗牌!(52阶乘)不同的方式.拿一副纸牌,手工洗牌,记下所有牌的顺序.你有什么可能得到这种洗牌的概率是多少?答案:1/52!
在洗牌之后,你在每个套装中获得A,K,Q,J ......的几率是多少?回答1/52!
所以,只需改组一次并查看结果就可以完全没有关于您的改组算法随机性的信息.两次,你有更多的信息,三个甚至更多......
黑盒子如何测试随机性的洗牌算法?
我们正处于一个新的ERP-ish客户端 - 服务器应用程序的开端,该应用程序是作为Python富客户端开发的.我们目前正在评估Dabo作为我们的主要框架,它看起来非常好用且易于使用,但我想知道,是否有人将它用于中型到大型项目?
谢谢你的时间!
我已经对它进行了配置,但我想从中获得更多...也许Cygwin不是正确的工具,但我喜欢它如何在Windows中提供类似*nix的环境.
我目前有一个类,我正在尝试创建一个简单的GUI来创建这个类的集合.这个类的大多数属性都是字符串.但是,我希望用户能够设置的属性之一是Enum.因此,我希望用户界面具有此枚举的下拉列表,以限制用户输入无效的值.目前,我正在获取对象的初始列表,将它们添加到DataTable并将DataGridView的DataSource设置为表.很好地工作,甚至为一个布尔属性创建一个复选框列.但是,我不知道如何将枚举列放入下拉列表中.我正在使用C#和.NET 2.0.
此外,我已经尝试将DataGridView的DataSource分配给我的对象列表,但是当我这样做时,它对enum没有帮助,我无法在DataGridView中创建新行,但我绝对不是绑定使用DataTable作为我的DataSource,它只是我半工作的选项.
我正在寻找一种可靠的技术,将Ajax添加到工作的ASP.NET MVC应用程序中.我想使用jQuery,并了解如何使用jQuery的AJAX功能.
我需要知道的是我应该如何编写我的控制器以便我可以在没有JavaScript的情况下运行该站点,但同时可以进行AJAX调用而无需单独的视图,单独的控制器或任何类型的路由入侵.我的目标是在启用JavaScript时增强工作应用程序,而无需复制或重新创建应用程序的元素.
虽然想要做的事情可能很奇怪,但我需要在.Net中创建一个下限> 0的数组.这开始似乎是可能的,使用:
Array.CreateInstance(typeof(Object), new int[] {2}, new int[] {9});
Run Code Online (Sandbox Code Playgroud)
生成所需的结果(下限设置为9的对象数组).但是,创建的数组实例不能再传Object[]
递给其他方法,期望给出一个错误,说明:
System.Object[*]
不能铸成一个System.Object[]
.数组类型有什么不同,我该如何克服这个?
编辑:测试代码=
Object x = Array.CreateInstance(typeof(Object), new int[] {2}, new int[] {9});
Object[] y = (Object[])x;
Run Code Online (Sandbox Code Playgroud)
失败的原因是:"无法将类型为'System.Object [*]'的对象强制转换为'System.Object []'."
我还想指出,这种方法DOES使用多个维度时工作:
Object x = Array.CreateInstance(typeof(Object), new int[] {2,2}, new int[] {9,9});
Object[,] y = (Object[,])x;
Run Code Online (Sandbox Code Playgroud)
哪个工作正常.