这是一个小细节(也可能是宗教)问题.让我们假设我们正在构建一个REST架构,并且为了明确,我们假设服务需要三个参数,x,y和z.阅读有关REST的各种工作,似乎应该将其表示为类似的URI
在过去写过很多CGI之后,表达这一点似乎很自然
是否有任何特别的理由喜欢全斜线形式?
这是在标准C++中实现类似Last的行为的好方法吗?(没有特殊指针)
class Exception : public Exception
{ public: virtual bool isException() { return true; } };
class NoException : public Exception
{ public: bool isException() { return false; } };
Object *myObject = 0;
try
{
// OBJECT CREATION AND PROCESSING
try
{
myObject = new Object();
// Do something with myObject.
}
// EXCEPTION HANDLING
catch (Exception &e)
{
// When there is an excepion, handle or throw,
// else NoException will be thrown.
}
throw NoException();
}
// …Run Code Online (Sandbox Code Playgroud) 假设我有以下课程:
public class TestBase
{
public bool runMethod1 { get; set; }
public void BaseMethod()
{
if (runMethod1)
ChildMethod1();
else
ChildMethod2();
}
protected abstract void ChildMethod1();
protected abstract void ChildMethod2();
}
Run Code Online (Sandbox Code Playgroud)
我也有课
public class ChildTest : TestBase
{
protected override void ChildMethod1()
{
//do something
}
protected override void ChildMethod2()
{
//do something completely different
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用Moq,我想编写一个测试来验证当我调用BaseMethod()并且runMethod1为true时调用ChildMethod1().是否可以使用Moq创建TestBase的实现,调用BaseMethod()并验证是否在Moq实现上调用了ChildMethod?
[Test]
public BaseMethod_should_call_correct_child_method()
{
TestBase testBase;
//todo: get a mock of TestBase into testBase variable
testBase.runMethod1 = true;
testBase.BaseMethod();
//todo: verify that …Run Code Online (Sandbox Code Playgroud) 在erlang中,有一些按位操作来操作整数,例如:
1> 127 bsl 1.
254
Run Code Online (Sandbox Code Playgroud)
还可以将整数打包成一个字节序列
<< 16#7F, 16#FF >>Run Code Online (Sandbox Code Playgroud)
是否有可能,或者是否有任何运算符或BIF可以对二进制打包数据执行按位运算(例如AND,OR,XOR,SHL,SHR)?
例如(如果bsl在二进制包上工作 - 它没有):
1> << 16#7F, 16#FF >> bsl 1.
<< 255, 254 >>Run Code Online (Sandbox Code Playgroud) 我是付费的.Net开发人员,但我的个人网站托管在LAMP堆栈上,共享托管服务提供商.我一直在寻找一段时间来切换到带有.Net托管服务提供商的Windows,但真正让我失望的是价格.我想切换的原因是我发现.Net更加有趣,而且我在实践中使用.Net而不是PHP.
使用我目前的Linux托管服务提供商,每月只需10美元,我获得的带宽和磁盘空间比我想要在个人网站上使用的更多.我目前分配了380 GB的空间和7700 GB的传输空间.虽然我意识到我永远无法达到这些限制,特别是在CPU使用限制到位的情况下,很高兴能在我的网站上放一堆图片而不用担心空间不足.
但是,我从Windows主机看到的产品,例如每月17美元,我只能获得2 GB的磁盘空间和200 GB的传输.传输限制似乎在我一个月内使用的内容,但2 GB的磁盘空间似乎非常低.特别是因为只有400 MB可用于SQL Server数据库.
因此,就问题而言,足够的背景是定价的差异仅与支付Windows和SQL Server许可证的成本相关,或者是否有其他我不考虑进入Windows托管计划的成本.我的Linux主机服务很棒,所以我认为这不是运行各种托管网站的优质人员的问题.软件许可的成本是否真的有很大差异?
如果定价是由于许可成本,你为什么不看到更多的主机与Windows和.Net,但有可用的替代数据库,如PostgreSQL或MySQL,以保持最低价格,这提供了基本相同的功能.
自从CTP以来,我一直在摆弄ASP.NET MVC,我喜欢他们做过的很多事情,但有些事情我还没有得到.
例如,我下载了beta1,我正在用它组建一个小的个人网站/简历/博客.以下是ViewSinglePost视图的片段:
<%
// Display the "Next and Previous" links
if (ViewData.Model.PreviousPost != null || ViewData.Model.NextPost != null)
{
%> <div> <%
if (ViewData.Model.PreviousPost != null)
{
%> <span style="float: left;"> <%
Response.Write(Html.ActionLink("<< " + ViewData.Model.PreviousPost.Subject, "view", new { id = ViewData.Model.PreviousPost.Id }));
%> </span> <%
}
if (ViewData.Model.NextPost != null)
{
%> <span style="float: right;"> <%
Response.Write(Html.ActionLink(ViewData.Model.NextPost.Subject + " >>", "view", new { id = ViewData.Model.NextPost.Id }));
%> </span> <%
}
%>
<div style="clear: both;" />
</div> <% …Run Code Online (Sandbox Code Playgroud) 在查看在线代码示例时,我有时会通过使用new运算符将String常量赋值给String对象.
例如:
String s;
...
s = new String("Hello World");
Run Code Online (Sandbox Code Playgroud)
当然,这与之相比
s = "Hello World";
Run Code Online (Sandbox Code Playgroud)
我不熟悉这种语法,也不知道目的或效果是什么.由于String常量通常存储在常量池中,然后以JVM处理String常量的任何表示形式存在,甚至还会在堆上分配任何内容?
我有一个问题需要处理NSMutableData.
我定义了一个NSMutableData *receivedData,并试图将几个NSData*数据复制到receivedData.我刚刚调用[receivedData appendData:data],但似乎没有复制数据:
....
NSLog(@"get data! Received %d bytes of data",[data length]);
// output is not zero, say 1231.
[receivedData appendData:data];
NSLog(@"after append! length is %d bytes of data",[receivedData length]);
// showing zero
Run Code Online (Sandbox Code Playgroud)
谢谢.
我对数据库设计很陌生,对最佳实践有一些疑问,我真的很想学习.我正在设计一个数据库模式,我对需求有一个很好的了解,现在需要将它变成黑白.
在这个伪数据库布局中,我有一个客户表,订单表和产品表.
TBL_PRODUCTS:
ID
描述
详细信息
TBL_CUSTOMER:
ID
名称
地址
TBL_ORDER:
ID
TBL_CUSTOMER.ID
PROD1
Prod2的
prod3
等
每个"订单"只有一个客户,但可以包含任意数量的"产品".
问题是,在我的情况下,给定订单的产品可以是任何数量(单个订单数百个),订单的每个产品需要的不仅仅是"数量",而是可以具有跨页面的值特定订单的特定产品的文本.我的问题是,我该如何存储这些信息?
假设我不能将可变长度数组存储为单个字段值,另一个选项是使某个字符串以某种方式分隔并按应用程序中的代码分割.订单可以说100个产品,每个产品只有一个小的int,或5000个字符或自由文本(或介于两者之间的任何东西),仅对该订单是唯一的.
最重要的是,每个订单都必须拥有自己的审计跟踪,因为在整个生命周期中可能会发生许多事情.审计跟踪将包含通常的信息 - 用户,时间/日期,操作,可以是任何长度.在创建订单时,我是否会在其自己的表中存储特定订单的审计跟踪(因为它们可能会变得非常冗长)?
有什么地方我可以了解更多关于数据库设计的技术吗?