今天,我的同事注意到,当向进度指示器添加小数位时会导致程序运行速度比没有运行速度快.(即代替1,2,3 ...它显示1,1.2,1.4,1.6 ......)我检查了一下,即使我知道它是伪造的,我也感到很惊讶.
这让我想知道:还有什么其他的东西可以创造快速应用的印象?
当然,最好的方法是实际使应用程序更快,但从算法的角度来看,通常没有太多可以做的.此外,我认为让用户减少挫折是一件好事,尽管它或多或少是一种心理伎俩.
我一直在重构我目前正在进行的项目的代码库,因此除了程序集的范围之外没有用的类/接口应该被声明为内部(而不是公共).但是我遇到了以下代码的问题:
internal interface IFirstInterface
{
...
}
internal interface ISecondInterface
{
IFirstInterface First{ get; }
...
}
public class Implementer : ISecondInterface
{
public IFirstInterface First {get; private set;}
...
}
Run Code Online (Sandbox Code Playgroud)
我的问题:
为什么内部接口的成员必须公开实施?如果在内部类上实现接口,那么实现的成员不应该是内部的吗?这不是一个大问题,因为接口成员无论如何都不会公开访问,因为类是内部的.这似乎与直觉相反.
主要问题是上面的场景,因为我不能有一个IFirstInterface的公共getter,因为它据称是一个内部接口,即我从编译器得到以下错误:
可访问性不一致:属性类型"IFirstInterface"比属性"Implementer.First"更难访问
有没有办法解决?
注意:我意识到这个重构练习可能没什么价值,但我认为这将是一个很好的方式让我更深入地了解内部修饰符的含义.
我浏览了他们的文档,一开始发现它有点压倒性.我知道您可以通过输入UPC(低于1D条形码的数字)来搜索项目,但我在API中找不到关于它的单词.
我想要做的是在扫描条形码后通过执行UPC搜索来执行产品查找.
这是我的代码:
TCHAR szProcessName[MAX_PATH] = TEXT("<unknown>");
GetModuleFileNameEx (hProcess, NULL, szProcessName,
sizeof(szProcessName)/sizeof(TCHAR));
Run Code Online (Sandbox Code Playgroud)
我需要路径char*,而不是TCHAR[].如果没有转换,它是否可能(WideCharToMultiByte)?
谢谢...
我们知道MS Access数据库引擎被"限制"以允许最大文件大小为2GB(或者可能内部连线被限制为少于2KB的4KB数据页的某些功率).但这在实践中意味着什么呢?
为了帮助我衡量这一点,您能告诉我可插入MS Access数据库引擎表的最大行数吗?
为了满足表的定义,所有的行必须是唯一的,因此唯一约束(例如PRIMARY KEY,UNIQUE,CHECK,数据宏等)是必需的.
编辑:我意识到有一个理论上的限制,但我感兴趣的是实际(并不一定是可行的)现实生活限制.
我正在使用Server.HTMLEncode来编码我的HTML.
我注意到它不能逃脱单引号,如果你在你的html中使用单引号,这是一个限制
<input type='text' .... />
(我已经检查过这是有效的XHTML).
是否存在关于Server.HTMLEncode的任何其他限制或注意事项,特别是此方法无法处理的任何无效XHTMl字符?
目前,当用户登录时,我创建了2个会话.
$_SESSION['logged_in'] = 1;
$_SESSION['username'] = $username; // user's name
Run Code Online (Sandbox Code Playgroud)
那么,那些需要登录的页面,我只是这样做:
if(isset($_SESSION['logged_id'])){
// Do whatever I want
}
Run Code Online (Sandbox Code Playgroud)
有没有安全漏洞?我的意思是,攻击我的会话容易吗?人们如何破解会话?以及如何防止它?
编辑:
刚发现这个:
http://www.xrvel.com/post/353/programming/make-a-secure-session-login-script
http://net.tutsplus.com/tutorials/php/secure-your-forms-with-form-keys/
刚发现链接,这些方法是否足够好?请提出你的意见.我还没有得到最好的答案.
在大多数示例中,我看到以下IBOutlets设置:
(Example A)
FooController.h:
@interface FooController : UIViewController {
UILabel *fooLabel;
}
@property (nonatomic, retain) IBOutlet UILabel *fooLabel;
@end
FooController.m:
@implementation FooController
@synthesize fooLabel;
@end
Run Code Online (Sandbox Code Playgroud)
但这也很好(注意:没有属性也没有合成):
(Example B)
FooController.h:
@interface FooController : UIViewController {
IBOutlet UILabel *fooLabel;
}
@end
FooController.m:
@implementation FooController
@end
Run Code Online (Sandbox Code Playgroud)
如例B中那样定义IBOutlets是否有任何缺点?像内存泄漏?似乎工作正常,我更喜欢不将IBOutlets公开为公共属性,因为它们不是这样使用的,它们仅用于控制器实现.在没有真正需要的情况下将它定义在三个地方并不会让我觉得非常干(不要重复自己).