>SQL Server 2005: 价格和开源

SqlServer icon 微软公布了SQL Server 2005包括代替MSDE的Express版在内所有版本的价格模式。消息中,SQL Server 2005的产品经理Tom Rizzo声称,微软正考虑在客户的要求之下将SQL Server 2005 开源。


价格表:
  • Enterprise Edition(企业版) $25,000/processor
  • Standard Edition(标准版) $6,000/processor
  • Workgroup Edition(工作组版) $3,899/processor
  • Express Edition(简化版) FREE(免费)
    我们注意到新的Intel和AMD的双核(dual core)处理器在微软许可中将被算作是一个处理器。微软将分别对被动集群节点(passive cluster nodes)备份服务器或者是热备份服务器分开单独收费。

这次访问中,Tom Rizzo还说,微软将把SQL Server 2005作为其Shared Source License的一部分发布。

这不是最终的结果。如果许多客户需要,这算得了什么。我们将明确的关注被共享的SQL Server正在干什么(we’ll definitely look at doing shared source with SQL Server。译者Samuel Chen注:言下之意应是将会对共享的版本提供服务还是…)
Tom还说,大部分用户并不想修改代码,他们只是需要得到“没有没门,没有安全问题的温暖的安全感”。

详细信息访问Tom Rizzo 在CNET的采访。

>微软正在寻找.Net Framework 2003的应用程序

为了测试Whidbey和VS2005的兼容性,微软的Jay Roxe在他的blog上发出了寻找2003应用程序的消息。

  • Microsoft will test your application on the latest Whidbey bits. The degree of this testing will vary from application to application based on compatibility requirements being tested.
  • Microsoft will report to you the pass/fail result along with the issues in the application that Microsoft observed (in case of failure) and suggestions to mitigate the problem.
  • Microsoft does not commit to making sure your app works on the latest bits. However, this effort is striving to ensure we are aware of all compatibility issues our customers may experience and are doing our best to ensure existing applications work on the .NET Framework 2.0.
  • You’re responsible for providing the application, any necessary prerequisites (test data, other resources), and setup instructions for how to install and run the application on a clean machine. Microsoft will not be able to test any application that requires domain-specific resources or that has real customer data in it.
    原文 Jay Roxe的blog

>SHA1算法告破

王晓云(音)、尹依群(音,英文名Lisa)和余鸿葆(音)的小组继去年8月宣告破解MD5后,在今年农历新年还没过的2月13日,再次宣布惊人的消息——SHA1哈希算法告破!

Key2005年2月15日,在RSA组织的座谈会上,以色列Weizmann科学院的著名破解专家Adi Shamir(RSA 算法,Rivest Shamir Adelman,其中就用他的名字所命名)带来了这个消息,早上他收到了这个中国人的研究小组起草的技术报告。

Shamir在会上说到“这将带来巨大的震动,研究开发新的哈希算法(Hash Algorithms)将是非常急迫而重要的事情。”(This will create big waves in my opinion. It’s extremely important to develop new kinds of hashing algorithms.)

“SHA-1被破解这是一个足以让人晕倒的消息!(This break of SHA-1 is stunning.)”与会的国外一位著名的专家Ronald Rivest(MIT,开源RSA算法的首席科学家(co-developed))说到,“我有足够的理由相信这是一个正确的结果(报告)(I have strong reasons to believe the results [of the paper] are correct)”。

通过这些中国研究者的研究结果,黑客可以建立两个内容完全不同但是具有同样哈西表的文档,从而使之表面上看起来是安全可信的。

这意味着当今的安全方案将会发生巨大的变化,所有人都将修改他们的产产品,当然这还有个时间问题。

也许正是由于这个消息,国家标准和科技学院(National Institute of Standards and Technology)在这个月早些时候推荐开发者在2010年前转移到SHA-256或者SHA-512算法。

由于这些各国著名科学家的信赖(reputable research team) ,我们有理由相信这是中国人在科学上的又一大贡献。

附注:

Xiaoyun Wang : Shandong University, China. Email:xywang@sdu.edu.cn
Yiqun Lisa Yin : Independent security consultant, USA. Email:yyin@princeton.edu
Hongbo Yu : Shandong University, China. Email:yhb@mail.sdu.edu.cn

Collision Search Attacks on SHA1 (paper, pdf)
Collision for Hash Functions MD4, MD5, HAVAL-128 and RIPMED (paper, pdf)

RSA 著名安全学家 Bruce Schneiner 的blog上的评论
专业的工程技术网站CommsDesign(CMP之一)新闻

>技术峰会2005

谁说只有中国人会多 :)
如今的IT技术界也流行起了开会。

除了不久前过去的JAOO和刚过去的ApacheCon等传统峰会,接踵而来的还有EclipseCon 2005、MySqlCon 2005、DrupalCon 2005、ObjectWebCon 2005 等等。

可惜的是这些会议大多是开源社区和Java的,其中很少有关于.Net的东西。也许不久Codeproject,TSS.NET, Aps.net,或者ms会搞一些.net的峰会也说不定。

无论如何,除了关注技术本身,技术发展的方向也是需要我们把握的。

>2GB Hotmail Comes!

今天在msn网站左边导航栏中, Hotmail链接旁边安上了一个图标,并且右上方的hotmail图标变成了。点击进入passport的登录页面后,看到了如下的声明:

What’s new For Free Hotmail? MSN Hotmail Inbox Storage is now 250 MB and there is an increased attachment size of 10 MB!

这就是说ms终于兑现了他的承诺,每个hotmail(包括msn)邮箱用户都拥有了至少250MB的容量和10MB附件的邮件。

而让我吃惊的是,我的邮箱变成了2GB(我有个朋友很久以前就已经是2G了)!
仅仅只有容量的增长是不足以应付Gmail的挑战的,hotmail还有很长的路要走。

>多态(Polymorphism)

多态(Polymorphism)

– 面向对象的典征,现代软件设计的基石

_All rights reserved.
Samuel Chen
12.12.2004 first published on www.cnblogs.com/samuel
此文在cnblogs上的讨论有很多值得学习和关注,点击这里查看

_

前言

如果让你选择一项面向对(Object Oriented,后文简称OO)象最重要的或者最能表现OO特点的技术特征,会是什么?

封装(wrap)、继承(inheritance)、重载(override)还是多态(polymorphism),亦或是其他?
在我看来,答案无疑将是多态。封装是优点,继承是基础,重载是特点,而多态则是特征。

虽然这四者缺一不可,无论少了哪一个,就像一个人缺胳膊少腿,使OO将不再是完整的,但是前三者对于OO来说好比鼻子耳朵,而多态则是生殖器,没有多态的OO就象是被阉割的雄性,已经失去其典征。

什么是多态?

简单来说,多态是具有表现多种形态的能力的特征,在OO中是指,语言具有根据对象的类型以不同方式处理之,特别是重载方法和继承类这种形式,的能力。多态被认为是面向对象语言的必备特性。

多态有多种分类,通过了解这些分类可以更丰满对其认识,在这里就不再罗列,请各位参考 wiki大百科) 和 javaworld .

多态与泛型(generic)

多态在某种意义上来说与多态非常接近。(原文是“多态实际上就是泛型。”,这句比较容易招骂,所以改了)

所谓泛型就是指我们不为特定的类型进行专门编码,而采用对不同类型进行通用编码的方式,无论是数据结果还是算法。

传统的泛型是指类似以Template function的方式使参数一般化,典型的应用是C++ STL,比如List、Vector以及algorithm。

而OO已能通过接口(Interface)和抽象类(Abstract Class)进行真正意义上的泛型了。在我看来,这就是OO最精彩的地方,也就是多态的威力。而对于传统意义上的Generic,我始终觉得其作用已经今不如昔了。

多态和继承(Inheritance)

严格来说,多态与继承、重载并不是孤立的,他们之间存在着紧密的联系,多态是建立在这两者的基础之上的(实际上继承就有用重载这一特性)。

传统的多态实际上就是由虚函数(Virtual Function)利用虚表(Virtual Table)实现的(早期C模拟OO特性时使用最多,C++的实现也是,后来的技术未作研究,是否使用VT不得而知),自然是离不开继承,换句话说多态实际上覆盖了继承。

正是由于继承与多态的紧密联系,使得我们很容易张冠李戴,那么如何区别呢?

举个常用的例子:
`
Abstract Class Sharp implement IHaveSide {
public bool isSharp(){
return true;
}

public abstract int getSides();
}

Class Triangle extends Sharp {
public override int getSides() {
return 3;
}
}

Class Rectangle extends Sharp {
pubilc override int getSides() {
return 4;
}
}
`
那么这种类的关系叫做继承,下面这种使用方式也是继承所带来的:


Triangel tri = new Triangle();
println(“Triangle is a type of sharp? “ + tri.isSharp());

而这种方式则是多态:


Sharp sharp = new Rectangle();
println(“My sharp has “ + sharp.getSides() + “ sides.”);

这两者区别在哪?很显然,继承是子类使用父类的方法,而多态则是父类使用子类的方法。

其技术上的区别是绑定时期,晚期绑定一定是多态。

这里介绍区别并不是想说茴字有几种写法,而是只有清楚的认识到技术的显著特点后才能更好的使用它。

现代软件设计

现代软件大量的使用框架、模式(非特指Deisgn Pattern),也就是将软件开发的一些共性进行抽象,提出普遍适用的软件结构。

无论是框架还是模式,他们都有一些明显的共同点 — 使用xml配置对象,大量使用接口采用所谓面向接口的方法,利用反射实现。

为什么要接口?因为需要抽象,需要将未知的对象在已有的框架中表现。

如何实现接口?多态!所谓反射,实际上就是一种晚期绑定的技术,这个技术实质上表现出来的就是多态这一特征。

面向方面开发(Aspect Oriented Programming)是一个热点,也是现代软件发展的趋势。定制、组件装配的软件开发方式在应用越来越复杂、需求变化越来越快的今天显得日趋重要。那么如何才能使今天的软件能够适应明天需要呢?如何使我开发速度更快?如何能更容易的修改应用?AOP则是解决这些问题的有效手段。

让我们看看框架容器的主要模式,Inversion of Control Containers(IoC)/Dependency Injection(包括setter injection, construct injection, interface injection等),其主要好处就是类之间的依赖,通过运行期的查找来进行绑定。那么他的基础是什么呢?还是多态!

我们可以看到,在现代软件的开发中,无数的思想象火花一样跳动。其中一类很重要的思想就是建立在多态这样一个很基本的特性,甚至可以说是一个语言概念之上的。在这里希望通过这篇文章抛砖引玉,引起更多的对与当今软件发展发向的思考,同时探究其根源。

后记

行文简陋,错漏在所难免,愿与诸位探讨

参考

wiki大百科 http://en.wikipedia.org/wiki/Polymorphism_(computer_science)
java世界 http://www.javaworld.com/javaworld/javatips/jw-javatip30.html
Matin Fowler http://www.martinfowler.com/

>QQ上最牛的离线留言消息

你好.我去杀几个人,很快回来.

我去后山和黑山老妖研究吃唐僧的事,有事回来再说

便秘中。。。。。勿搅。。。

你终于来啦,我找你N年了,去火星干什么了?我现在去冥王星,回头跟你说个事,别走开啊

您所呼叫的用户尚未安装OICQ……

你呼叫的人现在不在,当你听到硬盘“咔”的一声,请对着鼠标留言,谢谢……

主人不在。到哪儿去了?就……就是不告诉你!真要找的话,请按住电脑power

键4秒钟后留言……

该用户没有回应,可能用户忙,请稍候再试。或按Ctrl+Alt+Del返回.

自杀中,稍后再说…

DD有事找我请大叫!

DD你现在连接到的是海狼的冰箱,放入食物后请断线,谢谢合作。

DD我正在下五子棋,上次分心把裤子输光了。这次再输会被拍裸照!我可不想让人看见,等这盘下完了一定回你。

1.嘀,这里是自动应答,MM请再发一次,我就与你联系;JJ请再发两次,我就与你联系;GG、DD就不要再发了,因为发了也不和你联系!

2.腾讯服务器系统崩溃,请稍后再试!

3.计算机正在处理你的信息,请稍侯,如果长时间没有响应,请重新启动计算机!

你好,现在我在玩一个叫cs(或其他)的游戏,有事请按下电脑上“RESET”键,在听到“嘀”一声之后留言,谢谢

你有权保持沉默,你所说的一切都将被作为存盘记录。你可以请代理服务器,如果请不起网络会为你分配一个。

您使用的OICQ是未注册版本。您可以继续使用本软件,但将屏蔽发送短信息的功能。支持国产软件,请您注册新版!

广告之后,马上回来!

正在澡澡哦~~不要偷看~~~

嗯~啊~~嗯~啊~~~

在加本人为好友前请详细阅读以下条款:1.未满18岁者请在父母指导下与本人聊天;2.非专业聊天人士.不承担主动招呼义务;3.谢绝我问你答制.在本人不回复的情况下请自觉停止一切信息

你所呼叫的用户正在系统整理,请稍后再呼

此人正在被国际刑警组织全球范围内通缉 如果您有此人的消息,请拨打当地报警电话 120,请对着电话说如下密语言:我真的不是疯子,我不是疯子 我真的不是疯子。然后汇报你的所在地。 谢谢合作。我们的专业人员会去保护您的安全。

您的QQ已经中了我安插的病毒,请不断向本人发信,否则本人一有闲暇立刻动手!

洗澡中~谢绝旁观!!^_^0

您好,OICQ今天休假,我是NETANTS……

由于大气电离层影响,与该用户的卫星连接已中断,请稍后再试。

对不起,由于服务器的原因,您刚才发的信息丢失,请重发一面。

1.机主正在裸奔

2.机主已奔出服务区

我很忙,也很困,也很无奈,于是我决定跳楼

正在格式化你的硬盘,请稍候……

你知道什么是“铛铛铛铛”吗?铛铛铛铛 就是only you~~~

唉呀~你可真调皮!你看,我话还没说完你又来了~~

嗨~我现在不在,如果有事请在听到“逼”的一声后留言······逼!

对不起,网路不通,请重新发送…

你要机主不在,请等到“嘟~”声后拿起鼠标留言。。。

1.对不起,您所呼叫的用户不在计算机旁,请你现在立刻猛击你的显示器直到它冒火花为止,听到响声后我会给你回复

2.你好。这是腾讯服务中心自动回复。收到这条信息表明您的**作系y出了问题。请按Ctrl+Shift+Del

3.您所呼叫的用户先不再服务区内……可能是网络不通…想解决此类问题…请您将头用力撞向显示器……以保证网络通畅……

本人现在位置:WC,姿势:下蹲 脸部:抽搐 状态:用力中。。。。

注意:使用腾讯移动qq的用户可能无法立即获取你的留言。

我去吃饭了,如果你是帅哥,请一会联系我,如果你是美女……………………………就算你是美女,我也要先吃饱肚子啊

你要和我说话?你真的要和我说话?你确定自己想说吗?你一定非说不可吗?那你说吧,这是自动回复,反正我看不见

你好 我是XXX的自动回复 现在他不在 跟我说什么我也就这几句

最近忙于讨债!如果你是还钱的请您用12345@haha365.net找我(来信必复)!如果你是要账的用123@163.net找我(密码目前还未找到)!

错误403:重新启动可能会解决此问题。有疑问请拨打010-110110,接通后请打骂一声“傻比”才会有人接听

收到信息后,,木马已经在工作。

如果在一分钟之内,你还不下线,嘿嘿~~我就不好意思拉~

我是XX的狗,XX现在不在,他一会儿就回来,如果你愿意,我可以陪你聊会

>VS2005 vs Eclipse, Functions I Expected.

曾经是Visual Studio的fans,Visual C++ 6 确实好用,加上Visual Assistant 简直是如鱼得水的感觉;到了.net,vs.net2003也没有让我失望。

可是当我使用了一段时间WSAD/Eclipse后再回头来用vs.net2003,那火简直让我想把电脑砸掉。

我没有试用过2005,所以把2003和Eclipse做个对比,期望能在2005中看到我所希望的功能:
  • 任何一个窗口双击title最大化。仅此一点人性化设计就能值回票价,即使我是17寸1024,但有那么多窗口,可视面积还是捉襟见肘,小显示器的兄弟就更是了。

  • 自动完成自动添加import。用vs.net的时候,当你不知道要使用的类是属于哪个namespace,自动完成根本不起作用,必须得先去查文档,那个麻烦,特别是内存小的兄弟;而Eclipse里面的自动完成即使你没有import相应包,也能显示在自动列表中,即使有不同的包里面都有这个类,它也会同时列出来让你选,vs.net2003却只能在列表中显示error(在using了都包含这个类名的namespace的时候)

  • 集成cvs。虽然vs.net集成了vss也很方便,但是多年来vss一直不升级也很让人恼火,功能也太弱了。好在听说2005已经加强了版本管理。

  • 重构。vs根本没有。

  • UML图。WSAD/Eclipse都没有,是通过插件实现,当然vs也可以。但是当你使用Rational XDE时,就能发现,在同步时,.net中那些内部的class,namespace都给你弄出来(不排除我没用好的缘故),简直没法看。

  • 丰富的插件。当然这和两(三)个产品不同的市场策略有关了。

  • 服务器集成。和插件一样,这个也是平台的策略。

  • 视图功能。锦上添花,但是更能“增加用户体验”,这可是M$所倡导的。

    还有很多的东西,在你使用后会发现。

    当然vs2003是个新生儿,可eclipse也不老。说这些只是希望m$在2005中给我们一些惊喜,可不要丢掉多年IDE老大的位置。

    这段时间一直都在搞java,没有投入足够的关注到.net,也许有的朋友会说我写的这些2005已经都有了,那太好了,正是我所期待的!

>[English] Adverb for Link

To link two sentences approach usually with the following adverbs, they can?enhance your manner of speaking.

  • thus: 如此;至此;因此。therefore;so. otherwise: 否则;别的方式;不同地。else; under other circumstances; if not; in other respects; besides. furthermore: 此外;而且。in addition to; moreover; additionally. therefore: 因此;所以。and so; hence. moreover: 而且;此外。in addition; besides; furthermore.

  • meanwhile: 同时;与此时。in the intervening time; at the same time.

the following words are emotion plused :

  • obviously: 明显的,显然的。in an obvious manner; clearly; unmistakably; plainly.

  • originally: 起初;原来;独创;新颖。in an original manner; at first, in the first place; with respect to origin.

  • finally: 最后,终于;决定性的。eventually, at last; in a final manner

  • unfortunately: 不幸地;偏巧地。unluckily, unhappily.