我想用D开始编程.我有一个简单的应用程序,需要一个GUI但我想确保它可以同样很好地移植到Linux/Windows/Mac并且每个平台的变化很小(没有).
wxD看起来像是选择的竞争者,因为我已经知道了wx工具包.
我认为fltk4d是Qt的竞争者和(未完成的)包装器.
是否有任何其他真正的跨平台GUI工具包可以轻松地找到我想要的地方,以及人们在这里选择的工具包是什么?
我使用完整的图形化IDE,如Eclipse CDT(Linux)和Visual Studio(Windows),它们具有自动完成,内置调试等功能.这些功能让我觉得我不能没有.
我一直听说有多少人每天使用emacs/vim.当图形IDE看起来更容易使用时,为什么人们仍然使用基于控制台的编辑器?我知道如何使用vim和emacs,但对于日常编程我只使用IDE,因为我发现自己的工作效率更高.
这不是一个vim vs emacs问题所以请不要争论另一个,请反对思科图形IDE反对控制台IDE.
由于我已经熟悉图形IDE,我是否可以通过使用emacs/vim获得任何生产优势?
我希望答案是"可能不是",仅仅是因为学习曲线,我会想念通常的图形IDE功能,如自动完成和内置调试器 ; 但显然emacs支持自动完成和调试.但是,对于使用标准GUI文本编辑器的人,我可能会说他们应该使用emacs/vim.你怎么看?
我是Objective-C的新手,也是Apple平台上的开发人员,但希望我能以一种可以理解的方式构建这个问题,无论如何:)
我想解析我的iPhone应用程序的XML提要,我决定不将所有委托方法从NSXMLParser的实例推送到我的视图控制器中,我将其包装在FeedParser类中.在阅读了一些文档和示例代码之后,这就是我想出的:
@protocol FeedParserDelegate <NSObject>
- (void)parserDidLoadEpisodes:(NSArray *)episodes;
@end
@interface FeedParser : NSObject {
id <FeedParserDelegate> delegate;
}
@property (nonatomic, assign) id <FeedParserDelegate> delegate;
- (id)initWithURL:(NSURL *)url delegate:(id<FeedParserDelegate>)theDelegate;
@end
Run Code Online (Sandbox Code Playgroud)
简单.我的FeedParser对象的代表只需要实现parserDidLoadEpisodes.
但是,当我开始实际FeedParser使用我的类时NSXMLParser,我意识到我没有必须指定FeedParser实现协议NSXMLParser- 我可以实现我想要做的事情的委托方法.我想我已经注意到了跟随委托模式的其他类,但不是全部.
那么为什么我也不愿意为我的FeedParser课程指定一个正式的协议呢?它会削减一些可能不必要的代码.我想问题是:为什么我要创建一个正式的协议而不只是做一些事情,只需检查是否在委托上实现该方法 respondsToSelector?是否只有这样,如果没有实现所需的委托方法,编译器将发出很好的警告?
这是我尝试测试jQuery resizable是否有效的简单代码.我使用google.load就可以使用其他jQuery组件了,我尝试将google.load换成本地版本,没有任何区别.我已经在3个浏览器中测试过,我已经从几个演示/教程站点复制了代码(它可以在他们的站点上找到它们).
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://www.google.com/jsapi?key=blahblah_obviously changed_blahblah-blahblah_blah_blahblahblah"></script>
<script type="text/javascript">google.load("jquery", "1.3.2");google.load("jqueryui", "1.7.1");</script>
<style type="text/css">
#resizable { width: 100px; height: 100px; background: silver; }
</style>
<script type="text/javascript">
$(document).ready(function(){
$("#resizable").resizable();
});
</script>
</head>
<body>
<div id="resizable"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我没有收到任何错误消息.我的智慧结束了.我究竟做错了什么?为什么即使这个简单的案例也不起作用?
更新:jQuery UI库包含在google.load("jqueryui","1.7.1")行中;
我正在做一些图像处理,我想单独读取JPEG和PNG图像中的每个像素值.
在我的部署方案中,使用第三方库(因为我在目标计算机上限制访问)会很尴尬,但我假设没有用于读取JPEG/PNG的标准C或C++库...
所以,如果你知道一种不使用图书馆的方法那么好,如果没有,那么仍然欢迎答案!
在JavaScript中,可以声明多个这样的变量:
var variable1 = "Hello World!";
var variable2 = "Testing...";
var variable3 = 42;
Run Code Online (Sandbox Code Playgroud)
......或者像这样:
var variable1 = "Hello World!",
variable2 = "Testing...",
variable3 = 42;
Run Code Online (Sandbox Code Playgroud)
一种方法比另一种方法更好/更快吗?
我尝试创建一个名为"类"的模型(如同一个毕业班的学生),并遇到各种各样的问题.在Rails中要避免哪些其他单词或类名?
我发现的一些链接:http:
//juicebar.wordpress.com/2007/05/30/reserved-words-in-rails/ http://railsforum.com/viewtopic.php?id = 22242
这个问题有点牵扯.我编写了一个将简单多边形分解为凸子多边形的算法,但现在我无法证明它不是最优的(即使用Steiner点(添加顶点)的最小凸多边形数).我的教授坚持认为它不能用这样的贪婪算法来完成,但我想不出一个反例.
所以,如果有人能证明我的算法不是最理想的(或最优的),我会很感激.
用图片解释我的算法的最简单方法(这些是来自较旧的次优版本)

我的算法所做的是将点线周围的线段延伸到相反的边缘上的点.
如果此范围内没有顶点,则会创建一个新的顶点(红点)并连接到该顶点:

如果是在范围内的一个或多个顶点,它连接到最近的一个.这通常会产生最少数量的凸多边形的分解:

但是,在某些情况下,它可能会失败 - 在下图中,如果碰巧首先连接中间的绿线,这将创建一个额外的不需要的多边形.为此,我建议仔细检查我们添加的所有边缘(对角线),并检查它们是否仍然是必要的.如果没有,请将其删除:

但是,在某些情况下,这还不够.看到这个图:

用ac替换ab和cd会产生更好的解决方案.但在这种情况下,没有边缘可以移除,因此这会产生问题.在这种情况下,我建议一个偏好顺序:当决定将反射顶点连接到哪个顶点时,它应该选择具有最高优先级的顶点:
最低的)最近的顶点
med)最接近的反射顶点
最高的近距离反射,当向后工作时也在范围内(很难解释) -
在这个图中,我们可以看到反射顶点9选择连接到12(因为它最接近),当连接到5时会更好.两个顶点5和12都在扩展线定义的范围内段10-9和8-9,但应优先考虑顶点5,因为9在4-5和6-5给出的范围内,但不在13-12和11-12给出的范围内.即,边缘9-12在9处消除反射顶点,但是在12处不消除反射顶点,但是它可以在5处消除反射顶点,因此应优先选择5.
边缘5-12可能仍然存在此修改版本,但可以在后处理期间将其删除.
有没有我错过的案例?
伪代码(由John Feminella请求) - 这是缺少图3和图5中的位
assume vertices in `poly` are given in CCW order
let 'good reflex' (better term??) mean that if poly[i] is being compared with poly[j], then poly[i] is in the range given by the rays poly[j-1], poly[j] and poly[j+1], poly[j]
for each vertex poly[i]
if poly[i] …Run Code Online (Sandbox Code Playgroud) 我有一个简单的视图,我希望在此视图中添加一个JQuery DatePicker JavaScript(而不是每个视图,通过母版页).
我不确定这样做的最佳方法是什么.
其次,我意识到我的JavaScript加载的位置/时间.我是YSlow的粉丝,它建议我在页面底部添加任何脚本,我这样做.
那么,我怎么能两个都做?
这是观点:
<%@ Page
Language="C#"
MasterPageFile="~/Views/Shared/Site.Master"
Inherits="System.Web.Mvc.ViewPage" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<h2>Index</h2>
<% using (Html.BeginForm()) {%>
<p>
<label for="StartDate">Start Date:</label>
<!-- JQuery DatePicker to be added, here. -->
</p>
<% } %>
</asp:Content>
Run Code Online (Sandbox Code Playgroud) javascript ×2
jquery ×2
asp.net-mvc ×1
c ×1
c++ ×1
class ×1
coding-style ×1
d ×1
declaration ×1
eclipse-cdt ×1
emacs ×1
geometry ×1
ide ×1
iphone ×1
jpeg ×1
linux ×1
matlab ×1
naming ×1
objective-c ×1
performance ×1
png ×1
resize ×1
ruby ×1
variables ×1
views ×1
vim ×1