是否有用于组织多文件Ruby程序的标准或传统系统?我已经开始使用Ruby中的第一个大型"项目",这是一个逻辑上组织成多个文件和目录的搜索程序.我在下面概述了我的潜在结构:
但是,代码目前有一个类(让我们称之为Searcher),每个协议的搜索类都继承自(GoogleSearcher <Searcher).为了管理这个,我需要将主文件包含在这些协议文件中(对吗?),考虑到我理想的结构,这似乎是不可能的.
除了我的具体例子,我想知道是否有任何约定,例如"更多文件而不是更少",或"文件的逻辑结构是不必要的".有一个"帮助"函数的文件是常见的(例如在Rails中?)什么级别的抽象被认为是合适的?
最后,我计划有一天将它集成到Rails作为库(不是插件;我希望它也可以单独工作).我不知道这是否会影响组织.
我知道这是一个非常开放的问题,但那是因为我会感谢任何与远程相关的建议.提前致谢.
ruby ruby-on-rails project code-organization project-organization
以下行显然用点表示法写得最好.我正在尝试清理我的JavaScript代码以使其严格.这是什么意思?
if (ie||ns6)
{
var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : "";
}
Run Code Online (Sandbox Code Playgroud)
我在我的代码行中添加了一些上下文,以防这有用吗?我对DOM一无所知.我不是要支持Internet Explorer 4,这不是我的代码,我自己也无法编写JavaScript.我只是试图让它符合规范,JSLint工具说明了这一行:
第17行字符43的问题:['dhtmltooltip']最好用点表示法编写.
假设我们在Windows应用程序中有以下代码:
ComboBox comboBox = new ComboBox()
{
AutoCompleteMode = AutoCompleteMode.SuggestAppend,
AutoCompleteSource = AutoCompleteSource.ListItems,
DataSource = new string[] { "", "Ark", "Boat", "Bucket" },
DropDownStyle = ComboBoxStyle.DropDownList
};
this.Controls.Add(comboBox);
TextBox textBox = new TextBox()
{
Left = comboBox.Right,
Top = comboBox.Top,
ReadOnly = true
};
textBox.DataBindings.Add("Text", comboBox, "SelectedValue");
this.Controls.Add(textBox);
Run Code Online (Sandbox Code Playgroud)
这里没有魔法,只是ComboBox绑定到一个字符串列表.该TextBox显示SelectedValue的ComboBox.
当我在" ComboBox标签"中输入"Bucket"时,我会遇到意外行为.由于某种原因,ComboBox显示"船"但TextBox显示"桶".我希望他们都能显示"Bucket".
如果我更改DropDownStyle为DropDown,它的行为与预期一致,但我不希望用户能够键入他们想要的任何内容.他们应该只能输入列表中的项目.
更有趣的是,在输入"Bucket"并跳出标签后,如果我再次输入"Bucket",它将同时显示"Bucket".如果我进行第三次尝试,它将返回"船",ComboBox而"Bucket"则返回"TextBox".所以看起来它正在骑自行车穿过所有的B.
在我最近从XP升级到Windows 7之前,我没有注意到这一点.我不明白这与此有什么关系,但无论如何我都把它丢掉了.
如果这种行为是正确的,有人能告诉我我应该做些什么来实现我预期的行为吗?
UPDATE 这似乎这是因为预计在Windows XP模式与Windows …
问题:在SQL脚本或存储过程中有哪些避免幻数或硬编码值的其他策略?
考虑一个存储过程,其作用是根据其StatusID或其他一些FK查找表或值范围来检查/更新记录的值.
考虑一个StatusID最重要的表,因为它是另一个表的FK:

要避免使用的SQL脚本如下:
DECLARE @ACKNOWLEDGED tinyint
SELECT @ACKNOWLEDGED = 3 --hardcoded BAD
UPDATE SomeTable
SET CurrentStatusID = @ACKNOWLEDGED
WHERE ID = @SomeID
Run Code Online (Sandbox Code Playgroud)
这里的问题是这不是可移植的,并且明确地依赖于硬编码值.将此部署到具有标识插入的其他环境时,存在细微的缺陷.
还试图避免SELECT基于状态的文本描述/名称:
UPDATE SomeTable
SET CurrentStatusID = (SELECT ID FROM [Status] WHERE [Name] = 'Acknowledged')
WHERE ID = @SomeID
Run Code Online (Sandbox Code Playgroud)
问题:在SQL脚本或存储过程中有哪些避免幻数或硬编码值的其他策略?
关于如何实现这一目标的其他一些想法:
bit列(命名为'IsAcknowledged')和一组规则,其中只有一行的值为1.这有助于找到唯一的行:SELECT ID FROM [Status] WHERE [IsAcknowledged] = 1)我无法弄清楚如何每3秒钟显示一些东西(比如你好世界).我正在用linux中的gcc编译器编写C编程.我们可以通过Ctrl + c来阻止它.我只想用最简单,最简单的方法来操作我的项目代码.
非常感谢你提前!
我在面板控件中有一个ASP.net按钮btnAccept,它将显示在modalViewextender控件中的Click of Another按钮上.
btnAccept控件onclick没有触发.但如果我把onClient点击它就会被解雇.但我想在服务器端工作onClick.我没有收到任何错误,我无法解决这个问题.
任何帮助将不胜感激.
下面是按钮的代码
<cc1:ModalPopupExtender ID="mdldigiSign" runat="server" Enabled="True"
BackgroundCssClass="modalBackground" TargetControlID="pnlSign"
PopupControlID="pnlSign" CancelControlID="lblCloseSign"
OnCancelScript="hideDigiSignDialog();" DynamicServicePath="">
</cc1:ModalPopupExtender>
<asp:Panel ID="pnlSign" runat="server">
<table border="0" class="SubMenu" align=center >
<tr>
<td align="right" valign="top" style="height: 30px">
<label id="lblCloseSign" runat="server" title="Close">
<a href="#">
<img src="images/close_button.gif" border="0"
alt="Close" />
</a>
</label>
</td>
</tr>
<tr><td>Respondent's Signature</td></tr>
<tr>
<td align=center >
<OBJECT id=esCapture1
classid=clsid:84C046A7-4370-4D91-8737-87C12F4C63C5
width="150" height="80" codebase="websignax.cab" VIEWASTEXT>
<param name="useslibrary" value="websignAx">
<param name="useslibrarycodebase" value="websignax.cab">
<param name="useslibraryversion"
value="7,1,0,1">IntegriSign Signature Control
</OBJECT>
<br />
<br />
<INPUT onclick=signNow() type=button value="StartSign"
name=B1 …Run Code Online (Sandbox Code Playgroud) 当我用当前的应用程序敲除越来越多的MVVM相关问题时,更多的只是不断涌现.:)
我想要替换的当前实现涉及StackPanel,其子项或多或少是动态生成的(通过查看配置文件).每个子节点都是UserControl的一个实例.之前,我所做的是为StackPanel分配一个名称,然后在Window_Loaded事件处理程序中,我只需确定必要的子项数,为每个子实例化一个UserControl,并为UserControl分配一个ID,这样我就知道了单击特定UserControl实例的按钮的正确来源; 每个UserControl上都有3个按钮.
所以我知道我想将StackPanel绑定到一个集合.这当然是不可能的,因为我需要使用从ItemsControl派生的东西,比如ListBox或ListView(甚至ItemsControl本身).为了在MVVM-ifying的第一次迭代中保持简单,我将只使用ListBox.
现在的问题是,我的代码隐藏中的ObservableCollection应该是一个ObservableCollection吗?我相信这意味着无论我如何为我的GUI设置外观,这个ListBox总是会有孩子看起来像他们在MyUserControl的XAML文件中那样.我希望这也可以自定义,但我认为这意味着我必须将MVVM模式应用于UserControl.
我正在开发一个项目,我需要在java 6应用程序中序列化一些数据并将其反序列化为ac#2.0 app.有没有一种策略或已存在的东西,我可以看一下,这可以让我用这两种语言做到这一点?我猜他们都支持XML序列化,但我真的需要它进行二进制序列化.
我们有一个数据库,通过脚本中的打嗝,有一个表与它的姐妹数据库表的模式不匹配.我重新安排了表以匹配其他表的模式,但是想要强制绑定名称值对,以防其他数据库出现相同问题.目前我有以下内容,我正在寻找一种优雅的方式来做同样的事情而不会抛出一堆额外的逻辑.
INSERT INTO Cars
SELECT CarName, CarModel, CarMake FROM SomeBigJoin
Run Code Online (Sandbox Code Playgroud)
如果我做了类似的话,我怎么能像我一样特意绑定一个Name/Value对
INSERT INTO Cars (Name,Model,Make) VALUES (CarName, CarModel, CarMake)
Run Code Online (Sandbox Code Playgroud)
...同时保留SELECT语句?