主要来自.NET背景,我对Visual Studio非常依恋(无论好坏).
不过,我现在正在上学软件工程,我的第一堂课是使用Ruby on Rails在XP(极限编程).大多数情况下,我听说当你在Ruby中开发时,你总是会跳过整个IDE; 而且我完全乐于接受这种可能性.虽然有IDE,但似乎必须至少有一些人仍然发现使用它是值得的.
因为我是如此熟悉VS,如果没有人在那里已经用我只是想知道红宝石钢.从网站上看,它看起来确实不错.我完全不知道它对于一般的RoR开发有多么有用或合适,这就是为什么我认为我会把这个问题扔出去.
你使用过Ruby In Steel吗?你对它有什么印象?它如何与其他着名的IDE(如Netbeans)相抗衡?是否值得使用IDE进行RoR开发,或者是一个优秀的文本编辑器?
我来自Python背景,非常喜欢Python装饰器的强大功能.
Lua是否支持装饰器?
我已阅读以下链接,但我不清楚:http: //lua-users.org/wiki/DecoratorsAndDocstrings
UPDATE
您是否也想过如果可能的话如何在Lua中实现它的示例.
什么是Visual Studio 2005和Visual Studio 2008的键盘快捷键,如果一个人意外点击ESC并希望盒子再次返回,则显示IntelliSense盒?
我使用Ajax将值发送到PHP脚本,该脚本将一些值写入数据库:
$.ajax({
type: "POST",
data: "action=vote_down&id="+$(this).attr("id"),
url: "vote.php",
success: function(msg) {
$("span#votes_count"+the_id).fadeOut();
$("span#votes_count"+the_id).html(msg);
$("span#votes_count"+the_id).fadeIn();
}
});
Run Code Online (Sandbox Code Playgroud)
正如你可以从action=vote_down脚本中看到的那样是一个投票脚本.
我已经阻止用户多次投票,通过登录对其中的用户名和ID进行投票,vote.php并且如果用户名和ID已经在DB中针对同一帖子,那么我不会将投票添加到DB.
我个人认为在每个页面加载时查询数据库以检查用户是否已经投票可能非常密集,有很多地方可以在一个页面上投票.
因此,我将向用户显示投票选项,但是当他们投票时,我想要一些如何返回一个值vote.php来表示他们已经投票.
对此最佳方法的任何想法?
我有一个在我的XML布局中创建的FrameView,在我的代码中,我正在尝试创建一系列新的ImageView并将它们添加为此FrameView的子项.ImageViews很小,只有大约15像素的正方形,我希望它们显示在FrameView周围的各个位置(我正在尝试实现看起来像雷达屏幕).我能够创建它们并将它们添加得很好,它们会出现在屏幕上.但是,当我尝试设置边距时,它似乎没有任何效果.无论我设置什么,所有的ImageView都显示在FrameView的左上角,而不是偏移适当的边距.下面列出了我的XML布局,以及生成子视图的代码.难道我做错了什么?如何才能使边距正确显示?或者有更好的方法来做到这一点,而不是使用边距.
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RadarBackground"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/radar_bg">
<FrameLayout
android:id="@+id/RadarFrame"
android:layout_width="320dip"
android:layout_height="320dip"
android:layout_marginTop="25dip">
</FrameLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
Java的:
for (int i = 0; i < getData().getTargetCount(); i ++) {
int id = getData().getTargetId(i);
Log.d(T.TAG_A, "Radar: plotting target " + id);
TargetView tv = new TargetView(this, id, getData().getTargetName(id));
FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
lp.setMargins(
radarCenterX + (int) (getData().calcTargetRadarX(id, radarSize) / radarScale) - (targetSizeX / 2),
radarCenterY - (int) (getData().calcTargetRadarY(id, radarSize) / radarScale) - (targetSizeY / 2),
0, …Run Code Online (Sandbox Code Playgroud) 我正在尝试根据预定的时间值显示时钟..而不是当前的客户端时间.
这是我的JQuery ......
$(document).ready(function () {
var currentTime = new Date('3/09/2010 9:27:29 PM');
setInterval("DisplayTime(currentTime, $('.answer-body'))", 1000);
})
function DisplayTime(currentTime, destination) { ... }
Run Code Online (Sandbox Code Playgroud)
现在在DisplayTime函数内部,我显示了一些自定义文本,调用destintion.html(..)显示自定义文本.KEWL.最后,在我显示文本之后,我想要在间隔的下一次迭代中添加1秒currentTime,它不是使用原始时间值,而是1秒后.
问题:我无法将currentTime变量传递给setInterval函数.我不是特别希望在这里有一个匿名功能..除非我别无选择.
有人可以帮助我或重构我的错误代码吗?
所以每一秒都会重新显示时间,并添加新的秒.
如何获取具有特定类名的网页上的所有元素并将它们放入数组中?那么我希望能够将该数组的内容放在警告框中?
如何将这些元素id放入数组中?
在我正在研究的函数中发现的一段代码让我感到困惑:
char GetCommand( void )
{
char command;
do {
printf( "Enter command (q=quit, n=new, l=list): " );
scanf( "%c", &command );
Flush();
}
while ( (command != 'q') && (command != 'n')
&& (command != 'l') );
printf( "\n----------\n" );
return( command );
}
void Flush( void ) {
while ( getchar() != '\n' )
;
}
Run Code Online (Sandbox Code Playgroud)
我在这里不太明白的是该Flush()功能的用法.我的意思是,我正在阅读的书通过说它阻止用户输入多个单个字符然后在第二次提示输入时读取该字符来解释它.
我不明白的是如何Flush()防止这种情况发生.它什么都不做.它只是一个while命令.(虽然这是真的......什么?????)没有意义.
我有两个表,它们具有相同的字段,共享许多行.我想列出一个表中的所有行,这些行在另一个表中无法匹配.具体来说,这两个表是实验的两个不同版本,其结果略有不同.一个例子是这样的:
|TableA|
--------
horse
cat
cow
table
|TableB|
--------
horse
cat
chair
Run Code Online (Sandbox Code Playgroud)
我希望能够看到,TableA缺少chair从TableB,并可能在不同的查询TableB缺失cow和table从失踪TableA.
我的想法是在所有字段上进行某种外连接,然后在其中排除带有空值的行,但这似乎很重要.这是要走的路还是有更优雅/高效的方法?
我正在用C++编写一个控制台应用程序.
我使用SetConsoleCtrlHandler来捕获close和CTRL + C按钮.这允许我的所有线程停止并正确退出.
其中一个线程执行一些保存,需要一些时间来完成,我有一些代码在控制台crtl句柄例程中等待.MSDN指定CTRL_CLOSE_EVENT在5秒后弹出一个框,但我的进程退出.
这对于调试控制台应用程序也很烦人,因为在您可以单步执行之前进程退出并且我不知道可能是什么问题(我有Windows 7 64位).
另外,奇怪的是如果我的例程返回TRUE(只是禁用关闭操作),它仍然会关闭应用程序.该例程会被调用,因此SetConsoleCtrlHandler已成功安装.
例如:
BOOL WINAPI ConsoleHandlerRoutine(DWORD dwCtrlType)
{
if (dwCtrlType == CTRL_CLOSE_EVENT)
{
return TRUE;
}
return FALSE;
}
int _tmain(int argc, _TCHAR* argv[])
{
BOOL ret = SetConsoleCtrlHandler(ConsoleHandlerRoutine, TRUE);
while (true)
{
Sleep(1000);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?