我正在多个客户端和服务器之间编写一个消息传输程序.
我想为每条消息生成一个唯一的消息ID.它应该由服务器生成并返回给客户端.
对于消息传输,我使用哈希数据结构,例如:
{
api => POST,
username => sganesh,
pass => "pass",
message => "hai",
time => "current_time",
}
Run Code Online (Sandbox Code Playgroud)
我想使用此哈希生成唯一ID.
我尝试了几种方法,MD5和冻结,但这些方法提供了不可读的ID.我想要一些有意义或可读的唯一ID.
我以为我们可以使用微秒来区分ID,但问题是多个客户端.
在任何情况下,ID都应该是唯一的.
任何人都可以帮我解决这个问题吗?
提前致谢.
我目前正在开发一个简单的Silverlight应用程序,允许人们上传图像,裁剪,调整大小和旋转图像,然后通过Web服务将其加载到CMS.
裁剪和调整大小已完成,但旋转会导致一些问题.旋转后图像被裁剪并偏离中心.
WriteableBitmap wb = new WriteableBitmap(destWidth, destHeight);
RotateTransform rt = new RotateTransform();
rt.Angle = 90;
rt.CenterX = width/2;
rt.CenterY = height/2;
//Draw to the Writeable Bitmap
Image tempImage2 = new Image();
tempImage2.Width = width;
tempImage2.Height = height;
tempImage2.Source = rawImage;
wb.Render(tempImage2,rt);
wb.Invalidate();
rawImage = wb;
message.Text = "h:" + rawImage.PixelHeight.ToString();
message.Text += ":w:" + rawImage.PixelWidth.ToString();
//Finally set the Image back
MyImage.Source = wb;
MyImage.Width = destWidth;
MyImage.Height = destHeight;
Run Code Online (Sandbox Code Playgroud)
以上仅代码需要通过90°,此时转动到使我只是设置destWidth与destHeight原始图像的高度和宽度.
我的问题不是技术问题.这更像是一种哲学而非个人偏好.我正在设计和开发一个应用程序(web +桌面),这只是我想到的,并且想知道你们(程序员和设计师)是否曾经遇到过这个问题:
一些设计人员相信制作将会运行3 - 5年的应用程序,并且任何变更都将反映在他们身上,而无需采用系统核心变更.作为一个程序员,我知道一个事实,这是从来没有的情况.确实发生了小的化妆品变化,但通常它们会在一两年后消失,随着时间的推移,将会发生变化,需要进行核心更改,最终您将进行新的应用.
鉴于技术的快节奏变化,设计一个5年的应用程序是相当荒谬的,恕我直言.嗯,我的意思是不设计,但这个应用程序将运行5年的想法,并认为我们不需要创建一个新的,我认为生活在一个愚人的天堂.我是说真的,各位程序员,有一个正在运行的流程通常被重新制作/重新结构化/重新组织/重新编码几年下来行反正最关键任务的或基本的小应用程序.
所以我的问题是为什么要保持这种完美的应用程序运行十年的态度.真的很愚蠢,因为你知道技术每年都会发生变化; 新框架,新方法,新技术将出现,您的客户将需要它们.所以,如果你原谅我使用这个短语,WTF就是重点?
我一直告诉我的设计师,应用程序将在几年反正被重新设计,有在试图使其从@ss拍摄灯光是没有意义的,因为它只是不会,永远.没有完美的应用程序.
我希望你们得到我的漂移.你们有同样的感受吗?BTW我从事软件编程业务已有7年了.如果你真的考虑过这个问题,你真的认为Facebook将会在5年内保持不变,因为设计每年都会改变,以保持"时髦",但核心每隔几年就会发生变化.我很清楚这一点.我是偏执还是什么?请告诉我其他程序员和我在同一条路上.任何人?
我找不到一个完全符合我要求的功能.不幸的是,这个功能不兼容UTF-8.这个函数就像一个基本函数,ucwords但它也会在一个字符后面跟着一个给定的字符(在我的情况下我需要在a之后的字符上应用大写-).
这是功能:
<?php
function my_ucwords($string)
{
$noletters='"([/-'; //add more if u need to
for($i=0; $i<strlen($noletters); $i++)
$string = str_replace($noletters[$i], $noletters[$i].' ', $string);
$string=ucwords($string);
for($i=0; $i<strlen($noletters); $i++)
$string = str_replace($noletters[$i].' ', $noletters[$i], $string);
return $string;
}
$title = 'ELVIS "THE KING" PRESLEY - (LET ME BE YOUR) TEDDY BEAR';
echo my_ucwords(strtolower($title));
?>
Run Code Online (Sandbox Code Playgroud)
只要我在我的字符串中添加重音符号,例如:
echo my_ucwords(strtolower( "saint-étienne" )) //return: Saint- instead of Saint-Étienne
Run Code Online (Sandbox Code Playgroud)
任何的想法?我知道而不是strlen我可以使用的mb_strlen.但其他人呢?
编辑:
提醒我,我不仅需要简单的ucwords工作UTF-8.我需要它来在一个后面找到的任何字符上应用大写-.
我还在试图自己解决这个问题.
我有这个向量:
t = 1: 10 % t = 1 2 3 ..10
A= [3 4 5] % a column vector
Run Code Online (Sandbox Code Playgroud)
如果我输入:
(3 == t)
Run Code Online (Sandbox Code Playgroud)
我得到了结果:
0 0 1 0 0 0 0 0 0 0 % it means: 1 at location equals, and 0 at others
Run Code Online (Sandbox Code Playgroud)
我想为vector a执行此操作,这意味着它将采用向量A中的每个元素并比较并返回另一个向量.所以在这种情况下,结果将是3×10矩阵.
但是这一行会导致错误:A==t.
当然,我可以通过使用for循环来完成此操作,但我想对此操作进行矢量化.
我正在对控制器进行单元测试。
在我的一种控制器方法中,我正在设置会话变量:
public void Index()
{ Session["foo"] = "bar";
return View();
}
Run Code Online (Sandbox Code Playgroud)
如何对此进行单元测试?问题是测试时Session属性为null。由于Session属性为只读,因此无法进行注入。
我不想使用任何第三方工具或嘲笑。
当我混合四首曲目时,声音会减少很多,我尝试过混音和混音.我怎么做才能让音量不变?
我试过-M after "sox --combine mix-power",但结束文件是0秒长.
我想知道java是否带有内置的解析时间/日期的方式,如下所示:
5m1w5d3h10m15s
Run Code Online (Sandbox Code Playgroud)
这是5个月,1周,5天,3小时,10分钟,15秒.
最小生成树以最便宜的方式提供无向图.但什么是最小的跨越森林?它是为连接图还是未连接图定义的?
algorithm ×1
asp.net ×1
asp.net-mvc ×1
c# ×1
date ×1
datetime ×1
diacritics ×1
django ×1
graph ×1
graph-theory ×1
graphics ×1
httpcontext ×1
java ×1
model ×1
octave ×1
parsing ×1
perl ×1
php ×1
python ×1
rotation ×1
sox ×1
string ×1
time ×1
unit-testing ×1
utf-8 ×1