我不太确定如何说这个,但我会试试.
假设您在某个程序中有一些设置,其中80%的人确定您不必再次修改.你怎么知道在多变的代码上划线?您知道将设置一直带到用户定义的XML文件是过度的.但是,您也知道稍后可能需要更改这些设置的几率为20%,因此在橡胶与道路相遇的位置进行编码也不是最佳选择.
我想我想要问的是,你应该在多大程度上允许你的程序容易改变抽象树?
许多示例中的一个是手动编写网站的HTML代码与让程序自动生成它.直接编写HTML代码不会花费太多时间.编写程序以自动生成HTML代码需要更长的时间.
WACK说:
如果您觉得需要大量参数,请考虑创建CT.
...
CT比自定义功能更强大,更灵活.尝试将UDF用于简单的事情...将CT和组件用于更多涉及的过程,尤其是那些您可以将其视为离散动作而非简单"按摩"的过程
好的,但你通常如何做决定?有兴趣了解现实生活中的实践和例子.
对我来说,当一个函数有许多不需要的参数时,就会发生这种情况,因此我必须将它们称为myFunc(arg1 ="foo",arg2 ="bar").有时<cfmodule>
语法变得更易读,但并非总是如此.
其他原因是我不喜欢长(例如,超过2个代码屏幕)UDF.
但所有这些想法都是非常主观的,这就是为什么我有兴趣阅读其他人的意见.也许有更好的规则?
提前致谢.
我有时会看到这种事:
(k for k in (j for j in (i for i in xrange(10))))
Run Code Online (Sandbox Code Playgroud)
现在这真的让我的大脑弯曲了,我宁愿不以这种方式呈现.
是否有任何用例,或使用这些嵌套表达式的例子,它比嵌套循环更优雅,更可读?
编辑:感谢您简化此方法的示例.这实际上并不是我要求的,我想知道是否有任何优雅的时刻.
有没有办法打印出函数的参数列表?例如:
def func(a, b, c):
pass
print_func_parametes(func)
Run Code Online (Sandbox Code Playgroud)
这会产生类似的东西:
["a", "b", "c"]
Run Code Online (Sandbox Code Playgroud) 我正在研究一些旧的.asp页面.我主要做VB开发,所以我是.ASP的新手.
如何在本地运行这些页面以进行测试?
我正在运行Windows XP Home SP2.
我猜我需要安装本地服务器等.
我需要能够延迟事件处理程序的某些控件(如按钮)被触发,例如在实际事件1秒后(例如单击事件)..这可能是.net框架吗?
我使用计时器并从计时器的tick事件中调用我的代码,如下所示,但我不确定这是否是最好的方法!
void onButtonClick( ..)
{
timer1.Enabled = true;
}
void onTimerTick( ..)
{
timer.Enabled = false;
CallMyCodeNow();
}
Run Code Online (Sandbox Code Playgroud) 在我的ASP.Net应用程序中,我无法在我的机器上触发Global.asax中的事件.例如,Session_Start不会触发.
同样的Global.asax在我办公室的其他开发机器上运行良好.
我试过了:
ASP.Net开发服务器和我的本地IIS
重新启动机器
从项目中删除并重新创建文件(包括
从磁盘中删除)
所有机器都配置了相同级别的软件(VS2008
SP1,.Net 3.5,XP)
这让我发疯,有什么帮助吗?
编辑:由于应用程序在其他机器上工作,我不认为它与Global.asax的内容直接相关.出于某种原因,我的机器不处理文件.我已经修复了VS 2008和.Net 2.0.还有其他想法吗?
编辑:所有三台机器上运行的应用程序都是直接从源代码控制中提取的.这绝对是一台机器特有的东西.
谢谢,
拍
有没有办法访问属性的支持字段,以便进行验证,更改跟踪等?
是否有类似以下内容?如果没有,是否有计划在.NET 4/C#4中使用它?
public string Name
{
get;
set
{
if (value != <Keyword>)
{
RaiseEvent();
}
<Keyword> = value;
}
}
Run Code Online (Sandbox Code Playgroud)
我遇到的主要问题是使用自动属性不允许在具有明确支持字段的属性的验证等方面具有相同的灵活性.然而,显式支持字段在某些情况下具有缺点,即允许其所包含的类在访问和重用属性的验证,更改跟踪等时访问支持字段,就像可能正在访问的任何其他类一样外部的财产.
在上面的示例中,对支持字段的访问将限定为属性,从而防止绕过属性验证,更改跟踪等.
编辑:我已将<Backing Field>更改为<Keyword>.我会提出一个类似于价值的新关键字.虽然我确信它在很多现有代码中被使用,但是字段会很好.
有没有办法使用任何语言(首选:C/C++,VB,Haskell,批次)打开Windows XP关闭对话框(带有三个按钮的按钮 - 按下Shift时挂起,关机,重启和休眠)?
我想我可以在我的C++程序中加载msgina.dll,但我不知道下一步该做什么 - 在dll中用什么函数来显示对话框?
我正在做一个模糊媒体播放器的项目.我用Java编写了文件生成器,并用C编写的原始压缩代码转换了CRC生成器.我可以用DataOutputStream编写数据,但我无法弄清楚如何在java中将数据作为无符号字符数组发送.在C中,这是一个非常简单的过程.我已经非常彻底地搜索了一个解决方案,我发现最好的解决方案就是将数据发送到C并让C返回CRC.我可能只是没有正确搜索,因为我对这些东西很不熟悉.非常感谢您的帮助.
c# ×2
python ×2
windows ×2
.net ×1
.net-3.5 ×1
abstraction ×1
asp-classic ×1
asp.net ×1
c#-3.0 ×1
coldfusion ×1
crc ×1
custom-tag ×1
events ×1
generics ×1
global-asax ×1
java ×1
properties ×1
session ×1
shutdown ×1
winapi ×1
winforms ×1