我叫郝帅................(ZT) [问题点数:0分,结帖人summerice110]

Bbs7
本版专家分:11646
Blank
蓝花 2007年7月 扩充话题大版内专家分月排行榜第三
结帖率 100%
Bbs7
本版专家分:11646
Blank
蓝花 2007年7月 扩充话题大版内专家分月排行榜第三
Bbs8
本版专家分:40392
Bbs7
本版专家分:23443
Bbs2
本版专家分:371
Bbs2
本版专家分:371
Bbs4
本版专家分:1965
Bbs1
本版专家分:60
Bbs4
本版专家分:1445
Bbs3
本版专家分:774
Bbs11
本版专家分:218302
Blank
红花 2010年11月 扩充话题大版内专家分月排行榜第一
2010年10月 扩充话题大版内专家分月排行榜第一
Blank
黄花 2010年12月 扩充话题大版内专家分月排行榜第二
2010年8月 扩充话题大版内专家分月排行榜第二
2010年7月 扩充话题大版内专家分月排行榜第二
2010年6月 扩充话题大版内专家分月排行榜第二
Blank
蓝花 2010年6月 Java大版内专家分月排行榜第三
2010年5月 扩充话题大版内专家分月排行榜第三
2010年4月 扩充话题大版内专家分月排行榜第三
Bbs2
本版专家分:469
Bbs6
本版专家分:6534
Bbs1
本版专家分:1
Bbs2
本版专家分:305
Bbs1
本版专家分:5
Bbs2
本版专家分:190
Bbs2
本版专家分:316
Bbs2
本版专家分:246
Bbs1
本版专家分:98
91平台我叫MT
一个经典动画片改编的游戏。大家可以尝试玩一下,确实不错。 91平台的
我叫mt2.0更新公告
我叫mt2.0更新公告 一、2.0版《PVP的远征》军费发放   简体服《我叫MT》2.0版本《PVP的远征》更新在即!为备战新版本,我们宣布10天后(3月10日)发放军费振奋军心。   简体服30级以上玩家每天登陆游戏,可以在次日维护后(10:00-11:00)领取180符石军费奖励,军费发放持续至4月8日活动...
我叫MT全套美术资源
我叫MT全套美术资源
今天我儿子叫爸爸了
    而且叫了两声,叫的很清楚,我嘻唰唰嘻唰唰!
大家好,我叫许万利。
喊爹爹!!!
什么叫守护进程?我不明白!
什么叫守护进程?我不明白!
我叫mt3.2更新公告
我叫mt3.2更新公告 1.增加装备合成功能 可以用材料将现有的75级紫装升级为80级紫装。 2.增加全新公会副本 增加新的公会副本:神庙外围。掉落可以进阶装备的材料。 3.增加全新个人副本 增加新的个人副本:奴隶市场。 4.增加多队伍阵容配置功能 每个玩家可以同时配置3个队伍;使用任一队伍都可进行副本、好友和L...
漏洞利用_BadIRET_分析(zt
为安全人员转载一些好的技术分析资料,同时为自己学习做备忘。二进狗和web猫一起来吧。
软件保护建议(ZT)
软件保护建议rnrn  本节将给出关于软件保护的一般性建议,这些都是无数人经验的总结。程序员在设计自己的保护方式时最好能够遵守这里给出的准则,这样会提高软件的保护强度。 rn(1)软件最终发行之前一定要将可执行程序进行加壳/压缩,使得解密者无法直接修改程序。如果时间允许并且有相应的技术能力,最好是设计自己的加壳/压缩方法。如果采用现成的加壳工具,最好不要选择流行的工具,因为这些工具已被广泛深入地加以研究,有了通用的脱壳/解压办法。另外,最好采用两种以上的不同的工具来对程序进行加壳/压缩,并尽可能地利用这些工具提供的反跟踪特性。rn(2)增加对软件自身的完整性检查。这包括对磁盘文件和内存映像的检查,以防止有人未经允许修改程序以达到破解的目的。DLL和EXE之间可以互相检查完整性。rn(3)不要采用一目了然的名字来命名函数和文件,如IsLicensedVersion( )、key.dat等。所有与软件保护相关的字符串都不能以明文形式直接存放在可执行文件中,这些字符串最好是动态生成。rn(4)尽可能少地给用户提示信息,因为这些蛛丝马迹都可能导致解密者直接深入到保护的核心。比如,当检测到破解企图之后,不要立即给用户提示信息,而是在系统的某个地方做一个记号,随机地过一段时间后使软件停止工作,或者装作正常工作但实际上却在所处理的数据中加入了一些垃圾。rn(5)将注册码、安装时间记录在多个不同的地方。rn(7)检查注册信息和时间的代码越分散越好。不要调用同一个函数或判断同一个全局标志,因为这样做的话只要修改了一个地方则全部都被破解了。rn(8)不要依赖于GetLocalTime( )、GetSystemTime( )这样众所周知的函数来获取系统时间,可以通过读取关键的系统文件的修改时间来得到系统时间的信息。rn(9)如果有可能的话,可以采用联网检查注册码的方法,且数据在网上传输时要加密。rn(10)除了加壳/压缩之外,还需要自己编程在软件中嵌入反跟踪的代码,以增加安全性。rn(11)在检查注册信息的时候插入大量无用的运算以误导解密者,并在检查出错误的注册信息之后加入延时。rn(12)给软件保护加入一定的随机性,比如除了启动时检查注册码之外,还可以在软件运行的某个时刻随机地检查注册码。随机值还可以很好地防止那些模拟工具,如软件狗模拟程序。rn(13)如果采用注册码的保护方式,最好是一机一码,即注册码与机器特征相关,这样一台机器上的注册码就无法在另外一台机器上使用,可以防止有人散播注册码,并且机器号的算法不要太迷信硬盘序列号,因用相关工具可以修改其值。rn(14)如果试用版与正式版是分开的两个版本,且试用版的软件没有某项功能,则不要仅仅使相关的菜单变灰,而是彻底删除相关的代码,使得编译后的程序中根本没有相关的功能代码。rn(15)如果软件中包含驱动程序,则最好将保护判断加在驱动程序中。因为驱动程序在访问系统资源时受到的限制比普通应用程序少得多,这也给了软件设计者发挥的余地。rn(16)如果采用keyfile的保护方式,则keyfile的尺寸不能太小,可将其结构设计得比较复杂,在程序中不同的地方对keyfile的不同部分进行复杂的运算和检查。rn(17)自己设计的检查注册信息的算法不能过于简单,最好是采用比较成熟的密码学算法。可以在网上找到大量的源码。rnrnZT FROM:http://www.pediy.com/tutorial/chap6/Chap6-4.htmrnrn
MSXML的XSLT 处理器 [zt]
本文讨论MSXML的可扩展样式语言转换(Extensible Stylesheet Language Transformations, XSLT)的转换处理机制。 rn=================================================rnXSLT的工作机制是为源文件树(source tree)建立相应的样式树(style sheet tree),并产生结果树(result tree)。源文件树和结果树分别为XML文件对象模型(DOM)中的XML源文件和XSLT样式表。所有树的建立都是通过MSXML的解析器完成的。rn附图说明了XSLT处理器,XSLT树,源文件树以及结果树相互之间的处理关系。rnrn将文件解析为树rnMSXML将XML源文件和XSLT文件分别解析成为资源树和XSLT树。XPath通过内节点将源文件处理成树,这才使得XSLT得以通过XPath的引导将源文件解析成树。rn解析过程中的一部分工作是检查源文件的XML格式标准。文件格式出错,解析器将停止工作。rnrn转换和输出数据rnXSLT处理器依据存储在XSLT树中的转换信息开始进行数据转换。这些转换信息在模板标记中体现。rnXSLT按照模板规则进行处理时,将转换好的数据输出到结果树。这棵结果树可以是XML文件或其他任何结构的文本文件,如HTML,CSV或RTF格式文件。rnrnXSLT文件格式rn下面通过一个典型的XSLT文件来说明其组成格式。我的说明放在注释标记中间。rnrnrn rnrnrn  rn rnrn rnrn2001-01-01rnrn rnrnrnrn rnrnrn rnrn rn rn rn Scootney Publishing: Special Exhibitrn rn rn rn rn rn  rn rn Scootney Publishing: Special Exhibit Catalogrn rn rn rn rn rn rn rn rn rnrnrnrn Titles Grouped by Genrern rn  rn  rn rn rn rn rn rn Titlern rn rn rn Authorrn rn rn rn Copyrightrn rn rn rn rn newrn rn rn rn rn Pricern rn rn rn Summaryrn rn rn rn rn rn rnrnrnrn Titles Grouped by Authorrn rn rn rn rn rn rn rn rn rnrn rnrn本文简单介绍了MSXML的XSLT转换处理机制。重点在于说明一些概念性的思路。对引用的XSLT文件样本也在自己感到容易使人产生混乱的地方作了说明和自己的体会。rnrn这里谈到的仅仅是XML的冰山一角,借以抛砖引玉,期盼引起程序员同仁对XML进一步了解的兴趣和讨论。rnrnEnjoy Programming!rn
MS的一道面试题[ZT]
圆圈上顺时针排列着1,2,3,....2000 这2000个数. 从1开始,顺时针隔一个拿走一个(1最先被拿走,下一个是3被拿走). 问最后剩下是哪一个数字.rnrn要求给出一个比较有效率的算法!
ZT 韩寒的《 保住非法字符》
保住非法字符有朋友问我,钓鱼岛事件你怎么不发表一点意见,谴责一下日本。我说,虽然脚下一片自己的土地也没有,但对于领土的问题,我也是很在意的。最早的时候,我在一个论坛上看见这事,我义正言辞的写了一句,“保住钓鱼岛”,结果该论坛告诉我,我试图发表非法的内容,请修改。我百思不得其解,直到把帖子改成了“保住尖阁列岛”,这才顺利合法的发表了。这的确是一件大事,外交部都周末加班破例追加谴责。如果大家一切都好,
[ZT]半小时精通正则表达式
1、入门简介   简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Perl或PHP脚本语言,以及awk或sedshell程序等。此外,象JavaScript这种客户端的脚本语言也提供了对正则表达式的支持。由此可见,正则表达式已经超出了某种语言或某个系统的局限,成为人们广为接受的概念和...
css之自动换行(ZT)
本文中提到的例子效果 博文链接:https://dongwei.iteye.com/blog/170255
zt】web学习day02
[size=medium][color=red]1、函数(第一部分)[/color] 1)基本语法 function 函数名(参数1,..参数n){ 函数体 } 2)函数可以有返回值 function 函数名(参数1,..参数n){ 函数体 return... } 3)函数内部有一个arguments对象,通过该对象 可以访问到参数值。函数在传参的...
明军使用的火器[ZT]
使用三眼铳的明军士兵 rn[img=http://www.imagestation.com/picture/sraid206/pbec4dd7c076c6fdb8778b6c6c9b4c430/eef9d201.jpg][/img]rn 原始的火焰喷射器 – 猛火油柜 rn猛火油柜,由下方装有石油的油柜与上方类似大型注射器的喷管组成,使用时向后拉动喷管尾部的拉拴,使石油被吸入喷管,在喷管口放置少量火药点燃,向前推动喷管的拉拴,使管中石油向前喷出,并在出口处被点燃。宋军用它防守城池,来焚烧敌军的攻城器械。但这种武器也有缺点,容易出事故不说,石油的贮存,笨重的箱体难以机动都是问题。 rn[img=http://www.imagestation.com/picture/sraid206/p3bfc8fd00f7cd8ce46d9883425931e2b/eef9d206.jpg][/img]rn 多管火箭炮 :一窝蜂 rn这是古代的喀秋莎火箭炮,一具发射器中带有多发火箭弹。这种武器曾经在军事博物馆有展出。 rn明代《武备志》对一窝蜂有较详细地介绍,当时的规格有多种,从3连发的神机箭,到100连发的百虎齐奔,都属于这个范畴。射程300米,连发火箭弥补了普通火箭弹道不稳定的弱点。 rn[img=http://www.imagestation.com/picture/sraid206/pa5bf03cd2461982a8ee4791106850640/eef9d170.jpg][/img]rn对人杀伤地雷 rn[img=http://www.imagestation.com/picture/sraid206/pc2c959870ae7b3e7232e75740eda0074/eef9e2c4.jpg][/img]rn 单兵手榴弹:震天雷 rn古代的手榴弹,名为震天雷,内有称为“火老鼠”的钩型铁片若干,用于加强杀伤力,这和美军手榴弹内放钢珠一个原理,这种不符合“武道”的残忍家伙,大概当时也被当作恐怖主义分子的武器吧。 rn[img=http://www.imagestation.com/picture/sraid206/pb900456a8908e06ce1063d5a1c40f8e4/eef9d152.jpg][/img]rn 非触发水雷:水底龙王炮 rn[img=http://www.imagestation.com/picture/sraid206/pc1ccc1eafe2387b93f3e1ae16d9a611f/eef9d1d2.jpg][/img]rn 毒气弹:霹雳炮毒火球 rn应该是最早的化学武器了,这个出现的比明朝早多了,采石之战的时候是宋军重要武器,内部除了火药外,还有巴豆,狼毒,石灰,沥青,砒霜等物,爆炸时产生毒烟,中者口鼻流血,不亚于沙林氏毒气阿。 rn [img=http://www.imagestation.com/picture/sraid206/p200edc8affdc2b2785bdb6c0f487eabc/eef9e290.jpg][/img]rn沦为礼炮的三眼铳 rn三眼铳,是明军重要的单兵火药武器,原因是它可以连续释放,构成密集火力,有利于压制行动迅速的骑兵。可能对历史熟悉的朋友能够想到,崇祯在李自成攻入北京的时候出宫而走,手中提的兵器就是三眼铳。 rn但是三眼铳的缺点也很致命,由于构造的问题,瞄准很不容易,近代还有用三眼铳充当狩猎武器的,但山东猎人的评价是“三眼铳打兔子,没Diao准”,更多的时候,三眼铳成了稀释和出殡时后的礼炮。 rn[img=http://www.imagestation.com/picture/sraid206/p5690ad76908e0b181bba80fc1e0d9630/eef9d1e5.jpg][/img]rn 多级火箭:火龙出水 rn明代《武备志》记载的多级火箭(就是杨利伟上天的长城火箭的祖宗),用纸糊筒外绑第一级火箭,龙口内有第二级火箭,射出后加大射程击中敌方船舰,用于水上攻击,射程可以达到1.5公里。但是因为制造复杂,这个距离上瞄准困难,基本没有实用。 rn [img=http://www.imagestation.com/picture/sraid206/p2ace69f0153362bf0dcf80c0f921b192/eef9d20d.jpg][/img]rn古式后膛榴弹炮:佛朗机 rn明代正德年间利用欧洲技术制造的大型后装火炮,使用带炮弹壳的开花炮弹! rn1537年装备达到3800门,带有准星和照门。有效射程500米,45度仰角发射的时候射程1公里。大型者炮身250厘米,中型者156厘米,小型者 93厘米,子炮(炮弹)从后方装入,发射间隔短,发射散弹时一发炮弹带有500发子弹,可以封锁60米宽的正面,威力惊人。 rn因为后膛装弹对铸造技术要求较高,清代渐渐淘汰,让位于比较简单的前装武器 rn[img=http://www.imagestation.com/picture/sraid206/pdc9d04222e50d4c1984784195e3d809e/eef9e288.jpg][/img]rn 单发步枪:火铳 rn明代制式的早期轻型火器,铸造精良,设计精巧,和蒙元的火铳比较,所需火药大大减少。明代作为标准武器,曾生产达九万余,1449年的北京保卫战广泛使用。长43。5厘米,口井3厘米,2人一组发射,一人负责支架和瞄准,一人负责点火射击,射程180米。 rn [img=http://www.imagestation.com/picture/sraid206/p3646c097cb9cf5103eb63857db815f6b/eef9e22f.jpg][/img]rn远程重炮:红夷大炮 rn号称将军炮,明末引进西方技术制造,带有炮耳和瞄准具,可以调节射程,炮身寿命长,大型者重1.6吨,射程可以达到1.9公里!应该是这一类武器的极限了。 rn[img=http://www.imagestation.com/picture/sraid206/pee5befc7bdb4a45acb37960818e47703/eef9e2de.jpg][/img]rn十眼铳 rn明代试验性连发武器,10节铜质炮身,口径10厘米,每节一发,可以十次发射,因为射程短,不安全,被后来的拐子铳代替。 rn[img=http://www.imagestation.com/picture/sraid206/p7318ff8e09baf5fbe06fb3ae82a22a11/eef9d1dd.jpg][/img]rn拐子铳 rn带有曲柄的连发火绳枪,长37.5厘米,使用类似佛朗机的装填方式,可以连续三发,射程150米,明朝称为“万胜佛朗机”,在抗日援朝中使用比较多。个人认为有点儿自动手枪的味道。 rn[img=http://www.imagestation.com/picture/sraid206/pcaf2eb5cf04629a67587183e9b232777/eef9e26b.jpg][/img]rn rn 多管转膛炮:迅雷铳 rn单兵多管火器,明代赵士珍发明,参考了土耳其的类似火器,最大的可以达到18管,使用火绳或者燧石击发,加上外罩后状如琵琶。发射完毕后可以作为冷兵器使用。 rn rn[img=http://www.imagestation.com/picture/sraid206/pdcb31c190489ef21eda6e974aca3b812/eef9d189.jpg][/img]rn rn 大口径左轮枪:五雷神机 rn这真是世界最早的左轮枪了,戚继光在北方战线防卫蒙古军队的发明,有三眼,五眼,七眼各种规格,一般使用时二人一组射击,一人支架,转动枪管,一人瞄准射击。射程180米。 rn rn[img=http://www.imagestation.com/picture/sraid206/p380afbd4cb5be22fe5b59a85cebcda0e/eef9d18e.jpg][/img]rn虎蹲炮 rn戚继光军中最常用的火器,这种轻便的火炮跑管薄,射程不远,适用于山地作战,机动灵活,由于前装,可以大仰角发射和大量装备下层部队而与今天的迫击炮有异曲同工的用处。 rn[img=http://www.imagestation.com/picture/sraid206/p88b973905cb21d51d6c9bd3ae245b630/eef9e253.jpg][/img]rn 鸟枪 rn其实并非打鸟之用,而是表示即便轻捷如鸟也难以逃脱,已经接近现代步枪,是和倭寇交战中缴获倭寇火枪,随后改进仿制的,戚继光的步兵,已经40%装备了这种枪。但是到了满清,清军对火器带有某种抵触情绪,到鸦片战争,使用鸟枪的中国军队,反而降到了20%。也有一说,称之为“鸟枪”并不是因为用来打鸟或连飞鸟也无法逃脱,而是因为其枪机衔着火绳落下点燃发火池中的火药的动作犹如小鸟啄食。 rn射程150米,雨天不能使用。 rn[img=http://www.imagestation.com/picture/sraid206/p15f17e88c09e447f5621ec7a1d397d27/eef9d1f1.jpg][/img]rn 抬枪 rn这是大型鸟枪,明代《天工开物》最早记载其图片,带有三角支架和旋转装置,长3米,重12公斤,有效射程200米,外号“九头鸟”,威力强劲,即便当时的战车也无法抵挡。 rn可惜发展比较慢,直到满清末年,湘军中装备抬枪,不过25%而已。 rn [img=http://www.imagestation.com/picture/sraid206/p0370332fef086191ad82c330a4903af6/eef9d1bb.jpg][/img]rn神火飞鸦 rn类似解放战争中攻击黄维兵团的“飞雷”根据其气动布局,感觉不是很适合飞行,估计不会在实战中有多少用处。 rn[img=http://www.imagestation.com/picture/sraid206/p98befdac8aea960e6321949e5048307e/eef9d1e0.jpg][/img]rn
ASP.NET FAQs(二)[zt]
如何在ASPX文件中加注?rn rnrn可否在网页中使用用户定义的.NET数据类型?rn 是的。将包含数据类型的DLL文件放在根目录下的BIN目录,ASP.NET将自动寻找相关类型。rn rn如何调试不是用Studio.NET编写的ASP.NET应用,它不使用背景代码?rn 启动.NET Framework SDK中的DbgClr调试器,打开你的文件,设置中断点。启动ASP.NET应用,转回DbgClr调试器,从工具菜单上选择Debug Processes,再选择aspnet_wp.exe。(如果选择单里没有aspnet_wp.exe,激活"Show system processes"方框)。点击Attach按钮加入aspnet_wp.exe,然后开始调试。rn 注意,在用DbgClr调试前,先要在ASPX文件中设定调试语句。可以在ASPX文件中加入或在Web.config文件中加入,告知ASP.NET建立调试。rn rn在Global.asax中可以加入哪些事件句柄?rn 应用起始和结束句柄:rn Application_Startrn Application_Endrn 交易起始和结束句柄:rn Session_Startrn Session_Endrn 预请求句柄(按调用次序排序):rn Application_BeginRequestrn Application_AuthenticateRequestrn Application_AuthorizeRequestrn Application_ResolveRequestCachern Application_AcquireRequestStatern Application_PreRequestHandlerExecutern Application_PostRequestHandlerExecutern Application_ReleaseRequestStatern Application_UpdateRequestCachern Application_EndRequestrn 非确定的句柄:rn Application_Errorrn Application_Disposedrn rn Global.asax还包含了由HTTP激发的事件句柄。上述句柄都是ASP.NET本身带的。rn rn在非保密频道是否可以临时设置访问许可?rn 是的。只要简单地在网页中设置指示。可在ASPX文件中设置EnableViewStateMac="true"属性或在Web.config文件中设置:。rn 这些设置使用散列表(hash,正式说法是信息确认码:message authentication code, MAC)加密访问权限。ASP.NET发现超权限的访问,将“扔”出错误信息。rn 散列表由一个密钥产生(Machine.config中的元素的validationKey值)散列值。黑客如果不知道密钥就不能攻破访问权限。rn rn是否可在非加密频道加密访问状态?rn 是的。在Web.config中加入:rn rn rn别人在访问我的网页时,是否可能读取我的Web.config或Global.asax文件?rn 不行。Machine.config的部分控制了ASP.NET的环境设置,包括全部的ASAX映象。并用HttpForbiddenHandler句柄指向不许访问的HTTP的文件类型。以下是Machine.config中的有关说明:rn rn rn rn rn rn rnASP.NET的服务端元件是否与Netscape Navigator兼容?rn 大多数是。某些元件,如Label,是简单HTML标记语言,实际上可以支持所有的浏览器。还有些元件,如Calendar,混合使用HTML标记和客户端JavaScript的也行。幸运的是,JavaScript可在任何支持客户脚本的浏览器中使用。例外的是一些验证(validation)元件,它们使用复杂的JavaScript语言,并与浏览器DHTML的文件对象模型(DOM)密切相关。Navigator与IE在使用DOM时有极大差别,ASP.NET的验证元件不能在Navigator下工作。它们可以输入服务端,但不能在Navigator客户端获得验证。rn rnASPX文件中有哪些缺省的重要命名空间?rn 以下是缺省的重要命名空间。其它的命名空间必须用@ Import手工调用。rn Systemrn System.Collectionsrn System.Collections.Specializedrn System.Configurationrn System.Textrn System.Text.RegularExpressionsrn System.Webrn System.Web.Cachingrn System.Web.Securityrn System.Web.SessionStatern System.Web.UIrn System.Web.UI.HtmlControlsrn System.Web.UI.WebControlsrn
比尔盖茨的金玉良言(ZT)
盖茨的十条“金玉良言”rnrn1、社会充满不公平现象。你先不要想去改造它,只能先适应它。(因为你管不了它)。rnrn2、世界不会在意你的自尊,人们看的只是你的成就。在你没有成就以前,切勿过分强调自尊。(因为你越强调自尊,越对你不利)。rnrn3、你只是中学毕业,通常不会成为CEO,直到你把CEO职位拿到手为止。(直到此时,人们才不会介意你只是中学毕业)。rnrn4、当你陷入人为困境时,不要抱怨,你只能默默地吸取教训。(你要悄悄地振作起来,重新奋起)。rnrn5、你要懂得:在没有你之前,你的父母并不像现在这样“乏味”。你应该想到,这是他们为了抚养你所付出的巨大代价。(你永远要感恩和孝敬他们,才是硬道理)。rnrn6、在学校里,你考第几已不是那么重要,但进入社会却不然。不管你去到哪里,都要分等排名。(社会、公司要排名次,是常见的事,要鼓起勇气竞争才对)。rnrn7、学校里有节假日,到公司打工则不然,你几乎不能休息,很少能轻松地过节假日。(否则你职业生涯中一起跑就落后了,甚至会让你永远落后)。rnrn8、在学校,老师会帮助你学习,到公司却不会。如果你认为学校的老师要求你很严格,那是你还没有进入公司打工。因为,如果公司对你不严厉,你就要失业了。(你必须清醒地认识到:公司比学校更要严格要求自己)。rnrn9、人们都喜欢看电视剧,但你不要看,那并不是你的生活。只要在公司工作,你是无暇看电视剧的。(奉劝你不要看,否则你走上看电视连续剧之路,而且看得津津有味,那你将失去成功的资格)。rnrn10、永远不要在背后批评别人,尤其不能批评你的老板无知、刻薄和无能。(因为这样的心态,会使你走上坎坷艰难的成长之路)。rnrn
数据仓库构建步骤 zt
数据仓库构建步骤 rnrn数据仓库是面向主题的、集成的、不可更新的、随时间的变化而不断变化的,这些特点决定了数据仓库的系统设计不能采用同开发传统的OLTP数据库一样的设计方法。 rn数据仓库系统的原始需求不明确,且不断变化与增加,开发者最初不能确切了解到用户的明确而详细的需求,用户所能提供的无非是需求的大的方向以及部分需求,更不能较准确地预见到以后的需求。因此,采用原型法来进行数据仓库的开发是比较合适的,因为原型法的思想是从构建系统的简单的基本框架着手,不断丰富与完善整个系统。但是,数据仓库的设计开发又不同于一般意义上的原型法,数据仓库的设计是数据驱动的。这是因为数据仓库是在现存数据库系统基础上进行开发,它着眼于有效地抽取、综合、集成和挖掘已有数据库的数据资源,服务于企业高层领导管理决策分析的需要。但需要说明的是,数据仓库系统开发是一个经过不断循环、反馈而使系统不断增长与完善的过程,这也是原型法区别于系统生命周期法的主要特点。因此,在数据仓库的开发的整个过程中,自始至终要求决策人员和开发者的共同参与和密切协作,要求保持灵活的头脑,不做或尽量少做无效工作或重复工作。 rn数据仓库的设计大体上可以分为以下几个步骤: rnl 概念模型设计; rnl 技术准备工作; rnl 逻辑模型设计; rnl 物理模型设计; rnl 数据仓库生成; rnl 数据仓库运行与维护。 rn下面我们六个主要设计步骤为主线,介绍在各个设计步骤中设计的基本内容。 rn第一节 概念模型设计rn进行概念模型设计所要完成的工作是: rn界定系统边界 rn确定主要的主题域及其内容 rn概念模型设计的成果是,在原有的数据库的基础上建立了一个较为稳固的概念模型。因为数据仓库是对原有数据库系统中的数据进行集成和重组而形成的数据集合,所以数据仓库的概念模型设计,首先要对原有数据库系统加以分析理解,看在原有的数据库系统中“有什么”、“怎样组织的”和“如何分布的”等,然后再来考虑应当如何建立数据仓库系统的概念模型。一方面,通过原有的数据库的设计文档以及在数据字典中的数据库关系模式,可以对企业现有的数据库中的内容有一个完整而清晰的认识;另一方面,数据仓库的概念模型是面向企业全局建立的,它为集成来自各个面向应用的数据库的数据提供了统一的概念视图。 rn概念模型的设计是在较高的抽象层次上的设计,因此建立概念模型时不用考虑具体技术条件的限制。 rn1. 界定系统的边界 rn数据仓库是面向决策分析的数据库,我们无法在数据仓库设计的最初就得到详细而明确的需求,但是一些基本的方向性的需求还是摆在了设计人员的面前: rnl 要做的决策类型有哪些? rnl 决策者感兴趣的是什么问题? rnl 这些问题需要什么样的信息? rnl 要得到这些信息需要包含原有数据库系统的哪些部分的数据? rn这样,我们可以划定一个当前的大致的系统边界,集中精力进行最需要的部分的开发。因而,从某种意义上讲,界定系统边界的工作也可以看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。 rn2. 确定主要的主题域 rn在这一步中,要确定系统所包含的主题域,然后对每个主题域的内容进行较明确的描述,描述的内容包括: rnl 主题域的公共码键; rnl 主题域之间的联系; rnl 充分代表主题的属性组。 rn第二节 技术准备工作rn这一阶段的工作包括:技术评估,技术环境准备。 rn这一阶段的成果是:技术评估报告、软硬件配置方案、系统(软、硬件)总体设计方案。管理数据仓库的技术要求与管理操作型环境中的数据与处理的技术要求区别很大,两者所考虑的方面也不同。我们之所以在一般情况下总是将分析型数据与操作型数据分离开来,将分析型数据单独集中存放,也就是用数据仓库来存放,技术要求上的差异是一个重要原因。 rn1. 技术评估 rn进行技术评估,就是确定数据仓库的各项性能指标。一般情况下,需要在这一步里确定的性能指标包括: rnl 管理大数据量数据的能力; rnl 进行灵活数据存取的能力; rnl 根据数据模型重组数据的能力; rnrnrnrn l 透明的数据发送和接收能力; rnl 周期性成批装载数据的能力; rnl 可设定完成时间的作业管理能力。 rn2. 技术环境准备 rn一旦数据仓库的体系化结构的模型大体建好后,下一步的工作就是确定我们应该怎样来装配这个体系化结构模型,主要是确定对软硬件配置的要求;我们主要考虑相关的问题: rnl 预期在数据仓库上分析处理的数据量有多大? rnl 如何减少或减轻竞争性存取程序的冲突? rnl 数据仓库的数据量有多大? rnl 进出数据仓库的数据通信量有多大?等等。 rn根据这些考虑,我们就可以确定各项软硬件的配备要求,并且在这一步工作结束时各项技术准备工作应已就绪,可以装载数据了。这些配备有: rnl 直接存取设备(DASD); rnl 网络; rnl 管理直接存取设备(DASD)的操作系统; rnl 进出数据仓库的界面(主要是数据查询和分析工具); rn管理数据仓库的软件,目前即选用数据库管理系统及有关的选件,购买的DBMS产品不能满足管理数据仓库需要的,还应考虑自己或软件集成商开发有关模块等等。 rn第三节 逻辑模型设计rn在这一步里进行的工作主要有: rnl 分析主题域,确定当前要装载的主题; rnl 确定粒度层次划分; rnl 确定数据分割策略; rnl 关系模式定义; rnl 记录系统定义 rn逻辑模型设计的成果是,对每个当前要装载的主题的逻辑实现进行定义,并将相关内容记录在数据仓库的元数据中,包括: rnl 适当的粒度划分; rnl 合理的数据分割策略; rnl 适当的表划分; rnl 定义合适的数据来源等。 rn1. 分析主题域 rn在概念模型设计中,我们确定了几个基本的主题域,但是,数据仓库的设计方法是一个逐步求精的过程,在进行设计时,一般是一次一个主题或一次若干个主题地逐步完成的。所以,我们必须对概念模型设计步骤中确定的几个基本主题域进行分析,并选择首先要实施的主题域。选择第一个主题域所要考虑的是它要足够大,以便使得该主题域能建设成为一个可应用的系统;它还要足够小,以便于开发和较快地实施。如果所选择的主题域很大并且很复杂,我们甚至可以针对它的一个有意义的子集来进行开发。在每一次的反馈过程中,都要进行主题域的分析。 rn2. 粒度层次划分rn数据仓库逻辑设计中要解决的一个重要问题是决定数据仓库的粒度划分层次,粒度层次划分适当与否直接影响到数据仓库中的数据量和所适合的查询类型。确定数据仓库的粒度划分,可以使用在粒度划分一节中介绍的方法,通过估算数据行数和所需的DASD数,来确定是采用单一粒度还是多重粒度,以及粒度划分的层次。 rn3. 确定数据分割策略 rn在这一步里,要选择适当的数据分割的标准,一般要考虑以下几方面因素:数据量(而非记录行数)、数据分析处理的实际情况、简单易行以及粒度划分策略等。数据量的大小是决定是否进行数据分割和如何分割的主要因素;数据分析处理的要求是选择数据分割标准的一个主要依据,因为数据分割是跟数据分析处理的对象紧密联系的;我们还要考虑到所选择的数据分割标准应是自然的、易于实施的:同时也要考虑数据分割的标准与粒度划分层次是适应的。 rn4. 关系模式定义 rn数据仓库的每个主题都是由多个表来实现的,这些表之间依靠主题的公共码键联系在一起,形成一个完整的主题。在概念模型设计时,我们就确定了数据仓库的基本主题,并对每个主题的公共码键、基本内容等做了描述在这一步里,我们将要对选定的当前实施的主题进行模式划分,形成多个表,并确定各个表的关系模式。rnrnrnrn 第四节 物理模型设计rn这一步所做的工作是确定数据的存储结构,确定索引策略,确定数据存放位置,确定存储分配。 rn确定数据仓库实现的物理模型,要求设计人员必须做到以下几方面: rnl 要全面了解所选用的数据库管理系统,特别是存储结构和存取方法。 rnl 了解数据环境、数据的使用频度、使用方式、数据规模以及响应时间要求等,这些是对时间和空间效率进行平衡和优化的重要依据。 rnl 了解外部存储设备的特性,如分块原则,块大小的规定,设备的I/O特性等。 rn1. 确定数据的存储结构 rn一个数据库管理系统往往都提供多种存储结构供设计人员选用,不同的存储结构有不同的实现方式,各有各的适用范围和优缺点,设计人员在选择合适的存储结构时应该权衡三个方面的主要因素:存取时间、存储空间利用率和维护代价。 rn2. 确定索引策略 rn数据仓库的数据量很大,因而需要对数据的存取路径进行仔细的设计和选择。由于数据仓库的数据都是不常更新的,因而可以设计多种多样的索引结构来提高数据存取效率。 rn在数据仓库中,设计人员可以考虑对各个数据存储建立专用的、复杂的索引,以获得最高的存取效率,因为在数据仓库中的数据是不常更新的,也就是说每个数据存储是稳定的,因而虽然建立专用的、复杂的索引有一定的代价,但一旦建立就几乎不需维护索引的代价。 rn3. 确定数据存放位置 rn我们说过,同一个主题的数据并不要求存放在相同的介质上。在物理设计时,我们常常要按数据的重要程度、使用频率以及对响应时间的要求进行分类,并将不同类的数据分别存储在不同的存储设备中。重要程度高、经常存取并对响应时间要求高的数据就存放在高速存储设备上,如硬盘;存取频率低或对存取响应时间要求低的数据则可以放在低速存储设备上,如磁盘或磁带。 rn数据存放位置的确定还要考虑到其它一些方法,如:决定是否进行合并表;是否对一些经常性的应用建立数据序列;对常用的、不常修改的表或属性是否冗余存储。如果采用了这些技术,就要记入元数据。 rn4. 确定存储分配 rn许多数据库管理系统提供了一些存储分配的参数供设计者进行物理优化处理,如:块的尺寸、缓冲区的大小和个数等等,它们都要在物理设计时确定。这同创建数据库系统时的考虑是一样的。 rn第五节 数据仓库的生成rn在这一步里所要做的工作是接口编程,数据装入。 rn这一步工作的成果是,数据已经装入到数据仓库中,可以在其上建立数据仓库的应用,即DSS应用。 rn1. 设计接口 rn
ZT,需求与流程无关
推荐一下,对需求定义得很好,需求是5W(why/what/when/where/who)的轮廓(outline or portrait),功能是1h(how)!click.(Q:概要设计与详细设计的临界线?)   简单说就是: 需求-->用例-->(SoC)领域对象(直接-间接)-->(SoC)方法功能-->模式-->编程实现-->部署。说到底是归纳对象(...
java 线程同步例子(zt)
package test_1; public class BigSmallMonk { public static void main(String[] args) { WaterIntake Omonk=new WaterIntake(); ...
论坛无限分类的实现原理(zt
在MYSQL中,数据表大致上是 CREATE TABLE Table_Types ( id INTEGER NOT NULL AUTO_INCREMENT , parent_id INTEGER, node VARCHAR(255), PRIMARY KEY (id) ) 如上图,紫色的是数据记录的ID号,框内的数字是每条记录的 node字段,记录了该记录的父ID和父ID的父I...
ORTP协议栈【ZT】
网上开源的RTP库普遍采用C++编写,主要有CCRtp库和JRtplib库,这两个库baidu搜索jrtplib量非常大,感觉国内大部分采用 JRtplib 而用google搜索CCRtp比较多,但是jrtplib也不少。还有oRTP以c 作为编程语言, 多媒体处理可以直接采用ffserver中的处理,非常简单。Mplayer中使用Live555库。 以前练习时用过jrtplib,现在的项目使用...
关于“微软思维”(zt)
“微软思维”是我创造出来的,我不是用来贬低微软或其它什么目的,只是用来表达长期以来中国程序员接受微软体系灌输后造成的一种状态。rnrn“微软思维”表现有下列特征:rn1. 程序员表现是:懒、等、靠rn懒于学习微软以外的东西,或者新思想;“等”就是等着微软产品来喂;“靠”当然就是靠着微软吃饭。这样下去,最终会毁了自己,以前吃大锅饭时,很多工人都是这样,结果,最后下岗的是自己。rnrn相机刚刚出来时,不是人人会拍,所以拍照我们要到照相馆,有了傻瓜相机后,除非所谓艺术照,我们已经不需要照相馆了。rnrn很多软件公司应标方案几乎是微软产品说明书,这样造成的后果是什么?最终客户会发生疑问:需要要你中间者做什么?rnrn2. 项目表现是:使用先进简易的工具,开发出落后思维的系统rn很抱歉,我使用落后不是为了攻击谁,但是确实这样的系统最终残害了软件业本身,看看那么多源代码下载网站,触目惊心的各种各样基于微软体系的源代码,这些源代码可能会满足客户一时之需,但是它是企业系统的“木马病毒”,Windows已经把它自身顽疾的“木马病毒”转移到了中国企业信息系统中,危害之大,这是几个金山毒霸能够防治的吗?rnrnrn3. 程序员最终症状是:固执,思维奴役化,麻木,丧失自我。rn在技术由于追随微软多年,技术上固步自封,在微软.NET没有推出或推出过程中,不学习Java/Linux其它知识,等待.NET将方便快速的工具送上门来,进而贻误软件公司技术定位时间,从而可能导致公司在竞争中失败。rnrn思维奴役化,麻木,这些就不多说了,有攻击和谈论政治之嫌疑,不过这确实是技术路线政治。rnrn丧失自我主要表现是:不会自主选择了,有机会接触到Java时,完全没有了主意,到处打听有没有包办一起的完美技术,当发现Java技术总是有弱点时,表现迟疑,拿不定主意,无法把握事物的主要点和次要点。当然,这样的程序员在技术上表现为无主见,在现实生活中也可能是这样,请注意,不要以为很固执,喜欢顶牛的人就是有主见,我认为那是最没有主心骨的表现。rnC#除了VS.NET能做什么?rnrn转贴rnrn
[zt]ORACLE数据库的逻辑备份
ORACLE数据库有两类备份方法。第一类为物理备份,该方法实现数据库的完整恢复,但数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且需要极大的外部rn存储设备,例如磁带库;第二类备份方式为逻辑备份,业务数据库采用此种方式,此方rn法不需要数据库运行在归挡模式下,不但备份简单,而且可以不需要外部存储设备。rn数据库逻辑备份方法rnORACLE数据库的逻辑备份分为三种模式:表备份、用户备份和完全备份。rn表模式rn备份某个用户模式下指定的对象(表)。业务数据库通常采用这种备份方式。rn若备份到本地文件,使用如下命令:rnexp icdmain/icd rows=y indexes=n compress=n buffer=65536rnfeedback=100000 volsize=0rnfile=exp_icdmain_csd_yyyymmdd.dmprnlog=exp_icdmain_csd_yyyymmdd.logrntables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinforn若直接备份到磁带设备,使用如下命令:rnexp icdmain/icd rows=y indexes=n compress=n buffer=65536rnfeedback=100000 volsize=0rnfile=/dev/rmt0rnlog=exp_icdmain_csd_yyyymmdd.logrntables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinforn注:在磁盘空间允许的情况下,应先备份到本地服务器,然后再拷贝到磁带。出于速度rn方面的考虑,尽量不要直接备份到磁带设备。rn用户模式rn备份某个用户模式下的所有对象。业务数据库通常采用这种备份方式。rn若备份到本地文件,使用如下命令:rnexp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536rnfeedback=100000 volsize=0rnfile=exp_icdmain_yyyymmdd.dmprnlog=exp_icdmain_yyyymmdd.logrn若直接备份到磁带设备,使用如下命令:rnexp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536rnfeedback=100000 volsize=0rnfile=/dev/rmt0rnlog=exp_icdmain_yyyymmdd.logrn注:如果磁盘有空间,建议备份到磁盘,然后再拷贝到磁带。如果数据库数据量较小,rn可采用这种办法备份。rn完全模式rn备份完整的数据库。业务数据库不采用这种备份方式。备份命令为:rnexp icdmain/icd rows=y indexes=n compress=n buffer=65536rnfeedback=100000 volsize=0 full=yrnfile=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)rnlog=exp_fulldb_yyyymmdd.logrn对于数据库备份,建议采用增量备份,即只备份上一次备份以来更改的数据。增量备份rn命令:rnexp icdmain/icd rows=y indexes=n compress=n buffer=65536rnfeedback=100000 volsize=0 full=y inctype=incrementalrnfile=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)rnlog=exp_fulldb_yyyymmdd.logrn注:关于增量备份必须满足下列条件:rn1.rn只对完整数据库备份有效,且第一次需要full=y参数,以后需要inctype=incrementrnal参数。rn2. 用户必须有EXP_FULL_DATABASE的系统角色。rn3. 话务量较小时方可采用数据库备份。rn4. 如果磁盘有空间,建议备份到磁盘,然后再备份到磁带。rn业务数据库备份方法及周期rn用EXP进行备份前,先在SYS用户下运行CATEXP.SQL文件(如果以前已运行该文件,则不rn要执行这个脚本)。rn没有特殊说明,不允许在客户端执行备份命令。rn备份命令参照表模式下的备份命令。rn从磁盘文件备份到磁带rn如果首先备份到本地磁盘文件,则需要转储到磁带设备上。rn1. 若需查看主机上配置的磁带设备,使用如下命令:rnlsdev -Cc tapern显示的结果如下例所示:rnrmt0 Available 30-58-00-2,0 SCSI 4mm Tape Drivernrmt1 Defined  30-58-00-0,0 SCSI 4mm Tape Drivern标明Available的设备是可用的磁带设备。rn2. 若需查看磁带存储的内容,使用如下命令:rntar -tvf /dev/rmt0rn显示的结果如下例所示:rn-rw-r--r-- 300 400 8089600 Jan 11 14:33:57 2001 exp_icdmain_20010111.dmprn如果显示类似如下内容,则表示该磁带存储的备份数据是从数据库直接备份到磁带上,rn而非从本地磁盘转储到磁带的备份文件,因此操作系统无法识别。rntar: 0511-193 An error occurred while reading from the media.rnThere is an input or output error.rn或rntar: 0511-169 A directory checksum error on media; -267331077 not equal torn2rn5626.rn3. 对于新磁带或无需保留现存数据的磁带,使用如下命令:rntar -cvf /dev/rmt0 exp_icdmain_yyyymmdd.dmprn注:A. 该命令将无条件覆盖磁带上的现存数据。rn  B. 文件名不允许包含路径信息,如:/backup/exp_icdmain_yyyymmdd.dmp。rn4. 对于需要保留现存数据的磁带,使用如下命令:rntar -rvf /dev/rmt0 exp_icdmain_yyyymmdd.dmprn注:该命令将文件exp_icdmain_yyyymmdd.dmp追加到磁带的末端,不会覆盖现存的数据rn。rn特别强调:如果备份时是从数据库直接备份到磁带上,则不可再向该磁带上追加复制任rn何其他文件,否则该备份数据失效。rn5. 若需将转储到磁带上的备份文件复制到本地硬盘,使用如下命令:rnA. 将磁带上的全部文件复制到本地硬盘的当前目录rntar -xvf /dev/rmt0rnB. 将磁带上的指定文件复制到本地硬盘的当前目录rntar -xvf /dev/rmt0 exp_icdmain_yyyymmdd.dmprn备份时间安排rn由于备份时对系统I/O有较大影响,所以,建议在晚上11点以后进行备份工作。rn业务数据库Oracle版本的恢复rn恢复方案需根据备份方案确定。由于业务数据库采用表备份和用户备份相结合的方案,rn所以业务数据库的恢复需根据实际情况采用表恢复和用户恢复相结合的方案。rn恢复方案rn数据库的逻辑恢复分为表恢复、用户恢复、完全恢复三种模式。rn
[ZT]一个时代的消失
原文BLOG:http://cnxiaohai.yculblog.com/post.2566467754.htmlrnrn  一直没有找到《神鹰突击队》,不知道这是一款什么样子的游戏,我就不加以推测了。前两天和游戏业内资深人士天枫哥哥在MSN上聊天的时候,天枫哥哥跟我说,这款游戏本身也只能算是半成品。不过这个名字一直有一个特殊的意义,第一款国产PC游戏。似乎这个意义远远大于他是否成功,他是否好玩。这大概是1995年的事情了。rnrn  而这之后,我开始接触游戏……rnrn  我觉得我是碰上好时候了。那个时代是单机游戏爆炸的一个时代,国产游戏也是从那个时代开始的,虽然已经晚于国外很多年了。97年的春天,我一直沉浸在《大航海时代II》的碧波荡漾中,到了4月末,《剑侠情缘》来了……rnrn  《剑侠情缘》的两张CD很有意思,一张CD里面只有46M的数据文件,一对未知格式的文件,和一个SETUP.EXE,而另外一张CD是一张纯音乐盘,23首电声合成乐,风格主要是丝竹,还有两首歌曲《笑问情缘》《满江红》。用我现在的角度看,金山这纯粹为的是加大盗版的成本。当时的游戏根本没有必要用CD品质的背景音乐,更没有必要用两张盘。rnrn  在SETUP完毕之后,我开始了“剑侠”之旅。独孤剑,张琳心,杨瑛,张如梦,南宫彩虹……我第一次如此的投入于一个虚幻的世界。直到今天,我仍然能把《剑侠情缘》的故事不加思索的从头到尾的说出来。甚至小叫花子的一个字谜“伍子胥财宝丢光,孙仲谋痛失江山;两个人结成伴当,直吵得地覆天翻。”我至今还拿来考问朋友。八个结局,当时还精通S/L大法的我只能一遍一遍的去走着剧情——当然,也不知道去找功略,当时也没有INTERNET——在来回玩了五次之后,我总于找到了传说中的大结局,救出了岳飞,直捣黄龙。此时距我拿到光盘,只有十天。rnrn  对国产游戏的兴趣爆棚了,我开始相信中国人用了不到2年的时间,在游戏制作水品上已经接近了国际水准。至少已经能和台湾省的游戏制作水准相提并论了。再用不了几年,我们再也不用去期待一款欧美游戏的汉化版了。rnrn  在这种爆棚的信心中,我开始期待下一个国产游戏。rnrn  但我等来了《血狮》……rnrn  我不想再评价什么,无止境的漫骂已经让《血狮》成为了“血狗”。我还是有些话想说说,《血狮》是我购买的第一款正版游戏,我是四万人中的一个员。我没有退货,我是一万八千人中的一员。我不知道那一万七千九百九十九人为什么不退货。我只是想留个纪念。我当是还不能确定我是不会从事软件开发这个行业,但我当时已经再编程上有了一些小小的成就了。从我当时的角度去看,我就告诉我身边的人,《血狮》的算法上有问题。这当然是指的小兵不听指挥,坦克穿墙这些现象来说的。但现在让我再来看,我觉得《血狮》已经不仅仅是一个失败的游戏,他里面蕴涵了太多的内容。rnrn  这段时间我忽然有一个想法,如果我做游戏,我做什么?《血狮II》。我没有做过什么分析,可能这只是一个有过那段经历的人的情结。为了纪念过往的岁月,为了纪念一个时代。这个时代来的太快,这个时代走的太快。rnrn  从《血狮》之后,在主流媒体上,再也没有什么对“国产游戏”的正面报道了。而所有玩家都似乎失去了理智。“国产游戏”被他们打上一个tag,就是“烂”。似乎所有难听的话用在国产游戏上都不为过。我承认,是《血狮》让我们失望了,但也是我们让国产游戏失望了。之后的日子里,西山居,目标,前导,甚至尚洋都出过优秀的作品。但当时的人归于过正确的评价吗?虽然有的人现在开始回忆起来,会用一些好的词汇了,但当时你在哪里?rnrn  西山居的《抗日——地雷战》,在战棋游戏中加入“地雷”元素,大大的扩充了游戏的未知性,和探索性。在对彪匪夷所思的魔法的战棋游戏世界中,这是一个极大的突破。而当时的人是怎么评价的呢?似乎人物呆滞,过场画面单一已经足够他们漫骂的了。rnrn  前导的《赤壁》,只要玩过的人都可以想想“城内战”这个概念之前的游戏那个有?在光荣的《三国志》系列到了千禧年之后才开始有了两次战斗的概念。这难道不是前导的贡献吗?可是在《赤壁》之后,前导消失了……rnrn  目标的《铁甲风暴》,我认为这是一款叫好不叫座的游戏。E3的光环,被“国产游戏”的帽子掩盖了,当时我一直觉得《铁甲风暴》会是一直强心剂,但事实证明我错了。国产游戏从那时开始淡出了,虽然目标之后还有《秦殇》这样的大作,但结局都是惨淡的。rnrn  尚洋同样也挣扎过《烈火文明》,这是一款绝对的好游戏。但所有人都拿他来和FF8向比,游戏类型是相同的,但这样的比较本身就是不客观的。SQUARE是一个有着多少年历史的游戏帝国,尚洋呢?当时的PC平台能和PS平台相比吗?但这些因素都不能为堵住“骂客”们嘴。他们只想骂。在吴刚的回忆录中,有这个一段“在CG放完后,灯慢慢的亮起来的时候,全场一片掌声,当时我开始明白,那五秒钟是我们的一切的委屈、一切的痛苦的补偿。而对我来说,他是结束的五秒钟,认认真真的竭尽的全力3年结束的5秒钟。”。我感动了。但吴刚还是在《烈火文明》发布之后被骂的离开了尚洋这个他一手创立的公司。尚洋也从此消失了……rnrn  时间进入了2000年,国产游戏再也没有成为任何人讨论的话题。只是时不时的出来一个所谓的业内人士发表一片什么“路在何方”的文章。我可以负责任的说一句,国产游戏的现状有一部分的原因时这些所谓的业内人士,这些“骂客”造成的。一个襁褓中的婴儿,就这样被扼杀了。我承认,初期的“骂客”他们是爱游戏的人。但他们在评价一款游戏的时候却丧失了最基本的客观条件。设想一下,如果在《血狮》之后没有如此大规模的口诛笔伐,尚洋会怎么样?我相信一个负责任的软件开发者,他们自己是很清楚软件中的问题的,我相信他们是会解决的。这样国产游戏的大环境是不是就温和了一些了?这就如同教育孩子一样,父亲不能因为孩子小时候打碎了你心爱的茶杯就把孩子杀死一样。父亲没有杀死孩子,因为父亲知道孩子还小,需要循循善诱的教育。我们的国产游戏同样如此,但那些循循善诱的父亲们却忘记了这一点。rnrn  国产游戏的时代过去了……他还会来临吗?rnrn  PS:最后我有一个心愿,我想认识一下如下的几个游戏业的前辈rn    吴刚:尚洋的创始人,《血狮》《烈火文明》的策划。rn    裘新:西山居工作室的第一代开发人员,《剑侠情缘》的主程序。rn    刘刚:前导的开发人员,《赤壁》的主程序。rnrnrn
[ZT]UIView的剖析!
http://blog.csdn.net/mengtnt/article/details/6716289 前面说过UIViewController,但是UIView也是在MVC中非常重要的一层 。正是因为UIView是Iphone下所有界面的基础,所以官方专门写了一个文档“View Programming Guide for iOS”。通过这个可以很好的了解UIView的功能。      ...
Javascript与CSS在IE和Firefox中的误区及区别
[b][size=medium]Javascript中的常见问题[/size][/b] [b]1. 集合类对象问题[/b] 现有代码中许多集合类对象取用时使用 (),IE 能接受,Firefox 不能。 解决方法:改用 [] 作为下标运算。如:document.forms("formName") 改为 [code="js"]document.forms["formName"]; //...
路由器UPNP及端口映射(ZT)
首先需要进入路由器的Web控制界面中打开路由器的UPnP功能。默认都是关闭的。点击“转发规则”,点击“upnp设置”,并将其设置为 “启动” 。 之后进入Windows XP的设置:在Windows XP中,UPnP支持并不是默认安装的。1. 点击“添加/删除Windows组件”。 2. 在“Windows组件向导”中,点击“网络服务”,点击“详细”,然后选择“UPnP 用户界面”复选框...
ZT: 软件开发高手:十年磨一剑
要成为武林高手,需要长时间的勤学苦练。要成为软件开发高手,又需要多长时间呢?《Modern C++ Design》的作者Andrei Alexandrescu认为:一个人有可能在20几岁就成为编程高手,但要成为设计高手却需要熬到35岁左右。以23岁大学毕业计算,要经过漫长的12年时间。rnrn rnrn以我个人为例(我尚不敢自认是设计高手),22岁大学毕业后,在某研究所用8086汇编语言写一些小规模的程序,颇觉得心应手。凡是能用流传图表示的问题,都似乎不在话下。工作中,与同事共同切磋结构化程序设计,并能有意识地用于实践中。rnrn rnrn三年后,承接一个纵向课题:在Windows上开发一个交互式排版系统。用Windows SDK开发。兴奋之余,自然想起用结构化方法进行设计:把整个系统当成一个黑盒子(black box),输出当然是排版结果,不管是什么格式,输入是···。我卡住了。难道用户操作是输入吗?但用户操作有那么多,怎么表示呢?系统的数据流图该怎么画?数据字典该怎么写?和同事讨论n次后,仍不得其解。懊丧之余,先模仿Quark Express搭个界面吧。然后研究排版算法。程序结构经过至少三次大规模修改,终于能排出一些版式,并在两年后通过了鉴定(鉴定后当然是将其束之高阁)。我从中体会到结构化开发方法不适合开发交互式系统。在开发初期,你不太可能正确地画出数据流图,而结构化设计方法完全依赖数据流图。数据流图发生改变,整个程序结构就要随之改变。rnrn rnrn后来,加入一家合资公司,担任开发组长,有五、六个组员。这时我已读过了邵维忠等译的《面向对象的分析》、杨芙清等编译的《面向对象的设计》和《Code Complete》中译本。对面向对象的程序设计虽有所了解但仍是一知半解。rnrn rnrn首先,我们用MSVC 1.5开发一个图形编辑软件。我用纸画了20几张对象图,与同事讨论通过后,开始编程。有人负责数据模型,有人负责用户界面,有人负责图形显示。几个月后,老板已可向潜在用户进行展示,反应良好。老板和开发人员都被一种兴奋的心情笼罩着。我们不断地加新功能,老板不时地到展览会上做演示。功能加齐了,开始让潜在用户试用。老板和我们都松了一口气:就剩下改错了,咱们是兵来将挡、水来土屯,没什么可怕的。错误报告来了。我们信心满满地开始查错改错。有些错误很快地被改掉了。但最后我们发现错误源源不断。改了一个错误有可能引起别的错误。软件永远达不到能用的地步。最后,时机被错过。该软件不得不被砍掉。懊丧之余,我们做了反省。大家都认为应尽早改错。同时模模糊糊地觉得数据模型和用户界面的程序一定要严格分开,否则程序极难修改。rnrn rnrn后来,我们又开发一个类似Adobe Acrobat Exchange的PDF文件浏览器兼编辑器(当时Acrobat Exchange还不能显示中、日、韩文)。这时,老板带来一些过期的《C/C++ Users’ Journal》《Dr. Dobbs’ Journal》杂志。从书评中,我被几本书吸引住了。一本是James Rumbough等著的《Object-Oriented Modeling and Design》,一本是现在大名鼎鼎的《Design Patterns》,还有就是Scott Meyers著的《Effective C++》和《More Effective C++》。我劝说老板买了这几本书,并撺掇他买了一个CASE(计算机辅助软件工程)工具:Select OMT。rnrn rnrn仔细研读这几本书后,颇有顿开茅塞之感。最大的收获在于了解到降低类之间耦合度的重要性。一个类的实现细节发生变化,不应该影响使用该类的其它类的内部实现。更妙的是有不少Design Pattern能马上用到我们的软件中。rnrn rnrn我用Select OMT软件画了一些高层的类图、状态图和数据流图等,并让同事们审查。同事们都觉得通过这些图对软件的总体设计有了更好的把握。在写程序的过程中,我们不断调整程序结构以尽可能减小类之间的耦合度。老板很早就安排了专职测试人员。发现问题,马上修改。一年后,我们的软件终于通过了用户的试用,卖出去了。当时,我可说是信心满满。rnrn rnrn此后,我做了一年半多媒体编程。发现还是对系统开发更感兴趣。于是加入了Quark软件公司,开发一个基于CORBA的文件管理系统。这是我第一次参与异地开发,也是第一次大规模使用STL。我惊叹于STL设计之妙,同时也对自己的信心打了折扣。此后,我阅读了Martin Fowler著的《UML Distilled》、Bertrand Meyer著的《Object Oriented Software Construction》等书籍。并开始使用Rational Rose。Quark公司的技术文档管理、设计复查、代码复查、质量管理以及德国人(Quark公司德国分公司)严谨的工作态度都给我留下了深刻印象。rnrn rnrn项目组下分开发组和测试组。开发组中有一个4到5人组成的设计小组负责软件总体设计,其中一个人负责技术文档,确保文档反映最新的设计。定期进行设计复查。复查时,项目组成员全部参加,并可提出问题或建议。得出结论后,马上付诸实施。rnrn rnrn开发组下又设若干小组。小组内定期进行代码复查。由组长选出每个组员的源文件,交其他组员复查,尽量挑出所有的毛病。如果代码太次,要打回从新写过。代码复查既能保证软件质量,又是大家学习的一个机会。rnrn rnrn一年半后,我离开Quark,加盟Sybase,参与PowerBuilder的维护和新版本的开发。这是我第一次参与软件维护,令我认识到软件维护的重要性,认识到编写可维护的代码是软件开发的一个重要课题。Sybase系统化的质量跟踪系统和用户支援系统让我获益匪浅。在此期间,我阅读了《Large-scale Software Development in C++》、Martin Fowler著的《Refectoring》、Andrei Alexandrescu著的《Modern C++ Design》,Herb Sutter著的《Exceptional C++》和《More exceptional C++》,以及Kent Beck著的《Extreme Programming Explained》等书籍。对软件开发与维护有了进一步了解,但同时也更认识到软件开发之难。rnrn rnrn回想十几年蹒跚走过的路,好像也略有所悟。试总结出以供参考:rnrn1) 要熟练掌握至少一种编程语言。我觉得最好是C++。掌握了C++,学习其它语言如Java或C#等并非难事,因为各种面向对象的程序语言尽管在语法上可能有很大区别,在语义上却大同小异。rnrn2) 不要寄希望于一次就把软件设计好。在开发初期,要尽量用最简单的设计实现最基本的功能,以使你的软件尽早地能实际运行,不要过于拘泥于细节。这样你才能尽早得到反馈,才能更直观更全面地理解你所面对的问题。你所关注的重点应依次是Make it work, make it right, make it fast。rnrn3) 软件结构要分块分层。低层模块不要依赖于上层模块。一个类、一个接口或一个函数都应只做一件事。没有本质联系的类或接口就不应有耦合关系。举例而言,要用MVC(Model View Controller)Design Pattern切断用户界面与数据模型之间的直接关联。rnrn4) 软件设计的主要工作是给类分配责任(responsibilities)。尽量不要把类设计成控制者(controller),而要设计成协调者(coordinator)。控制者凡事自己做,协调者让别人做。控制者的逻辑往往很复杂,难于维护;协调者逻辑简单,易于维护。要站在类的使用者角度设计类的外部行为。要讲究一点软件美学,即简单、清晰、一致、平衡等。rnrn5) 了解并运用UML、Design Patterns、Unit Test、Design by Contract等。rnrn6) 使用代码管理系统和质量跟踪系统。rnrn7) 了解各种软件开发过程控制方法,并找出适合你的方法。rnrn8) 阅读经典书籍,研读经典代码,订阅杂志,与同行切磋。rnrn rnrn在这行越久越觉得软件开发难。软件开发历史还很短,才50年,还不是一门系统化的学科。有些人甚至认为软件设计与编程是一门艺术。但软件艺术大师还太少,而且我们很难直接欣赏到他们的杰作,除非所有的设计文档和代码都公开。软件更容易藏污纳垢。一个用户界面很漂亮的软件,内部设计和代码却很可能臭不可闻。一个地板倾斜、墙壁裂缝、屋顶漏水的房子没有人会买。一个设计很烂的软件却可能卖得不错。但这样的软件能撑多久呢?rnrn rnrn软件设计与编程已经很难,而这仅仅是软件开发的一个方面,软件开发过程控制也很难,也许更难。成为软件开发高手要走一条漫长的路,何日才能仗剑走天涯?rn rnrn
zt】web学习day01
[size=medium][color=red]1、javascript是什么?[/color] 是由网景公司开发的一种用来操作浏览器,操作 网页(对网页进行动态的交互,实现动态的效果)的 一种脚本语言。由浏览器来解释执行。 [color=red]2、javascript的组成部分[/color] 1)ECMAScript 由ECMA组织制订的一个脚本语言的规范,该规范 ...
Java 线程的中断(zt
假如我们有一个任务如下,交给一个Java线程来执行,如何才能保证调用interrupt()来中断它呢? Java代码 class ATask implements Runnable{         private double d = 0.0;              public void run() {           //死循环执行打印"I am running!" 和做消耗时间的浮...
ZT管理员破解申请表
中控科技考勤机 管理员密码因员工离职或遗忘 忘记UF100考勤机管理密码 可申请破解找回
提问的智慧(ZT)
我曾经发贴子推荐过这篇文章,并打算将其翻译成中文,今天竟然意外的看到了中文版,再次贴出了!rn提问的智慧rnCopyright (C) 2001 by Eric S. Raymondrn中文版Copyleft 2001 by D.H.Grand(nOBODY/Ginux)rnrn英文版:http://www.tuxedo.org/~esr/faqs/smart-questions.htmlrn感谢Eric的耐心指点和同意,本文才得以完成并发布,本指南英文版版权为EricrnSteven Raymond所有,中文版版权由D.H.Grand[nOBODY/Ginux]所有。在黑客世界里,当提出一个技术问题时,你能得到怎样的回答?这取决于挖出答案rn的难度,同样取决于你提问的方法。本指南旨在帮助你提高发问技巧,以获取你最rn想要的答案。rnrnrn首先你必须明白,黑客们只偏爱艰巨的任务,或者能激发他们思维的好问题。如若rn不然,我们还来干吗?如果你有值得我们反复咀嚼玩味的好问题,我们自会对你感rn激不尽。好问题是激励,是厚礼,可以提高我们的理解力,而且通常会暴露我们以rn前从没意识到或者思考过的问题。对黑客而言,“问得好!”是发自内心的大力称rn赞。rnrn尽管黑客们有蔑视简单问题和不友善的坏名声,有时看起来似乎我们对新手,对知rn识贫乏者怀有敌意,但其实不是那样的。rnrn我们不想掩饰对这样一些人的蔑视--他们不愿思考,或者在发问前不去完成他们应rn该做的事。这种人只会谋杀时间--他们只愿索取,从不付出,无端消耗我们的时间rn,而我们本可以把时间用在更有趣的问题或者更值得回答的人身上。我们称这样的rn人为“失败者”(由于历史原因,我们有时把它拼作“lusers”)。rn我们也知道,很多人只想使用我们编写的软件,对技术细节没什么兴趣。对多数人rn们而言,计算机不过是一个工具,一种达到目的的手段;他们有更重要的事情要做rn,有更重要的生活要过。我们明白这点,也并不奢望每个人都对另我们痴狂的技术rn问题有兴致。然而,我们回答问题的风格是针对这样一群人--他们有兴趣,并且愿rn意积极参与问题的解决。这点不会改变,也不应该改变;如果变了,我们将失去我rn们引以为傲的效率。rnrn我们在很大程度上属于志愿者,从繁忙的生活中抽出时间来解惑答疑,而且时常被rn提问淹没。所以我们无情的滤掉一些话题,特别是抛弃那些看起来象失败者的家伙rn,以便更高效的利用时间来回答胜利者的问题。rnrnrn如果你觉得我们过于傲慢的态度让你不爽,让你委屈,不妨设身处地想想。我们并rn没有要求你向我们屈服--事实上,我们中的大多数人最喜欢公平交易不过了,只要rn你付出小小努力来满足最起码的要求,我们就会欢迎你加入到我们的文化中来。但rn让我们帮助那些不愿意帮助自己的人是没有意义的。如果你不能接受这种“歧视”rn,我们建议你花点钱找家商业公司签个技术支持协议得了,别向黑客乞求帮助。rnrnrn如果你决定向我们求助,当然不希望被视为失败者,更不愿成为失败者中的一员。rn立刻得到有效答案的最好方法,就是象胜利者那样提问--聪明、自信、有解决问题rn的思路,只是偶尔在特定的问题上需要获得一点帮助。rn(欢迎对本指南提出改进意见。任何建议请E-mail至esr@thyrsus.com,然而请注rn意,本文并非网络礼节的通用指南,我通常会拒绝无助于在技术论坛得到有用答案rn的建议。)rn(当然,如果你写中文,最好还是寄到DHGrand@hotmail.com;-)rnrn========rn提问之前rn========rnrn在通过电邮、新闻组或者聊天室提出技术问题前,检查你有没有做到:rn1. 通读手册,试着自己找答案。rn2. 在FAQ里找答案(一份维护得好的FAQ可以包罗万象:)。rn3. 在网上搜索(个人推荐google~~~)。rn4. 向你身边精于此道的朋友打听。rnrn当你提出问题的时候,首先要说明在此之前你干了些什么;这将有助于树立你的形rn象:你不是一个妄图不劳而获的乞讨者,不愿浪费别人的时间。能说明你从这些操rn作中学到了什么就更好了。如果提问者能从答案中学到东西,我们更乐于回答他的rn问题。rnrn周全的思考,准备好你的问题,草率的发问只能得到草率的回答,或者根本得不到rn任何答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮rn助。rnrn小心别问错了问题。如果你的问题基于错误的假设,普通黑客(J. RandomrnHacker)通常会用无意义的字面解释来答复你,心里想着“蠢问题...”,希望着rn你会从问题的回答(而非你想得到的答案)中汲取教训。rnrn决不要自以为够资格得到答案,你没这种资格。毕竟你没有为这种服务支付任何报rn酬。你要自己去“挣”回一个答案,靠提出一个有内涵的,有趣的,有思维激励作rn用的问题--一个对社区的经验有潜在贡献的问题,而不仅仅是被动的从他人处索要rn知识--去挣到这个答案。rnrn另一方面,表明你愿意在找答案的过程中做点什么,是一个非常好的开端。“谁能rn给点提示?”、“我这个例子里缺了什么?”以及“我应该检查什么地方?”比“rn请把确切的过程贴出来”更容易得到答复。因为你显得只要有人指点正确的方向,rn你就有完成它的能力和决心。rnrn========rn怎样提问rn========rnrn------------rn谨慎选择论坛rn------------rnrn小心选择提问的场合。如果象下面描述的那样,你很可能被忽略掉或者被看作失败rn者:rn1. 在风马牛不相及的论坛贴出你的问题rn2. 在探讨高级技巧的论坛张贴非常初级的问题;反之亦然rn3. 在太多的不同新闻组交叉张贴rnrn黑客们通常砍掉问错地方的问题,以保护自己的社区不被大量无关帖子淹没。你不rn会希望自己的帖子被这样砍掉吧。rnrn总的说来,问题发到精心挑选的公众论坛,比发到封闭的小圈子更容易得到有用的rn答案。这一现象有多种原因,其中之一是公众论坛有更多潜在的问题 卮鹫撸涣硪rn个原因是公众论坛有更多的听众。黑客们更愿意让尽量多的人--而非有限的一两个rn--从回答中受益。rnrn----------------rn尽量使用邮件列表rn----------------rnrn如果某项目有自己的开发邮件列表,要把问题发到这个邮件列表而不是某个开发者rn,即使你很清楚谁最能回答你的问题。仔细查看项目文档和项目主页,找到这个项rn目的邮件列表地址,这样做的理由有四:rn1. 任何值得问某位开发者的好问题,都值得向整个开发团体提出。反之,若你认rn为这个问题不值得在邮件列表中提起,就没有理由用它来骚扰任何一位开发者。rnrn2. 在邮件列表提问可以分担开发者的工作量。某位开发者(尤其当他是项目负责rn人的情况下),可能忙得没时间回答你的问题。rn3. 大多数邮件列表都有历史存档,而且都能在搜索引擎中检索到。人们可以从中rn找到你的问题和答案,不用一遍又一遍在列表中发问。rn4. 如果某个问题经常被提出,开发者可以据此改进文档或改进软件,以减少用户rn的困惑。而如果问题总在私下提出,就不会有人对此有整体上的把握了。rnrn如果你找不到项目的邮件列表地址,只能看到项目维护者的,那就写给维护者吧。rn在这种情况下,也别以为邮件列表并不存在。在你的信中写明你已尽力寻找,仍无rn法找到邮件列表。另外表明你不介意将此消息转给他人。(大多数人认为私信就应rn该是私下的,即使并没有什么可保密的内容。允许你的消息被转寄给他人,给了收rn信者一种处理你邮件的选择。)rnrn----------------------------rn用辞贴切,语法正确,拼写无误rn----------------------------rn我们从经验中发现,粗心的写作者通常也是马虎的思考者(我敢打包票)。回答粗rn心大意者的问题很不值得,我们宁愿把时间耗在别处。rnrn因此,明确充分表述你的问题非常重要。如果你嫌这样做麻烦,我们也会懒得搭理rn你。注意推敲你的用辞,不一定要用呆板正式的语言--事实上,黑客文化的价值观rn是不拘小节。准确的运用俚语和富有幽默感的语言,但别乱用;一定要能表明你在rn思考,在关注。rnrn正确的拼写,标点符号和大小写很重要。别把“its”和“it's”或者“loose”和rn“lose”搞混淆了。别用全部大写的形式,这被视为粗鲁的大声叫嚷(全都用小写rn也好不到哪儿去,因为这会给阅读带来困难。Alan Cox可以用全部小写,但你不行rn)。rnrn更一般的说,如果你的提问写得象个半文盲,你很有可能被忽视。如果写得象一个rn窥客(破解爱好者)或者灰客(只会用现成工具的捣乱者)绝对是自己找死,保证rn你除了无情的抵制什么也得不到(或者,最好的结局是得到一大堆挖苦嘲笑的“帮rn助”)。rnrn如果你在使用非母语的论坛提问,你可以犯点拼写和语法上的小错--但决不能在思rn考上马虎(没错,我们能弄清两者的分别)。另外,除非你确切知道你的回答者会rn使用什么语言,否则请用英文。匆匆忙忙的黑客往往简单的跳过他们看不懂的问题rn,而英文是网络上的工作语言。用英文可以降低你的问题未被阅读即遭抛弃的风险rn。rnrn------------------rn用易读格式发送问题rn------------------rnrn如果人为造成你的提问难以阅读和理解,将会更容易被人忽略。因此你要:rn1. 使用纯文本邮件,不要使用HTML(关掉HTML并不难)。rn2. 通常可以附加MIME附件,但一定要有真正的内容(例如附加的源文件或者补丁rn),而不仅仅是你的邮件客户端产生的文件模板(例如你邮件的一份拷贝)。rn3. 不要把所有问题放在不停换行的一整段中。(这将让答复的人难于回答其中一rn部分问题,即使能回答所有问题,我也更希望条理清楚的一个一个来:)。很可能rn收件人只能在80个字符宽度的文本显示器上读信,因此要相应的把行环绕模式设在rn80字符以内。rn4. 不要在英文论坛使用MIME Quoted-Printable编码发送;这种编码格式对ASCIIrn码不能表达的语言来说是非常必要的,但很多邮件代理不支持它,这时,满篇的“rn=20”符号把文字分割开,既难看,又分散注意力。rn5. 永远不要指望黑客会乐于阅读封闭所有权的文件格式,例如萎软的Word格式。rn多数黑客对此的反应就象你在门口的阶梯上堆满热烘烘的猪粪(意即谁也不会踏进rn你的门--译者注)。rn6. 如果你通过一台安装Windows的电脑发送邮件,关闭萎软愚蠢的“智能引用”功rn能。这能使你免于在邮件中夹带垃圾字符。rn
管理学习题与解析 zt
管理学习题与解析 管理学习题与解析 经典---罗宾斯
ZT短信平台接口开发文档
ZT短信平台接口开发文档
简单易行的办公室保健操[ZT]
[color=#008080]简单易行的办公室保健操 [/color] [color=#0000FF](注解由如水提供)[/color]rn rn[color=#008080] 预备势:坐在椅上,两足分开,与肩同宽,全身放松,双目微闭。[/color]rn rn[color=#008080]  1、干梳头——双手十指作梳,从前向后梳理头发10次。  [/color][color=#0000FF](注意小心头皮屑哦~)[/color]rnrn[color=#008080]  2.拍关顶——右手轻拍头顶百会穴10次。 [/color][color=#0000FF](想起电视里以掌击头顶自杀-_-#!)[/color]rnrn[color=#008080]  3、运眼珠——双目眼珠向上、向下、向左、向右、斜上、斜下,顺时针和逆时针方向各旋转10次。 [/color][color=#0000FF](别让人以为你又在想什么馊主意)[/color]rnrn[color=#008080]  4、转颈项——头颈向上、向下、向左、向右,顺时针和逆时针方向各旋转10次。 [/color][color=#0000FF](别转晕了哈)[/color]rnrn[color=#008080]  5、转腰部—— 双手曲肘,虎口向外,拳心向内,上半身向左、向右各转动10次。 [/color][color=#0000FF](别向前挺,不然别人以为你怀孕了)[/color]rnrn[color=#008080]  6、揉腹部—— 双手重迭,拳心向内,隔空(不接触皮肤)揉按腹部,正转、逆转各 10次。 [/color][color=#0000FF](饿了?)[/color]rnrn[color=#008080]  7、擦背部——双手放在背部腰间(命门穴两侧),轻轻上下摩擦10次。 [/color][color=#0000FF](哪里啊?)[/color]rnrn[color=#008080]  8、擦膝盖—— 双手放在膝盖上,同时向左、向右旋转10次,再用拇指点按足三里(大腿外侧膝眼下三寸)10次  [/color][color=#0000FF](低胸装MM注意了,这是个动作容易前倾)[/color]rnrn[color=#008080]  9、荡双腿——双腿分别伸直,在空中上下荡腿10次。 [/color][color=#0000FF](您这是上坑头了啊?)[/color]rnrn[color=#008080]  10、擦脚底——赤足,在地板上或地毯上摩擦拭0次(或用单手掌心按摩或叩打对侧脚底涌泉穴100次)。  [/color][color=#0000FF](怪不得这么臭,原来是你干的!)[/color]rnrn[color=#008080]  收功: 双手轻轻拍打胸、腹、背及四肢3次。然后,站起身来,伸懒腰和打呵欠各3 次。 [/color][color=#0000FF](怪不得说是由猴子进化的,大猩猩也喜欢擂胸口)[/color]rnrn
JBoss启动过程(译) zt
转自:http://www.blogjava.net/galaxyp/archive/2007/11/19/161648.html   海量数据处理汇总: http://www.blogjava.net/Jack2007/archive/2009/04/12/265075.html   设计模式快速参考: http://www.blogjava.net/aoxj/archive/20...
相由心生-zt
全身健康写在脸上 中国人讲究看面相,虽说从面相看出贫富、姻缘有些'不靠谱',但其中隐藏的健康密码我们却不可不信。 从医学的角度来讲,‘相由心生’是颇有道理的。军事医学研究院王冬兰教授说: 按照中医传统理论,眼通肝、鼻通肺、口通脾、耳通肾、舌通心,脸部就好像一个微缩景区,可以从中看到身体各脏器的运行状况。 对此,《生命时报》总结国内外众多研究,为您揭示脸上的健康地图。 眼白发黄藏肝...
zt】web学习day03
[size=medium][color=blue]一、bom[/color] [color=red]1、什么是bom?[/color] browser object model(浏览器对象模型)。 指浏览器支持的一些对象,主要包括window,document, navigator,location,screen以及XmlHttpRequest。通过 这些对象,可以实现: a,窗口...
svn 基本命令(zt)
把本地项目testsvn整个目录里的内容往备份站点塞, 这是最初的结构, 建立最初的rev 0 以后checkout回来同样是按该路径,把目录下的(不包括最后的目录名)文件取回 svn import testsvn svn://path/to/repos -m "最后的这个注释不能少" 取回项目, 路径同上. 最后取出来的新目录名不给定就会用最后路径的最后一个目录名, 这里就是repo...
自由意志杂谈 [zt]
自由意志杂谈 ◇赵南元 一、最牛的概念 “自由意志”最早引起我的注意是缘于一件小事。当时在国外工作,遇到有人上门向我传教。我问他们:世界的万物都是上帝创造的吗?他们说:是的。我说:那么魔鬼也是上帝创造的了?他们说:不是,上帝只创造了天使,但是天使有自由意志,有的自己变坏,成了魔鬼。 如此说来,在西方的基督教文化里,“自由意志”是个最牛的概念,甚至可以为上帝脱...
zt】如何做好presentation
[size=large]大多欧美企业都非常重视presentation skills,不懂得这一点,是许多在外企工作的人认为自己怀才不遇的原因。 所谓presentation,不一定非是powerpoint presentation不可。外企对管理人员的衡量指标之一有一个selling skill,其实大多便是从presentation里面得来的印象。外企看重的presentation是所...
关于封QQ(ZT)
http://www.cnfan.net/Article_Show.asp?ArticleID=38rn如何在ISA中封掉QQ服务 rn[ 作者:yslt 转贴自:winmag.com.cn 点击数:1637 更新时间:2003-10-30 文章录入:清水飘萍 ] rn rnrn第一步:封掉qq服务器的下列地址rn61.144.238.145 rn61.144.238.146 rn202.104.129.151 rn202.104.129.254 rn61.141.194.203 rn202.104.129.25 rn202.104.129.253 rn61.144.238.155 rn202.96.170.164 rn202.104.129.251rn@218.17.209.23rn@218.18.95.153rn@218.18.95.165rn218.17.209.42rn61.144.238.149rn219.133.40.89-92rn211.157.38.38rn65.54.229.253rn第二步(转贴):禁止UDP登录rn具体操作如下:rnIP Packet FiltersrnNewrnFilterrn随便取个名字,例如Deny QQ_UDP(Next)rnBlock packet transmission(Next)rnCustom(Next)rnIP protocol选UDP、Direction选Send only、Local port选All ports、Remote port选rnFixed port,对应的Port number输入8000(Next)rnDefault IP addresses for each external interface on the ISA Serverrncomputer(Next)rnAll remote computers(Next)(Finish)rn禁止TCP登录(禁止远程服务器的TCP 443)rn服务器地址如下:218.17.209.23、218.18.95.153(以下两个地址可选218.17.209.42和rn61.144.238.149)rn如何封锁218.17.209.23的443服务:rnIP Packet FiltersrnNewrnFilterrn随便取个名字,例如Deny QQ_TCP1(Next)rnBlock packet transmission(Next)rnCustom(Next)rnIP protocol选TCP、Direction选Outbound、Local port选All ports、Remote port选rnFixed port,对应的Port number输入443(Next)rnDefault IP addresses for each external interface on the ISA Serverrncomputer(Next)rnOnly this remote computer输入218.17.209.23(Next)(Finish)rn同理封锁218.18.95.153/165的443服务rn
Linux下使用蓝牙(ZT)
使用 爱立信T68i、索爱T628 与 Billionton USB Bluetooth Adapter 在Debian Kernel-2.6.0内核下测试通过。 (本人购买的台产Billionton USB Bluetooth Adapter有Win98/2k/xp的驱动和软件widcomm1.3.2.7, 而要想在win2003下用的话需要最新版1.4.2.10, ...
(ZT)FC5 安装内核源代码
因为工作需要,安装了一个Fedora Core 5rn但是发现不带内核源代码,这就很不好了,给我们的工作带了很大的不方便,于是就上网找了这么一篇文章rn做完了,正常使用rn为了方便csdn的兄弟们不再为了这个烦恼,转了来rnrn不知道是谁写的,如果老大在,请说明,多谢您的文章rn帖子内容如下:rn1.确定安装了GCC与RPM相关的包。rn2.安装相应的内核源代码,因为FC5本身没有提供相应的源码包在安装盘上,所以要在官方网站上下载,网址如下。rnhttp://download.fedora.redhat.com/pub/fedora/linux/core/5/source/SRPMS/kernel-2.6.15-1.2054_FC5. src.rpmrn也可以从http://www.kernel.org上下载,怕Fedora 5发行版的和这个有点差别)rn3.编译内核源码:rn[root@sunshine srpms]#rpm –Uvh kernel-2.6.15-1.2054_FC5.src.rpmrn[root@sunshine srpms]#cd /usr/src/redhat/SPECSrn[root@sunshine SPECS]#rpmbuild -bp --target $(uname -m) kernel-2.6.specrn[root@sunshine SPECS]# ls /usr/src/redhat/BUILD/kernel-2.6.15/rnConfig.mk linux-2.6.15.i686 vanilla xen xen-vanilla (有可能是i586我的是i686)rn[root@sunshine SPECS]# cd /usr/srcrn[root@sunshine src]#mkdir kernels (默认的安装是没有kernels这个文件夹)rn[root@sunshine src]# cd kernels/rn[root@sunshine kernels]# ln -s ../redhat/BUILD/kernel-2.6.15/linux-2.6.15.i686/ 2.6.15-1.2054_FC5-i686rn[root@sunshine kernels]# lsrn2.6.15-1.2054_FC5-i686rn[root@sunshine kernels]# cd 2.6.15-1.2054_FC5-i686/rn[root@sunshine 2.6.15-1.2054_FC5-i686]# cp configs/kernel-2.6.15-i686.config .configrncp:是否覆盖“.config”? yrn修正Makefilern------------------------------------rn[root@sunshine 2.6.15-1.2054_FC5-i686]#uname –r (得到2.6.15-1.2054_FC5)rn2.6.15-1.2054_FC5rn那么就要将Makefile中的rnEXTRAVERSION = -preprn换成rnEXTRAVERSION = -1.2054_FC5rn-------------------------------------rn继续编译:rn#make mrproperrn#make oldconfigrn#make (比较耗时,我用了一个多小时)rn#make modules_installrn到此我们要用的内核编译完成。
[zt]jsp+tomcat+mysql&sevlet&javabean配置全过程
在配置jsp开发环境的过程中会碰到不少问题,感谢网上的许多前辈的经验总结,作者cl41的JSP连接Mysql数据库攻略和作者Saulzy的MySQL学习笔记等文章对我来说简直是雪中送碳,为了帮助象我一样的初学者在此总结了不少作者的经验,非常感谢他们的无私奉献精神,也希望更多的人把这种精神发扬光大,呵呵,再次对所参考文章的作者表示最崇高的敬意!rn以下软件下载连接地址无法显示的话,请直接到官方网站下载即可!rnrn软件下载rnMysqlrn下载版本:mysql-4.1.13-win32.zip(Windows downloads) rnhttp://dev.mysql.com/downloads/mysql/4.1.htmlrnrnJDBC驱动rn下载版本:mysql-connector-java-3.1.10.ziprnhttp://dev.mysql.com/downloads/connector/j/3.1.htmlrnrn下载j2sdkrn下载版本:jdk-1_5_0_04-windows-i586-p.exernhttp://java.sun.com/j2se/1.5.0/download.jsprnrn下载tomcatrn下载版本: jakarta-tomcat-5.5.9.exernhttp://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgirnrn安装,配置j2sdk:rnrn执行j2sdk安装程序,按默认设置进行安装,也可自定义路径,但需修改下面的配置rnrn配置j2sdk:rnrn配置环境变量:rnrn我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量: rnJAVA_HOME=C:\Program Files\Java\jdk1.5.0_04rnCLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;rnpath=%JAVA_HOME%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbemrnrn写一个简单的java程序来测试J2SDK是否已安装成功: rnpublic class hellorn rnpublic static void main(String args[])rn rnSystem.out.println("Hello"); rn rn rnrn将程序保存为文件名为hello.java的文件。 rnrn打开命令提示符窗口,进入到hello.java所在目录,键入下面的命令 rnjavac hello.java rnjava hello rn此时若打印出来hello则安装成功,若没有打印出这句话,仔细检查以上配置是否正确。rn注意系统文件夹选项中应确定“隐藏已知文件类型的扩展名”不勾选(我的电脑?工具?查看) rnrn安装,配置tomcatrn执行tomcat安装程序,按默认设置进行安装,也可自定义路径,但需修改下面的配置rnrn我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量rnCATALINA_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.5rnCATALINA_BASE=C:\Program Files\Apache Software Foundation\Tomcat 5.5 rnrn修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet-api.jar添加到classpath中去,rn修改后的classpath如下: rnclasspath=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar;rnrn启动tomcat,在IE中访问http://localhost:8080,若看到tomcat的欢迎页面的话说明安装成功。rnrn安装mysqlrn解压缩mysql-4.1.13-win32.zip,运行setup.exern首先出现的是安装向导欢迎界面,直接点击“Next”rn继续,选择安装类型,选择“自定义”custom安装,然后点“Next”下一步,出现自定义安装界面rn选择安装路径:C:\MySQL Server 4.1(可自定义)rn点“OK”返回到自定义安装界面,路径已改为设置的路径rn点“Next”,准备开始安装rn点“Install”开始安装rn完成后出现创建MySQL.com帐号的界面rn如果是首次使用MySQL,选“Create anew free MySQL.com accout”rn点“Next”,输入你的Email地址和自己设定的用于登录MySQL.com的密码rn填完后点“Next”进入第二步rn填写姓名等相关信息,填完点“Next”,进入第三步rn填完电话号码、公司名称等信息后,点“Next”,rn然后出现预览你刚才填的信息的界面,点“Next”出现安装完成界面rn注意,这里有个配置向导的选项(Configure the MySQL Server now),rn建议勾选立即配置你的MySQL。许多说安装完MySQL后无法启动,原因就在于没有配置MySQL。rn点击“Finish”完成安装,并开始配置MySQLrn点“Next”,进入配置类型选择页面。选“Detailed configuration”(详细配置)rn点“Next”,进入服务类型选择页面。选“Developer Machine”(开发者机器),这样占用系统的资源不会很多rn点“Next”后,进入数据库用法选择页面。选择“Multifunctional Database”rn点“Next”,进入选择InnoDB数据存放位置页面rn不用更改设置,直接放在Installation Path安装目录里即可,然后点“Next”,选择MySQL的同时联接数rn选择“Manual Setting”,设置为100(根据自己需要,酌情设置)rn点“Next”,配置MySQL在TCP/IP通讯环境中的端口选择默认的3306端口即可。rn点“Next”,选择MySQL中的字符设置rn注意,这里的选择将会影响你是否能在MySQL中使用中文。选择gb2312字符集以便支持简体中文rn点“Next”,设置Windows服务选项rn注意,这里的选择很关键。rn“Install As Windows Service”一定要勾选,这是将MySQL作为Windows的服务运行。rn“Service Name”就用默认的“MySQL”rn下面的“Launch the MySQL Server automatically”一定要勾选,这样Windows启动时,MySQL就会自动启动服务,要不然就要手工启动MySQL。rn许多人说安装MySQL后无法启动、无法连接、出现10061错误,原因就在这里。rn点“Next”,设置根帐号root的登录密码rn“Modify Security Settings”是设置根帐号的密码,输入你设定的密码即可。rn“Create An Anonymous Account”是创建一个匿名帐号,这样会导致未经授权的用户非法访问你的数据库,有安全隐患,建议不要勾选。rn点“Next”,MySQL配置向导将依据你上面的所有设定配置MySQL,以便MySQL的运行符合你的需要rn点“Execute”开始配置,当出现“Service started successfully”时,说明你的配置完成,MySQL服务启动成功rn点“Finish”完成,整个MySQL的配置完成,剩下的就是用MySQL客户端连接MySQL服务器,然后使用了。
[ZT]几个预编译指令的用法
预处理过程扫描源代码,对其进行初步的转换,产生新的源代码提供给编译器。可见预处理过程先于编译器对源代码进行处理。rn在C语言中,并没有任何内在的机制来完成如下一些功能:在编译时包含其他源文件、定义宏、根据条件决定编译时是否包含某些代码。要完成这些工作,就需要使用预处理程序。尽管在目前绝大多数编译器都包含了预处理程序,但通常认为它们是独立于编译器的。预处理过程读入源代码,检查包含预处理指令的语句和宏定义,并对源代码进行响应的转换。预处理过程还会删除程序中的注释和多余的空白字符。rn预处理指令是以#号开头的代码行。#号必须是该行除了任何空白字符外的第一个字符。#后是指令关键字,在关键字和#号之间允许存在任意个数的空白字符。整行语句构成了一条预处理指令,该指令将在编译器进行编译之前对源代码做某些转换。下面是部分预处理指令:rnrn 指令 用途rn # 空指令,无任何效果rn #include 包含一个源代码文件rn #define 定义宏rn #undef 取消已定义的宏rn #if 如果给定条件为真,则编译下面代码rn #ifdef 如果宏已经定义,则编译下面代码rn #ifndef 如果宏没有定义,则编译下面代码rn #elif 如果前面的#if给定条件不为真,当前条件为真,则编译下面代码rn #endif 结束一个#if……#else条件编译块rn #error 停止编译并显示错误信息rnrn一、文件包含rn #include预处理指令的作用是在指令处展开被包含的文件。包含可以是多重的,也就是说一个被包含的文件中还可以包含其他文件。标准C编译器至少支持八重嵌套包含。rn 预处理过程不检查在转换单元中是否已经包含了某个文件并阻止对它的多次包含。这样就可以在多次包含同一个头文件时,通过给定编译时的条件来达到不同的效果。例如:rnrn #define AAArn #include "t.c"rn #undef AAArn #include "t.c"rnrn 为了避免那些只能包含一次的头文件被多次包含,可以在头文件中用编译时条件来进行控制。例如:rn /*my.h*/rn #ifndef MY_Hrn #define MY_Hrn ……rn #endifrnrn 在程序中包含头文件有两种格式:rn #include rn #include "my.h"rn 第一种方法是用尖括号把头文件括起来。这种格式告诉预处理程序在编译器自带的或外部库的头文件中搜索被包含的头文件。第二种方法是用双引号把头文件括起来。这种格式告诉预处理程序在当前被编译的应用程序的源代码文件中搜索被包含的头文件,如果找不到,再搜索编译器自带的头文件。rn 采用两种不同包含格式的理由在于,编译器是安装在公共子目录下的,而被编译的应用程序是在它们自己的私有子目录下的。一个应用程序既包含编译器提供的公共头文件,也包含自定义的私有头文件。采用两种不同的包含格式使得编译器能够在很多头文件中区别出一组公共的头文件。rnrn二、宏rn 宏定义了一个代表特定内容的标识符。预处理过程会把源代码中出现的宏标识符替换成宏定义时的值。宏最常见的用法是定义代表某个值的全局符号。宏的第二种用法是定义带参数的宏,这样的宏可以象函数一样被调用,但它是在调用语句处展开宏,并用调用时的实际参数来代替定义中的形式参数。rn 1.#define指令rn #define预处理指令是用来定义宏的。该指令最简单的格式是:首先神明一个标识符,然后给出这个标识符代表的代码。在后面的源代码中,就用这些代码来替代该标识符。这种宏把程序中要用到的一些全局值提取出来,赋给一些记忆标识符。rn #define MAX_NUM 10rn int array[MAX_NUM];rn for(i=0;i
ZT News iii
大家好,这是一个JOOMLA php网站建设当中的一个有用的ZT News iii组件。
谈谈外汇储备[zt]
凤凰卫视一虎一席谈有关“金融危机”的节目里,一位爱国经济学家的一番肺腑演说,让在场的观众听得神情凝重,继而又爆发出雷鸣般的掌声。这些观众大多是经济界人士,好些还是MBA和EMBA生。   他说:中國被绑架了。1.2万亿美元,拿不回来了,美国成了大爷了。我们辛辛苦苦积攒来十几年的国民财富,就化为乌有了。两万亿美元相当于15万亿人民币啊。中國人民巨大的财富消失了。我们国内的居民储蓄在20万亿。整...
Jquery Tutorial
NULL 博文链接:https://tianjun309.iteye.com/blog/1072285
SAP Table Relations [zt]
博文链接:https://kristen-wang2008.iteye.com/blog/187276
线性代数英语词汇大集合 zt
线性代数英语词汇大集合  =========================================================================  A adjont(adjugate) of matrix A A 的伴随矩阵 augmented matrix A 的增广矩阵 B block diagonal matrix 块对角矩阵 block ma...
【ZT】缓存算法
转自:http://www.jtraining.com/component/content/article/35-jtraining-blog/137.html 缓存算法 Least Frequently Used(LFU): 大家好,我是 LFU,我会计算为每个缓存对象计算他们被使用的频率。我会把最不常用的缓存对象踢走。 Least Recently User(LRU): 我是...
【引用】CLUSTER_FACTOR测试(zt
cluster_factor,这是一个判断表上的数据分布是不是和索引一样有序的一个值 它的取值范围在表的block的个数和表的行数之间,越接近block的个数说明表的数据分布越有序(和索引一样有序),越是接近行数越说明表上的数据分布是混乱的 可以这样理解,当我们按照索引上的顺序访问表的时候,每当我们需要的数据不在当前block上的时候,我们就要“跳到”其他block上进行访问。如果表上的数据排列和...
ZT:linux常用软件。
GNOME下rn 1. Applications:应用软件rn 1) Dia:一个工程图编辑器,适用于绘制电路图;rn 2) Calendar:一个集日历与日程表于一身的好工具;rn 3) Address Book:一个通讯录rn 4) GEdit:一个功能类似于Windows下的记事本的文本编辑器;rn 5) Gnumeric:Linux下的一个类似于EXCEL的电子表格软件;rn 6) Time tracking tools:一个用于提醒时间的小工具;rn 2. Games:游戏软件rn 1) Gnome Milnes:GNOME下的扫雷;rn 2) Gnibbles:贪吃蛇游戏;rn 3) Freecell:Windows下的空当接龙游戏;rnrn 3. Graphics:图形处理软件rn 1) Electric Eyes:一个十分优秀的图形处理软件,可谓GNOME下的AcdSee呀!rn 2) XPDF:一个在Linux阅读PDF文档的工具;rn 3) The Gimp:一个十分优秀的绘图软件,与Photoshop很象!rnrn 4. Internet:Internet应用软件rn 1) Dialup Configuration Tool:一个界面十分友好的拔号上网设置工具;rn 2) gFTP:一个FTP客户端rn 3) pine:一个E-Mail客户端软件rn 4) Netscape :大名鼎鼎的浏览器软件,被微软从Windows平台挤下来的rn 5) RH Network monitor:网络流量显示rnrn 5. Multimedia:多媒体软件rn 1) Audio Mixer:声音控制器rn 2) CD Player:CD播放器rn 3) XMMS:与Winamp是一个模子里出来的rnrnrnKDE下rn 1. Office:办公软件rn 这就是大名鼎鼎的Koffice套件。rn 1) Kword:字处理软件rn 2) Kspread:象Excel的电子表格处理软件rn 3) Kpresenter:一个类似于PowerPoint的演示软件rn 4) Kchart:一个电子图表软件rn 5) Kiiiustrator:一个电子出版软件rnrn 2. Develop:开发工具rn 1) Kdevelop:一个KDE下的集成开发环境rnrn 3. Applications:应用软件rn 1) Advanced Editor:一个增强型的文本编辑软件rn 2) Emacs:这是一个功能强大的编辑软件,在GNOME中也有,它的原形是字符终端下的Emacsrn 3) Organizer:一个日程安排软件rnrn 4. Internet:Internet软件rn 1) Kppp:一个十分友好的拔号上网配置工具rn 2) Kmail:一个十分漂亮的Email 客户端,有点象Outlook!rn 3) Chat Client:一个IRC客户端rn 4) KPPPLoad:一个网络流量工具rn 5) Netscape:大名鼎鼎的WEB浏览器,在GNOME中也有集成rnrn
英雄-----之编程篇(ZT)
萧萧黑夜,一叶小舟在渺茫的太平洋上飞驰。上面坐着一个人----我,发明世界上编程语言的一招必杀技A语言。通过A语言在十个语句之间可以编写Windows一样复杂的程序。这次我的使命是说服计算机盟主比尔.盖茨使用这种语言造福人类。rn在进入老比的办公室的时候,我唯一的武器--笔记本被他的护卫强行缴获。rn我走到老比面前。rn比:听说你发明了一种强大无比的语言,说来听听。rn我:A语言利用了所有计算机及人脑的特征,该语言只虚拟26个字母,然后按照人说话的过程组合这26个字母,就可以编写出无比强大的程序。rn比:好快的语言;rn比:但是你小瞧了一个人!rn我:谁?rn比:我。我在考虑你虚拟26个字母的时候,也是刚刚才想到你是用什么虚拟的,我想你一定是用了C#的语言,通过操作系统把26个函数组合在一起,然后使用26个字母作为这些函数的名字。是用复杂的方式来蒙蔽别人。rn我:是,你说的非常正确。但是你也小瞧了一个人?rn比:谁;rn我:Strustroup;rn我:那是在三十年之前,我把我发明的A语言给Strustroup,向他咨询一些完善方面的内容,但是被他拒绝了。rn(场景转换到Strustroup在AT&T实验室)rn我:Strustroup先生,我发明了A语言,希望你能提出建议!rnS:A语言非常好,但是你不能发表!!!rn我:为什么?rnS:因为在三十年前我就发现有比Cobol更好的语言,那就是A语言,但是我当时没有发表,直到1875年我反而将所有语言的难点集成于一身,发表了我的C++;你也不要发表!rn我:为什么?rnS:你一定要发表?rn我:是。rnStrustroup用8008计算机在空中写下了两个大字;rn比:什么?rn我:天下;rn比:天下,为什么?rn(场景转换到AT&T实验室)rnS:为了天下千千万万以编程序为生的程序员,A语言不能发表。rnMayes(Strustroup助手):Strustroup说的对,A不能发表。虽然我是恐龙中的精品,但是,小伙子,就凭我在此道500年的修炼,感到Strustroup说的对,为了天下以此为生的程序员,A发表不得。rn我:但是,我已经让C++搞的失眠,神经衰弱;rnS:为了天下的程序员,你一个人的失眠,神经衰弱算的了什么!rn比:A语言必藏有一式,威力无比!rn我:是,十秒一杀。rn比:十秒一杀?……好名字!!!你手中无键,如何杀我? rn我:不需键盘,十秒之内,臣必杀天下之电脑。rn比:果然藏有一式!I 服了 U!!(病毒程式) rn我:没什么的,小Case.臣还有一式(嘿嘿,奸笑) rn比:(流着口水)那一式? rn我:(故做神秘状)C++与Delphi有一夜之情……………………rn场景转换:电脑空间 rnC#刚与Basic一番缠绵,突然冲到C++的文件夹,痛苦的叫到:rn我是故意让你看到的,我心里根本没有你!! rn(全场哄笑,内存泄漏,呕吐 ****) rnrn比(眼含热泪):我也早在六十年前就想到发表A,但是我也没有;没有想到我一个盟主的知音是Strustroup;就是因为天下,所以我才在我的VC中使用了大量的宏,让所有的人都不知道其中的奥妙!“rn我(恍惚):但是我既然已经把A带到这里,就要用;rn比:但是你没有计算机。rn我(得意):我十年刻苦修炼,已经炼就了一招比杀技。rn比:什么?rn我:空中语言编程;rn我大叫了七个字母----Windows(我悄声对比说:“这个程序一定要运行”),但见比办公室的所有的计算机都运行起我刚刚用声音开发的操作系统。但是没有损坏已经安装的原来的Windows操作系统的毫毛,因为我可以让我的系统在其他系统的周围运做。rn比对天长叹;rn比的护卫大喊:“扰乱版权,该不该杀,扰乱版权,该不该杀,扰乱版权,该不该杀!杀,杀,杀!“rn护卫:“扰乱版权必杀是盟主定的帮规,为了天下,盟主要言必行,行必果;杀,杀。。。。。。。“rn我把A语言的说明撕的粉碎,一步步向比的办公室门走去。。。。。rn(后面是护卫的声音“杀,杀,杀。。。。。。“rn老比眼中有泪,有恨,有悲,有爱,慢慢地拿起手中的水果刀…………………….rn三十年前的这场浩劫,谁也不知道结果。只是三十年后的今天,A依然没有发表,人们还在用高薪聘请着C++程序员……………..
各种计算机语言的盘点(zt
简介各种程式语言rn注︰在程式语言前划有☆号者,表示它有重大影响,但不代表它优良rnrnrn适合编写商业程序、对效能有所要求rn编写商业程序的程式语言,最基本的要求就是不是直译的,令使用者不能看到源码;第二就是有良好的性能、语法,适合编写大程序而效率不会过慢。rnrnrn☆C/C++rn自从C发明了以后,它就取代了汇编语言在操作系统编程的领导地位。从性能上说,除了汇编语言,C语言是最接近机器的语言。各种操作系统的编程接口的默认语言都是C语言。因此,用C语言编程,可以最大限度发挥操作系统的能力。同时,由于绝大部分的商品软件都是C或与C相容的C++实现的,都有C编程接口,可以说,没有C不能实现的功能。rnrnC++是C语言的加强版,C++增加了面向对象和其他有用的功能,但它的效能并没有大减,编程更方便轻松;而C++亦支援大部分C的程式,令C++和C变得近乎不可分割,大部分的C编译器也支援C++。假如要在学C或学C++选择,学C++是明智的选择。rnrn在Unix-like的操作系统中,C具有很好的开放源代码的条件,它有统一的编译器gcc,有强大但比较难掌握的编程环境emaCs,有统一的API:posix和Linux接口。并且大部分编译器和API是开放源代码的。rnrn在Unix-like上编写图形界面程序,有两个选择KDE和Gnome∶KDE更成熟,但它使用了不是开源的Qt函式库;Gnome支持多语言和面向对象的程序间的协同,有它的GUI工具GTK。rnrn在Windows环境中,现在通常使用vC,但有一个缺点,Windows的升级换代太快,从dos环境到Windows31 ,从Windows31到Windows95,到Windows2000,到.NET。API常常变换,这样,在Windows上的程序代码的寿命会比较短。并且vC的编译器和API太复杂,难于掌握,并非开放源代码的工具。其他选择有从Unix-like系统移植过来的djgpp、mingw。rnrn由于C/C++具有现代语言的大量特征,现在常常代替Pascal作为教学的编程语言。rnrn实际上,如果不深入学习,C也是一种很简单的语言。不学Basic,直接学C完全没有问题。rnrn和其他语言相比,虽然C和C++都已经定下了其标准,但编译器、函式库、操作系统API五花八门,有些又未必全面支援最新的标准,造成学习的难度大、统一性差的问题。rnrnrn☆Visual Basic(简称VB)rnVB是快速的界面生成语言,是快速的数据库程序开发语言。vba是vb的应用版,嵌入在MS office中。编写MS office上的程序很好用。缺点是只能在Windows平台运作。rnrnrnDelphi/Kylixrn和vb一样是快速开发环境,但性能更好,功能更强大,亦可以用于Linux平台。语法建基于Pascal,是面向对象的程式语言。rnrnrn☆Javarn相对C,Java作为现代语言,具有非常丰富的语法特征,如模块和类,不像C随操作系统和编译器的不同有极大差异,Java是一个公司的产品,具有唯一的API,因此,Java程序员没有语言隔阂。有人认为Java根本是一个平台,并非真正的跨平台。rnrn相对跨平台的语言来说,Java具有最好的图形界面编程API。rnrnJava所有的API都是类库,相对C的函数来说,是非常大的进步。Java具有现代语言几乎所有的特征。rnrnJava最大的缺点,是它被一所公司控制着。rnrnrnAdarnAda语言和C/C++是一种编译语言,他们最后编译出的执行文件的机器码都很小。因此现在众多的语言只有C/C++能够与Ada相提并论。rnrn和C/C++相比,Ada的特点是可靠、可移植。rnrn他的可靠是通过比其他语言都强大的类型,每种类型还都可以象数据库字段一样进行强类型、范围的检查。以此来保证在编译中就发现错误。rnrn它有强大的标准化组织,严格认证Ada编译器的标准。有多线程能力。rnrn适于编写实时程序。rnrn但和C/C++相比太复杂、罗嗦,因此注定不能流行。rnrnrnScripting Languagern如果不在乎商业机密,应用目标也不是太苛刻的话,编写大型跨平台程序的最佳就是脚本语言。有些脚本语言具有全面的库的支持,有和C语言的方便的交互能力。他们和Java相比,编程效率更高。同时因为没有编译,程序更方便修改。因为他们的库都是C实现的,也比Java有更高性能。同时,他们都是开源的,都是对商业应用友好的,也是简单的、方便定制的。也是不满意Java的不可控制的越来越庞大的库的又一个选择。rnrnrnBasicrn现在最着名的Basic版本是vb,Basic是简单的初级语言。Basic的丑陋在于参数还是默认传地址。太危险。rnrnrn☆PerlrnPerl的最大特点是有强大的字符串模式匹配,是最好的文本文件的读取和生成语言,亦是Unix系统管理者的好帮手,因为它吸收了awk、sed、grep等工具的功能。Perl具有很大的自由性,象英语一样有很大的随意性,在Perl里基本上无Type Error这回事,它的”Type”就是纯量和串行。Perl有一个强大的数据库接口和其他各种接口。Perl有大量的程序库(CPAN)。rnrn因为Perl较早出现,某些功能是后期加上去,显得不协调,例如它的面向对象功能就被视为不是真正的面向对象。Perl有个着名的缺点是难读懂,维护困难,被认为不适合编写大程序,只适合一千行以下的程式,也有个著名的优点是简练。rnrnrnPythonrn首先,Python是和Basic一样面向初学者的语言,和英语一样容易懂。rnrnPython有和Perl类似的简单性,但没有模式匹配。rnrnPython有和Lisp相似的地方,它有将字符串作为程序执行的eval函数,可以对一个对象的所有数据进行保存,可以把函数作为参数传给另一个函数。rnrnPython具有非常好的扩充性,Python程序可以和C程序,以及Java程序很好地结合。rnrnrnTclrnTcl具有最简单的语法,最好的和其他程序交互的能力,有编写图形界面程序的Tk。基本上已经没有个人用户学习Tcl语言,但是中国一些大型的软件公司至今一直使用该语言进行软件测试工作,而且Tcl的工具包Tk也是很多Scripting Language的GUI工具。rnrnrnRubyrnRuby是吸取了所有语言精华的语言。Ruby虽然是纯面向对象语言,但可以”扮成”程序式的程式语言;它的文件主要都是日文和英文。rnrnRuby有rnrn* Perl的正则表达式rn* Python的语言的简单性可读性、最容易的扩展能力,强大的可移植性。rn* PHP的嵌入功能和多种客户端rn* smalltalk的纯面向对象语法和单继承rn* Lisp的无穷嵌套的语法,也就是函数式的语法。rn* 用“块”来实现更快捷的数据结构的处理。不知道是不是sCheme的宏功能。用块能更清楚的实现Python的表处理功能。rn* Java和Ada的线程编程rn* Java的安全编程rn不得不承认Ruby确实是个精彩的语言,它完全学会了Lisp的所有编程都是函数的思想,smalltalk的所有东西都是对象的思想,Perl的一个目的多种手段的方法,Python的简单化的“最少惊喜”的原则,Java的多线程和安全控制的功能,Tcl的容易扩展的功能,PHP的嵌入功能和强大客户端的功能,最方便的shell命令的调用。rnrnrnLuarnLua是一个小巧强大的脚本语言。第一眼看到Lua的介绍,感觉它象Tcl的替代品,因为它的主要目的是作为脚本语言。但接下来就看到它不是象Tcl那样是命令行式的函数语言,它和其它语言一样有语句结构。它实现和C程序互动的方式和Python类似,具有和Python一样的和C结合的能力。并且Lua全部是用ansi C实现的,可以实现完全的跨平台。rnrn然后,看到Lua的一个显着的特点就是具有对象数据库功能,可以实现变量的永恒存储。这个特点让人首先联想到fish,fish的最重要的特点也是语言内含一个对象数据库,不过fish有outline的可视界面,和数据库浏览能力。但fish不是开源的,因此,如果需要一个非内存的变量存储空间可以选择Lua。这种对象数据库都是不但能存储数据,也能存储操作数据的函数。实际Python也具有一个将整个内存存储在一个磁盘文件的功能,另外,还有zope的zodb可以实现专业的永恒变量功能。另外,sCheme天然具有永恒存储能力,它只要把表变量输出到一个文件中就可以了。因为sCheme是不分数据和程序的,因此可以实现将程序和数据同样存储在文件中。rnrnLua和Python相比规模比较小,因为它是和C紧密结合的,可以完全使用各种C库,就不需要有自己的库。Lua给人的印象是小规模的Python。Lua也是动态数据类型,也有内存管理功能。只是Python自带强大的库,而Lua只携带一个小型的库,具有字符串和数学计算能力,同时Lua标准携带一个对象数据库。另外,可以把C库随时编译到Lua中。Lua引以自豪的是它的速度很快。rnrnLua的语法比较简单,它把数组、字典、结构等复杂的数据结构都统一为表。另外,Lua具有正则表达式功能。rnrnrn网页编写∶客户端程序rnrnJavaScriptrn编写动态网页的最佳工具,可以造到很多效果,亦是Mozilla扩充套件的语言。rnrnrnVBScriptrnVBScript是vb的脚本语言,可以产生服务器端和客户端的动态网页。客户端的动态网页暂时只有IE系列浏览器支援,所以VBScript相容性很低,不及JavaScript。rnrnrn服务器端程序rnrnPHPrnPHP是专门写网页程式的语言,它的语法和Perl极之接近。PHP可以嵌入HTML,更容易编写服务器端程序。PHP天然和web服务器以及mysql数据库相结合。PHP可以动态生成图像。rnrn我一直认为PHP是一个垃圾,因为它只是实现了脚本语言得嵌入,却单独实现一种语言、实现大量得函数库,浪费了大量得开发人员得宝贵时间来重复其他脚本已经实现了得功能,也浪费了PHP开发人员得大量学习时间,还要单独学一种只能存在于web服务器得语言,浪费了Perl、Python得已有得使用经验。相似得还有pike,一种C得脚本语言,没什么新东西,还不如仍然用C编译器。rnrn但我最近看书才了解PHP独特的开发目标。rnrnPHP为什么不直接用Perl作脚本语言。是因为Perl是一种Unix语言,带有Unix传统得字符神秘高深,让人难于学习。而编动态网页得人不见得会用Perl这种Unix工具,他们可能只有HTML知识。PHP就简化了Perl得语言,变成了一种简单友好得语言,免去了人们学习Perl得困难。rnrnPHP为什么不选Python作脚本。因为Python是一种面向对象的语言,大量得功能都要涉及面向对象概念,而web应用只是简单得实现客户机逻辑和显示功能。没必要涉及面向对象得复杂概念。函数是最简单,最容易理解得,因此,PHP倾向于所有得功能都用函数来解决,而不是用对象来解决。这有点象C和C++之争。应该承认,函数在实现简单功能得时候是最有利得工具,它得语句量最少。rnrnPHP定位于以HTML为用户界面,充当各种服务器得客户端,实现得是传统得客户端编程得任务。它有pop、smtp、ftp、多种数据库等各种服务器得客户端得函数,也有图片、pdf生成,XML处理等这种必要得功能。这些都是其他脚本比不上PHP得地方。rnrn其他专门写网页程式的语言有ASP、JSP和CGI,但它们都不及PHP强大。rnrnrnJava、.NET、Zopern在商业开发中流行的是Java和.NET,其实zope也是选择之一,zope的特点就是全部开源,层次少,简单。并且集成一个内容管理器和众多的附加产品。附加产品多是开源软件必然的优势。zope之前的一些缺点在zope3中将得到解决。另外,zope的组件架构和Cmf开发架构,并不必Java的组件开发环境差多少(我没接触很多Java,只是评感觉说,其他人可以有不同意见)。rnrnPHP虽然看起来不适合大程序开发,但在PHP平台上已经有了很多大规模的程序,比如puke。tiki。rnrn另外,web服务器已经被很多程序缺省支持,用很多语言都能编写出独立的web服务器程序。rnrnrn其他rnrnLisprnLisp的语法非常简单统一,只有简单的函数和参数的语句结构。Lisp用上极多括号,不太方便。Lisp数据和程序的界限模糊。Lisp可以深度嵌套。rnrnrnprologrnprolog是由R. Kowalsk首次提出,全称是Programming in Logic。1972年诞生世界上第一个Prolog系统。它基于逻辑程序设计,能自动实现模式匹配和回溯,且适合于并行处理。PROLOG以一阶谓词演算为基础。由于采用了合一、置换、回溯和匹配等机制来搜索解答,所以用户不必要编写求解搜索程序,只要把待解决的问题输入计算机系统就可以了。PROLOG的功能还不如LISP强,但它具有较好的发展前景,曾被用作第五代计算机开发研究的核心语言。rnrnrn.NETrn支持多种语言的统一的API类库,rnrn可以编写webform程序,即所有的逻辑都在服务器端,传到客户端的是标准的HTML3.0,可以被各种浏览器支持。各程序组件间通过soap交换消息。rnrnrn其他编程概念rnrnTuring-complete programming: Brainfuckrnrn☆Functional Programming: Haskell、Cleanrnrn平行处理: Fortranrnrn各种语言的选择rn如果编写对性能要求苛刻,或和操作系统结合紧密的程序,必然选择C。rnrn如果编写到处可用的程序,选Java。rnrn如果编写大程序,可能的话尽量用脚本语言如Python、Ruby,不行了再用Java和C。因为脚本语言带来了生产力。rnrn编写文本的处理程序用Perl或Ruby。rnrn编写知识的处理程序用prolog。rnrn编写最灵活,最模糊的程序用Lisp。rnrn编写office程序用vba。rnrn编写服务器端程序,PHP、(采用自己熟悉的语言来写,例如Perl、Python、Ruby)CGI、ASP、(熟悉Java就用)JSP都是选择。rnrn编写数据库程序用vb或delphi。rnrnrn各种语言的选择rn如果要追求性能和程序的能力,要完全发挥操作系统的能力,使用C/C++语言是合适的。在Windows环境下用VC,在Unix-like环境下用gcc。rnrn如果不是追求和操作系统完美结合,而只是性能,又要追求跨平台性,那么仍然选择C,但可以选择跨平台的库,如qt、gtk、fox、wxWindows。如果要编写游戏也有跨平台选择:SDL。rnrn如果不满意C领域标准的不统一,不满意C的容易出错,不满意C的面向对象特征不彻底。如果不在乎跨平台,Windows平台可以选择C#,maC平台可以选择CoCo。如果需要跨平台,可以选择Java。rnrn如果需要跨平台,又要广泛的支持的话,选择Java。rnrn在Unix-like下,最方便的工具语言是Perl,它有强大的社区和代码库的支持。rnrn如果只作为简单应用的工具语言,Python和Ruby是更好的选择,他们的跨平台移植性好,应用也比较广泛。其中Python更适合入门和交流,长期使用也不错。Ruby是对Python不满意的另一个选择,它提供了很多额外的功能。rnrn如果要选择一个程序的嵌入语言,原来有Lisp、Basic和Java,现在还可以选择Python和Ruby。rnrn如果在要求动态解释执行语言,而又不想学其他语言的话,C程序员的选择是pike,Java程序员的选择是beanshell。rnrn在Java平台,又想用脚本语言的话,可以用jython。rnrn最正统的基于文档的语言或叫动态页面语言是JavaScript。rnrn最专门的服务器端语言是PHP,当然也有很多其他选择。rnrnXML语言以XUL为最着名,dtml也算一个,你自己也可以用XML作为自己特殊用途的语言。比如jedit就用XML作为一种模式定制语言。XML语言是一种比较先进的趋势,比现有的语言在特殊领域更高效。rnrn要找容易实现的语言,Lisp和Tcl是选择。rnrnLisp的数据和程序融为一体的能力和自由是其他语言都没有的。现在出现了一个Lisp的现代化的变种:REBOL。rnrn如果有基于事实的编程的需要的话,prolog和Clips是必然。rnrnrn我为什么选择了Pythonrn首先声明,我编程只编应用程序,就是代替自己工作的小程序。如果编写系统程序总会用到C或Java的。rnrn我喜欢脚本语言,脚本语言不用编译就可以运行,非常便于修改,而编程序是一种经常性的活动,程序编完后总在不断的修改中,没必要搞的很隆重,还要编译。另外,脚本程序每个使用的人都可以随手拿来修改,不会出现还要去找源代码的情况。因此,C/C++和Java就被排除了。rnrn我喜欢简单的语言,不喜欢为了编写简单的程序而去学习大量复杂的规定,需要大量的学习才会的语言不是好语言,是把人当机器看。C/C++和Java都有严格但罗索的语法,有永远学不完的函数、类、库。让人看到就头大。而Perl有各种怪里怪气的速记符号,程序常常让人头晕。简单的含义除了容易学,还要功能丰富,常用到的东西要早就准备好,不用每个人都去写同样的数据结构程序等。Python有丰富的数据类型,有完备的面向对象的结构,有规则表达式等各种方便编程的模块。这个逻辑就是程序做的多,人做的就少,如果程序做的少,就要人做的多。这就是界面友好的问题。容易上手,功能丰富是程序设计的很重要的目标,Windows就是靠这个流行的。而Python也很好的体现了这点。而Perl象Unix的emaCs之类其它工具一样,功能强大,但太难学,太难懂。是比较违背人性的。rnrn关于性能。现在Cpu已经很强大了。除了很大的程序和系统程序,没必要关心性能。rnrn关于功能。如果不是编写系统程序和贴近系统的程序,没必要使用操作系统特别提供的功能。C是可以干任何事情,但它编程效率低,复杂。rnrn至于我为什么不用vb,因为vb太庞大了。我没必要实现一个小功能启动这么庞大的程序。太夸张。另外,vb没有类继承,虽然是应用编程,但如果要编稍微大的程序,总会用到类继承的。rnrnPython得强大得扩展能力使对Python得学习不会浪费。Python经过简单得处理能使用各种得C和C++库,也可以被C和C++调用。Python可以直接使用Java得类,也可以直接被Java调用。这样,对Python、Java、C得学习和使用经验都不会被浪费,还能相互补充。Python可以提高Java和C得编程效率,Java和C可以补充Python功能上得不足。Python还可以和Tcl直接交互,这种功能是内置得。期待Python能简单的调用Perl和PHP得功能。能使用Lisp和prolog更好。rnrnrnRuby和Python的比较rnrnPython和Ruby的相同点rn* 都强调语法简单,都具有更一般的表达方式。Python是缩进,Ruby是类Basic的表达。都大量减少了符号。rn* 都是动态数据类型。都是有丰富的数据结构。rn* 都具有C语言扩展能力,都具有可移植性,比Perl的可移植性更好。也都可以作为嵌入语言。rn* 都是面向对象的语言,都可以作为大项目的开发工具。rn* 都有丰富的库支持。rn* 也有最宽松的版权许可,除了一些工具属于GNU世界。rn* 都有Lisp特色的eval函数,也都能把函数作为参数。rn* 也有图形界面的Ruby的专门编辑器。rn* 都获得了广泛的C库的支持。如qt、gtk、tk、SDL、FOX等,Ruby计划实现SWIG接口。rn* 都有完善的文档。rnrn和Python相比Ruby的优点rn* 具有正则表达式和嵌入HTML的功能。Python也有正则表达式,但没有Ruby的应用方便和广泛。Python的嵌入HTML项目才刚起步。Ruby还有apaChe的mod模块。Ruby本身也实现和很多Unix工具,如raCC,doCtools。比Python更亲近Linux。rn* 比Python功能更完整的面向对象的语法。rn * Ruby的整个库都是具有类继承的结构。rn * 他的基本的数据类型和运算符都是可以重载的。rn * Ruby主要的功能都是通过对象的方法调用来实现的,而不是函数。Python也在向这方面发展,但没有Ruby做的彻底。rn * Ruby的类是更规范的单继承,还有接口等概念的实现。rn* Python可以实现在列表内的条件语句、循环语句,而Ruby用“块”的方式来实现这个功能,比Python的更灵活,更具有通用性。rn* Ruby具有类似Lisp的彻底的函数方式的条件语句、循环语句等。语句的表达能力更强。rn* 附带一些Unix工具,如raCC等。rnrn
[zt]c++面经
先发基本问题,再发编程问题..........rnrn想成为嵌入式程序员应知道的0x10个基本问题:rn预处理器(Preprocessor)rnrn1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)rn #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)ULrn我在这想看到几件事情:rn1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)rn2)懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。rn3) 意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。rn4) 如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。rnrn2 . 写一个"标准"宏MIN ,这个宏输入两个参数并返回较小的一个。rn #define MIN(A,B) ((A) << 3)rnstatic int a;rnrnvoid set_bit3(void) rnrn a |= BIT3;rnrnvoid clear_bit3(void) rnrn a &= ~BIT3;rnrnrn一些人喜欢为设置和清除值而定义一个掩码同时定义一些说明常数,这也是可以接受的。我希望看到几个要点:说明常数、|=和&=~操作。rnrnrn访问固定的内存位置(Accessing fixed memory locations) rnrn10. 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。rn这一问题测试你是否知道为了访问一绝对地址把一个整型数强制转换(typecast)为一指针是合法的。这一问题的实现方式随着个人风格不同而不同。典型的类似代码如下:rn int *ptr;rn ptr = (int *)0x67a9;rn *ptr = 0xaa55;rnrn A more obscure approach is: rn一个较晦涩的方法是:rnrn *(int * const)(0x67a9) = 0xaa55;rnrn即使你的品味更接近第二种方案,但我建议你在面试时使用第一种方案。rnrn中断(Interrupts)
VB 到底何去何从(ZT) ??
我转贴一篇关于VB前途的英文文章,希望有时间的网友帮忙翻译一下,让其他网友看一看。rnrnHas Visual Basic Lost Its Way?rnrn Paul Kimmel (view profile)rnFebruary 22, 2005 rnrnrnrnA director of information technology at an insurance company in the Midwest, who had more hair care products on his desk than you'd find at a Fantastic Sams, once fired me because one or two his permanent employees said I didn't know VB6. The reason they said I didn't know VB6 is because I told them that the Hungarian notation was ugly and I dared try to use VB6 like an object-oriented (OO) language.rnrnrnI tell you this for a couple of reasons. First, I have used almost every flavor of BASIC since ROM BASIC, including BASICA, GW-BASIC, Quick Basic, Basic for DOS, Visual Basic for DOS, VBA, and so on. Secondly, having grown up with BASIC and having made a lot of money over the years working with BASIC, I remember two distinct events: Visual Basic for DOS and Visual Basic for Windows. Some people made money programming in PIC BASIC or BASIC for DOS (like me), but BASIC didn't come into its own until Alan Cooper had his epiphany and invented VB for DOS. Then, VB really took the world by storm with VB for Windows.rnrnHow do I know these things for sure? I was programming with other things when these VB events occurred, and VB made things dramatically easier.rnrnVisual programming is Visual Basic's legacy. Object-oriented programming (OOP) is not VB's legacy.rnrnWhat Have You Done for Me Lately?rnThe last time VB was really innovative was when it made IDL seem to be a ridiculously hard way to use COM. VB made COM easy, but that is not nearly as important as visual programming for DOS and Windows.rnrnA huge division seems to exist in the VB community right now between people who love VB.NET because it is finally a full-fledged, object-oriented language and people who hate VB.NET (and refer to it as Visual Fred) because, well, it is now just another full-fledged object-oriented language. And, face it, many VB6 programmers are not computer science majors or formally trained software engineers, and they don't have the time, energy, or desire to master OOP.rnrnConsequently, Microsoft has to endure a malaise from its VB6 customers that would get a Microsoftie fired in two seconds.rnrnI have published two books on VB.NET. Today, few publishers are that interested in doing any more VB.NET books, because VB.NET isn't selling. It makes me wonder whether VB6 programmers are lazy, stupid, indifferent, mean-spirited, poor, old, retarded, illiterate, or what.rnrnThe answer, I think, is mostly none of the above.rnrnMicrosoft gave VB6 programmers something many of them never asked for, OOP, but VB's legacy is innovating software development by quantum leaps and bounds, not OOP. If you weren't programming 10 or more years ago, you probably don't remember a world of ANSI character-based screens or know what is at B800:0000 or where CGA memory is and why you needed to know, but VB for DOS elevated us to a level where we no longer needed to know how to draw boxes with ANSI escape characters or where CGA memory was. VB for Windows made it possible to put together a running Windows application in minutes—nothing fancy, but working nonetheless—instead of days. This is VB's legacy: significant innovation in the way we develop software, period.rnrnDid Microsoft Drop the Ball?rnIf I ran the Microsoft's VB team, I'd ask what's next for VB. If they told me, "operator overloading," I'd respond with the infamous Trumpism: "You're fired!"rnrnDon't misunderstand me. I love VB.NET. But, I also love OOP, C++, Java (a little), and Object Pascal. I love OOP languages, but VB was—and is not supposed to be—just more OOP noise in the world. VB is about shaking things up. Wondering whether Microsoft dropped the ball is a fair suspicion.rnrnWhere Do We Go from Here?rnI suspect that, down in some armpit-like dungeon under Chairman Bill's office, VB builders are madly working on the newest of the new, the next huge leap in software development.rnrnI don't think rectilinear, tri-chromatic, two-dimensional forms assembled painstakingly with reams of code is the end of the line. I think we are on the cusp of something new, and VB.NET is a necessary lily pad on the pond of innovation.rnrnWhat will this new thing be? I don't know. (If I knew, I'd build it.) It might be three-dimensional forms. It might be multimedia-laden, shaped forms, rich in color, content, and dynamism. The newest of the new might be a blurring of the lines between Windows and Web programming. (Why should we care whether our applications are local or distributed?) Even better, it might be bigger, more complex building blocks that move us from an age of rapid application programming to rapid application building, based on application blocks, or instead of components and controls, something I'll call aspects for now. Perhaps the next quantum leap will be applications that generate additional code based on patterns of use, or maybe the next version of Visual Basic will be all of those things and more or something totally different.rnrnI am just not sure what the next cool VB thing will be, but I smell it coming just like my dog senses an imminent rainstorm. I also think that Bill Gates is too smart not to be cooking up something in the dungeons of Redmond.rnrnI really don't know if anyone sees beyond rectangles and buttons. Maybe no one at Microsoft has even asked yet. I do know one thing though: The next huge paradigm shift will be based on .NET. This shift may not originate at Microsoft—although it has a high probability of doing so—but Microsoft's implementation of the newest of the new will be based on .NET. And if you don't know .NET, you won't be ready.rnrnWhat I Know For SurernVB hasn't lost its way. It is just in between the last paradigm and the next one. VB.NET is that mid-way point between Visual Basic for Windows and what's coming. The battle is not about full-blown OOP (VB.NET) versus partial OOP (VB6) or a subjective debate about which is better. OOP is better than non-OOP. It's not about which is easier—already having mastered a disjointed API, set aside your ego, and invested in learning a highly organized framework—the framework is better. VB.NET is better. It is about being prepared for the next quantum leap in VB and in programming.rnrnIf you do not master OOP, when VB makes the next VB-like quantum jump, you will be left in the dust. History will relegate your skill set to the same ash heap where those who stopped at FoxPro, Quick Pascal, or RBase reside.rnrnWhat will this quantum leap be? I don't quite see it yet, but I know it's coming just like a thunderstorm after a green Michigan sky. It's coming, and it will be big.rnrnAbout the AuthorrnPaul Kimmel is the VB Today columnist for www.codeguru.com and has written several books on object-oriented programming and .NET. Look for his upcoming books UML DeMystified from McGraw-Hill/Osborne (Spring 2005) and Expert One-on-One Visual Studio 2005 from Wiley (Fall 2005). Paul is also the founder and chief architect for Software Conceptions, Inc, founded 1990. He is available to help design and build software worldwide. You may contact him for consulting opportunities or technology questions at pkimmel@softconcepts.com.rnrnIf you are interested in joining or sponsoring a .NET Users Group, check out www.glugnet.org.rnrnCopyright © 2005 by Paul Kimmel. All Rights Reserved.rnrnrn
[zt]给生活的忠告
给你生活的忠告:rnrnrn多吃些粗粮.rnrn给别人比他们自己期许的更多,并且用心去做rnrn熟记你喜欢的诗歌rnrn不要轻信你听到的每件事,不要花光你的所有,不要想睡多久就睡多久。rnrn无论何时说“我爱你”,请真心实意。rnrn无论何时说“对不起”,请看着对方的眼睛。rnrn相信一见钟情。rnrn永远不要忽视别人的梦想。rnrn深情热烈地爱,也许你会受伤,但这是使人生完整的唯一方法。rnrn用一种明确的方法解决争议,不要冒犯。rnrn永远不要以貌取人。慢慢地说,但要迅速地想。rnrn当别人问你不想回答的问题时,笑着说“你为什么想知道?”rnrn记住那些敢于承担最大风险的人才能得到最深的爱和最大的成就。rnrn给妈妈打电话。如果不行,至少在心里想着她。rnrn当别人打喷嚏时,说一声“菩萨保佑”。rnrn如果你失败了,千万不要忘记汲取教训。rnrn记住三个“尊”:尊重你自己;尊重别人;保持尊严,对自己的行为负责。rnrn不要让小小的争端损毁了一段伟大的友谊。rnrn无论何时你发现自己做错了,竭尽所能去弥补。动作要快!rnrn无论什么时候打电话,摘起话筒的时候请微笑,因为对方能感觉到!rnrn找一个你爱聊的人结婚 , 因为当年龄大了以后,你会发觉喜欢聊天是一个人最大的优点。rnrn找点时间,单独呆会儿。rnrn欣然接收改变,但是不要摒弃你的个人理念。rnrn记住,沉默是金。rnrn多看点书,少看点电视。rnrn过一种高尚而诚实的生活。当你年老时回想起过去,你就能再一次享受人生。rnrn相信上帝,但是别忘了锁门。rnrn家庭的融洽氛围是难能可贵的。rnrn尽你的全力让家平顺和谐。rnrn当你和你亲近的人吵嘴的时候,试着就事论事,不要扯出那些陈芝麻,烂谷子的事。rnrn不要摆脱不了昨天。rnrn多注意言下之意。rnrn和别人分享你的知识,那才是永恒之道!rnrn善待我们的地球。rnrn不要愚弄自然母亲。rnrn忙自己该做的事。rnrn不要相信接吻时从不闭眼的伴侣。rnrn每年至少去一个你从没去过的地方。rnrn如果你赚了很多钱,在活着的时候多行善事。这是你能得到的最好回报。rnrn记住有时候,不是最好的收获也是一种好运。rnrn深刻理解所有的规则,合理地更新他们。rnrn记住:最好的关系存在于对别人的爱胜于对别人的索求之上。rnrn回头看看你发誓取得的目标,然后评判你到底有多成功。rnrn无论是烹调还是爱情,都用百分之百的负责态度对待,但是不要期求太多的回报。
IT厕所的遭遇(暴笑)ZT
一日,去逛电脑城,突然觉得一阵腹痛。不好,要如厕。急匆匆来到WC前,抬头只见门口上方挂一电子牌:上写“最新WIN2000 SERVER WC“ ,不禁赞叹:果然是IT,高科技! rnrn 好急,快进去,怎么门推不开?抬头一看,电子板上显示: “用户名不存在或密码错误,请找管理员” rnrn 给看门老头交了两毛钱,拿了个密码,急忙入内,冲向马桶,可是马桶盖怎么也打不开,我实在忍不住了,用力一拉,墙上弹出一块牌子:“!系统提示:您没有这个马桶的访问权限” rnrn 我靠!好在我知道一个超级用户密码,这时起了作用,在控制面板中输入后,马桶盖终于打开了…..长输了一口气,好舒服哦。 rnrn 完事,伸手去拿手纸,手纸却又没法从盒子里抽出来,不会吧,难道? rnrn 一转头,果然,又弹出了一个牌子“此纸盒已加密!” rnrn 我晕,正在急不可耐时,旁边蹲位有人伸过来一只手:“你第一次用WIN2000 WC吧,没关系,我们手纸共享好了” rnrn 谢谢,谢谢, 边道谢,边提好裤子, rnrn 一冲马桶,又弹一牌子:“病毒已清除!” rnrn 刚走两步,只听“砰”的一声,马桶盖大力的关上了,牌子上道: rnrn “连接超时,请刷新!” rn rnrn 好险!rn
泯灭人性的分数(ZT)
泯灭人性的分数(转自孔庆东的博客)rnrn前些天在路边买了一套五卷本的《苏霍姆林斯基选集》,每本都厚厚的八九百页,原价280元,书贩要60元,我料定在这个资本主义猖獗的时代,是没有人问津一位社会主义教育家的著作的,于是还价25元,最后以30元买下。rn 此书是教育科学出版社出版的,编辑印刷都很精良,但只印了五千。虽然我们的教育部门还表面上把苏霍姆林斯基列为伟大的教育家,但大多数学生和教师根本没有热情去读读他的著作。苏联不是垮掉了么?所以苏联的一切都是错误的。现在流行的是哈佛女孩剑桥小子什么的,快乐教育素质教育狼心狗肺教育等等。不能讲狼牙山五壮士了,因为弹尽粮绝了还不投降,那叫“没有人性”。不能讲草原英雄小姐妹和戴碧蓉、欧阳海了,因为那是给黑暗的年代涂脂抹粉。不能讲岳飞是民族英雄了,因为他抗拒全球化,大搞窝里斗,屠杀少数民族兄弟,是野蛮的民族主义的“暴政前哨”。不能讲鲁提辖拳打镇关西了,因为那是赤裸裸的弘扬暴力,一个基层警官公然殴打优秀的民营企业家,破坏了招商引资的大好局面。不能讲武松打虎了,因为他是虐杀珍稀保护动物,造成景阳岗地区环境严重污染的罪魁祸首……有些学校连王愿坚的《七根火柴》也讲不下去,因为学生们质疑道:红军过草地,明知道没有人烟,为什么不带上方便面?起码的野外生存常识都没有,饿死活该。《白毛女》也讲不下去了,因为学生们认为那完全是rn瞎编:喜儿为什么不嫁给黄世仁?杨白劳欠债不还钱,这是公然破坏法制,畏罪自杀,死有余辜。喜儿一旦嫁给黄总,就会过上民主自由的幸福生活,怎么会头发都变白了,最后投入了恐怖主义分子的环抱……rn 学生们这样想是可以理解的,因为他们就是在美国思维铺天盖地狂轰滥炸的教育中长大的。中国真正分裂的不是海峡两岸,而是人心。教师们放弃了自己的教育责任,一是不敢教育,一教育就是干涉人权,一生气就是禽兽教师,饭碗掌握在由家长的金钱所控制的校长手里;二是也不会教育,因为自己的头脑就不清楚,自己就认为只有低劣的人性才是人性,只有贪生怕死见利忘义损人利己欺软怕硬才是人性,高尚一点的、慷慨一点的、勇敢一点的、侠义一点的,全是没有人性。所有的英雄楷模高士名流,一定要寻出他的不高大不光明的若干隐私而后快,以证明自己并不格外卑劣。邓小平说改革开放以后最大的失误是教育,当时我理解不深,心想大家都是平等的,谁教育谁啊?rn 苏霍姆林斯基说:“每个人在少年期和青年早期就应教育别人,为别人的利益和幸福贡献自己的力量。我们有这样一条教育信念:如果一个人不教育任何人,不关心任何人,不保护也不爱护任何人,不往别人的心灵倾注自己的点滴心血,那么,他本人也就不能成为一个有教养的人,而可能成为一个难以教育的人…rn…”(第一卷708页)我在十几年前当中学老师的时候,也给学生讲过苏霍姆林斯基的一些话,还跟北京二中的校领导说:要让学校的墙壁都会说话,这是苏霍姆林斯基说的。但那时不过是在“引经据典”的意义上用他的话的。rn 针对智育第一的状况,苏氏批评道:“分数已成了学校衡量人的标准和尺度……人在分数后面消失了,他的无限性和多维的精神世界也在分数中泯灭了……有多少儿童和少年早晨上学‘像是去受苦刑’……灾难不仅在于他们走出学校时是个失败者,而且还在于一回忆起学校都终生感到痛心,并对严肃的阅读和书本rn毫无兴趣。”(第五卷528页)这是苏霍姆林斯基讲《公民的起点》时说的。我这几年的教育问题讲座中,也经常指出我们的教育是要培养千千万万心智愚昧的打工仔还是千千万万精神健全的好公民的问题。我们是真心搞社会主义也好,打着社会主义旗号搞资本主义也好,总要让我们的孩子成为既合群又独立的、既能干rn活也能思考的快乐的人吧?rn 很多该写的文章都没有写,因为我总是耽于阅读,即使我认为的垃圾书有时候也看得进去,因为那是工作需要。庞杂无边的阅读占据了我的大量时间,这使我认识到,我可能是用一种“勤奋”来掩盖自己的“懒惰”。今后要少读点,少看点,多锻炼,多休息。rn 不过这仍是希望而已,比如今天就休息不了。下午三点半,要去地坛书市跟读者见面。所以现在写了博客,希望家里有苏霍姆林斯基著作的朋友,翻看翻看,他的文字很流畅的,读后有一种白桦林里散步的清新的愉悦。rn 五月的鲜花,开遍了原野……rn
多发了三五百[ZT]
售楼处的停车场里,横七竖八停着各处来的轿车,自行车,助动车。门口排队的是要买房的精英,把门口塞得很满。厚厚的rmb用各色的皮包包者,一捆一捆地,填没了这只手和那只手之间的空隙。门口进去就是上海市最大的楼盘售楼处了,预售单位就排在市场的那一边。朝晨的太阳光从整洁的玻璃天棚斜射下来,光柱子落在柜台外面晃动着的脸上的汗珠上。 rnrn  那些人大清早骑自行车出来,穿越了半个城市,到了售楼处,早饭也不吃一下,便来到柜台前面占卜他们的命运。 rnrn  “内环20000,外环15000,10000以下的没了。”售楼小姐有气无力地回答他们。 rn  “什么?” rnrn  各路精英几乎不相信自己的耳朵,美满的希望突然一沉,一会儿大家都呆了,看来今年结婚的希望落空了!  rnrn  “在去年里,不是说内环10000,外环5000的么?” rnrn  “3000也卖过,不要说5000了.” rnrn  “哪里有涨得这样厉害的!” rnrn  “现在是什么时候你们还不知道么?各地的买房团潮水般的涌过来,没听说外国人都来了吗? ” rnrn  “过些天还要涨呢!” rnrn  原来出来犹如赛龙船似的一股劲儿,现在在每个人的身体里松懈下来了。最近天照应,很多人多发了三五百的年终奖,一向节俭的父母也不再作梗,银行卡上的数字很快接近了6位,谁都以为该得透一透气了。 哪里知道临到最后的占卜,却得到比高考落榜或没有学位更坏的课兆! rnrn  “还是不要买的好,我们回去呆在家里吧!”从简单的心里喷出了这样的愤激的话。 rnrn  “嗤,”小姐冷笑着,“你们不买,人家就关门了么?各处地方多的是买房子的人,温州的买房团还没有走,苏北,西北,华南的买房团就要涌来了。现在各地的有钱人和老板也多得是。” rnrn  “好的楼盘和别墅是为他们留着的。” rnrn  苏北,西北,华南的买房团,有钱人,老板 ,那是遥远的事情,仿佛可以不管。而已经快要结婚的年青人不买房,却只能作为一句愤激的话说说罢了。怎么能够不买呢?在的日子是要过的,为了谈恋爱,结婚生孩子,当初父亲母亲盼望改善居住条件,一家人窝在30个平方的房子里的日子断是不能再过下去的。 rnrn  “我们到宝山去买房吧,”在宝山,或许有比较好的命运等候着他,有人这么想。 rnrn  但是,小姐又来了一个“嗤”,眨着微翘的睫毛说道:“不要说宝山,就是找到崇明去也一样。我们同行公议,这两天的价钱是内环20000,外环15000,10000以下的没了。” rnrn  “到去买没有好处,”同伴间也提出了驳议。“这里到宝山交通不便,天知道每天花在路上多少钱!就说依他们给,哪里来的钱?” rnrn  “小姐,能不能便宜一点?”差不多是哀求的声气。 rnrn  “便宜一点,说说倒是很容易的一句话。我们这公司是拿本钱来开的,你们要知道,便宜一点,就是说替你们白当差,这样的傻事谁肯干?” rnrn  “这个价钱实在太高了,我们做梦也没想到。前年的房价是5000,去年的行情又跌到4000,不,你小姐说的,3000也卖过;我们想,今年总该比4000便宜一点吧。哪里知道要15000!” rnrn  “小姐,就是去年的老价钱,每平方4000吧。” rnrn  “小姐,工薪族,你们行行好心,少赚一点吧。” rnrn  另一位小姐听得厌烦,把手里的空咖啡杯扔到街心,睁大了眼睛说,“你们嫌价钱高,不要买好了。是你们自己来的,并没有请你们来。只管多罗嗦做什么!我们有的是楼盘,不给你们,有别人的好给。你们看,又有几群买房人挤过来了。” rnrn  三四张预购单好不容易从人堆里挤过来,预购单后面是充满着希望的流汗的脸。他们随即加入先到的一群。斜伸下来的光柱子落在他们的西服的肩背上。 rnrn  “听听看,今年什么价钱。” rnrn  “比去年都不如,内环20000”伴着一副懊丧到无可奈何的神色。 rnrn  “什么!”希望犹如肥皂泡,一会儿又进裂了三四个。 rnrn  希望的肥皂泡虽然迸裂了,快结婚的年青人总得买房;而且命里注定,只有落地在这XX市。XX市有的是house and room,而西服的空口袋里正需要room。 rnrn  在楼层好和坏的辩论之中,在朝南和朝北的争持之下,结果拿着预购单的朋友把一捆捆的钱给了各个代表处,换到手的是数字或大或小的一张房产合同。 rnrn  “小姐,交房期短些,配套好些的,不行么?”买房订了不明白的合同,好象又被他们打了个折扣,怪不舒服。 rnrn  “穷瘪三!”夹着一枝口红的手按在键盘上,鄙夷不屑的眼光从眼镜上边射出来,“一分价钱就一分房子,谁好少作你们一个平方。我们这里没有交房短,配套好的,只有这样的房。” rnrn  “那末,换物业公司的吧。”从名称上辨认,知道手里的物业管理不是知名公司的。 rn  “吓!”声音很严厉,左手的食指强硬地指着,“这是违反合同的!你们不要,可是要想吃官司?” rnrn  不要这指定物业就得吃官司,这个道理弄不明白。但是谁也不想弄明白,大家看了看合同上的Terms,又彼此交换了将信将疑的一眼,便把名字签在了上面。 rnrn  一批人咕噜着离开了XX楼盘售楼处,另一批人又排者队挤了进来。同样地,在柜台前迸裂了希望的肥皂泡,赶走了临近年终加工资和年终奖的所感到的快乐。同样地,把万分舍不得的自己的积蓄送进售楼处的口袋,换到了并非花好月圆的不清不楚的room。 rnrn  装修市场上见得热闹起来了。   rnrn  拿着money来的买房朋友上售楼处来,原来有很多的计划的。工资现在年年不涨涨,2-3千只能算老板开恩,还多是既没法真正消费,消费地方又少的消费卡,太吃亏了加上缴税杂费生活费交通费,1年怎么说也要2万.父母的钱不好意思要,须得赚十万八万回去。电器也要买几件。 rnrn  陈列在停车场里的花花绿绿的polo,听说只要几万RMB一辆,早已眼红了好久.女人盘算自己几时结婚,几时生子,都有了预算。有些女人的预算里还有几次悠闲的旅游,一辆轿车,或者种满鲜花的体验小布尔乔亚的后花园。难得最近天照应,工资加了三五十,很顺利就拿到了工资,年终奖。让一向捏得紧紧的手稍微放松一点,谁说不应该?买书,交际,支付生活开支大概能够对付过去吧,不止付过去之外,大概还有多馀吧。在这样的心境之下,有些人甚 至想买一个House。这东西实在怪,前面有停车位、后面有小花园,周边环境又好,空气不错,做结婚新房,比现在住的地方来,真是一个在天上,一个在地下。  rnrn  他们咕噜着离开售楼处的时候,犹如走出一个一向于己不利的赌场——这回又输了! rnrn  输多少呢?他们不知道。总之,袋里的一张银行卡的金额没有剩下多少是自己的了。还要每月添补上不知在哪里的多少张钞票,银行才会满意,这要到拿到的时候才知道。   rnrn  输是输定了,马上骑着自行车回去未必就会好多少,在市中心走一转,买点东西回去,也不过在输账上加上一笔,况且有些东西实在等着要用。于是街道上见得热闹起来了。   rnrn  他们三个一群,五个一簇,拖着短短的身影,在拥挤的街道上走。嘴里还是咕噜着,复算刚才得到的代价,咒骂那黑良心的房产商和中介。女孩臂弯里钩着包,或者一只手牵着BF,眼光只是向两旁的店家直溜。有几个给所谓名牌大减价勾住了,赖在那里不肯走开。   rnrn  “小姐,这件衣服是最后一件,穿在你身上是既有气质有漂亮,还有30%DISCOUNT,机会不多哦.”故意作一种引诱的声调。  rnrn  当,当,当,——“哈根达斯真小资,218一个真公道,先生,带一个去吧。”   rnrn  “喂,先生,这里有各色polo,特别大减价,8。5万,包教会开,要不要买辆回去?”  rnrn  几家的店伙特别卖力,不惜工本叫着“先生,小姐”,同时拉拉扯扯地牵住“先生”的西服,他们知道惟有刚来时,"先生"们的口袋是充实的,这是不容放过的好会。   rnrn  在节约预算的踌躇之后,“先生”把剩下的钞票一张两张地交到店伙手里。房租之类必需付,不能不花,只好找合租。各种摆设的价钱太“咬手”,不买了吧。电器呢,预备买34寸电视的就买了一个25寸的,预备买组合音响的就单买了个CD机。崭新的polo开出去试车,刚刚合式,给GF一句“不要买吧”,便又开了回去。想买House的简直就不敢问一声价。
[zt]J2EE架构和过程
Java2企业版(J2EE)平台由四个关键部分构成:规格说明、参考实现、兼容性测试套件和蓝图(BluePrint)计划。蓝图描绘了分布式组件架构最好的实践和设计指导方针。本文基于Rational统一过程和BluePrint示例程序介绍一个八步骤J2EE开发方法学。rnrn通过阅读这篇文章,你可以了解许多重要的J2EE架构的话题,并且能够扩展和修改这个简单的方法来解决自己特有的业务问题。在商业世界里,我们使用Java2企业版(J2EE)解决业务问题、开发商业软件或者提供转包服务。如果一家公司想使用多层体系结构建造一个电子商务网站,通常在整个开发生命周期中需要涉及到管理者、架构师,设计人员、编程人员、测试人员和数据库专家。为了使不同部门能高效率地工作,他们经常需要一个软件开发过程。一些经典的开发过程包括瀑布模型、快速应用开发(RAD)和极限编程(XP)。rnrn本文我们将集中于一个流行的软件工程过程,即Rational统一过程(RUP)。RUP提供了一个给角色分配任务和责任的严格方法。它的目标是保证我们在预期的进度和预算内开发出满足用户需求的高质量软件。rnrn在J2EE开发中使用RUP出于以下三个原因。首先,RUP以架构为中心;在将资源分配给全面开发之前,它先开发一个可执行的架构原型。其次,RUP是迭代并基于构件的。该架构基线通常包括一个框架或基础设施以便于通过迭代增加构件,在不影响系统其他部分的前提下定制和扩展一个系统的功能。最后,RUP利用一门工业标准语言--UML,可视化建模系统的架构和构件。RUP有四个不同的开发阶段:初始、细化、构造和移交。然而,本文从技术角度覆盖了J2EE开发的八个必要活动,主要集中在系统架构。rnrn1、需求分析需求分析描述系统应该做什么或不应该做什么使得开发者和客户可以签署一份原始的商业合同。可以使用业务概念、领域术语、用例和用户界面(UI)模型形成功能需求文档。对于非功能需求,如性能和事务,可以在需求文档附件中详细说明。根据参与项目深度的不同,确定在纸上还是使用HTML建造高层UI模型。rnrn在一个典型电子商务系统中的两个用例。查看订单(viewOrder)用例告诉我们一个用户通过Web界面登陆系统、查看订单列表,点击链接查看特定订单的详细信息。增加订单项(addLineItem)用例告诉我们浏览产品列表、选择感兴趣的产品并将它们添加到购买订单中。rnrn2、面向对象分析分析人员构造问题领域模型:类、对象和交互。分析应该与技术和实现细节无关,并包含一个理想的模型。对象分析可以帮助理解问题并获得关于问题领域的知识。因为业务过程的改变比信息技术的改变要慢得多,所以必须要维持一个不含技术细节的纯领域模型。这两个步骤--需求分析和面向对象分析--不是J2EE特有的;对许多面向对象方法学来说,它们都非常通用。rnrn一个宠物店示例程序的高层对象分析模型。它用图例说明了我们从需求分析用例中识别的主要概念。我们把这些概念建模成对象并标识它们的关系。为了开发架构,可以选择一个纵向联合部分(verticalpiece)--经常是关键部分,如订单领域对象模型--进行对象设计、实现、测试和部署。(纵向联合部分,一个RUP概念,是指系统的一小部分。起始点是图1所示的用例子集和图3所示的领域分析模型。一个纵向联合部分的实现结果是一个全功能的微小系统,包括UI层的JSP,中间层业务对象如EJB和后端数据库。)可以将从原型中获得的经验应用于领域对象并作为对象设计阶段的指导。rnrn3、架构规格说明经过前面两个步骤,业务领域问题和需求应该比较明确了。现在,我们将工作集中在技术策略和架构上。架构是指所有构件组合定义系统的一个蓝图:结构、接口和通讯机制。我们可以进一步将架构分为企业级和应用级架构。企业级系统架构企业级系统架构包括硬件和软件基础设施、网络布局、开发、测试、生产环境等等。它反映了一个企业的长期投资。开发前,需要评估已存在的软件和硬件基础设施,如果不完全支持J2EE的话,增加新构件更新已存在系统。你需要彻底地评估硬件,包括计算机、路由器、网络转换器和网络布局,因为它们都影响到系统的性能和可靠性。rnrn4企业级架构:一个多层企业级架构包括以下几个主要构件:一个Web浏览器客户端,可能在也可能不在客户端组织的防火墙内一个HTTP服务器,是一个对公众开放的Web服务器。它通常位于一个称作DMZ的子网内Web容器主表示层和可能的业务逻辑构件应用程序容器主业务逻辑构件关系数据库管理系统(RDBMS)和数据库主数据、数据逻辑你使用的系统架构类型依赖于安全、性能和可靠性的需求,也依赖于组织的财政状况。在缺少经验的情况下,也可以适当地从一个修理厂电话订购一台简单地二手计算机。
Hibernate与Jdbc的效率测试
首先,建数据库表,采用MySQL数据库。 CREATE TABLE `t_jobstat` (  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,  `jobNo` varchar(45) DEFAULT NULL,  `clickSum` int(10) unsigned DEFAULT NULL,  `showSum` int(10) unsi...
[zt]JSF生命周期实例详解
http://lipeng3252642.blog.163.com/blog/static/101626428200811532127925/ JSF生命周期一共有6个phase.关于这六个phase的也比较好理解。大致如下:第一阶段:恢复视图.         仅仅重建组件树(视图). 由FacesServletr控制器进行管理的&quot;用户请求&quot;(内容,一般为JSP)&quot;,创建唯一视图ID(XX...
zt【PHP开源 内容管理CMS】
Mambo 点击次数:625 Mambo是一个功能丰富、采用PHP+MySQL搭建、最优秀的动态门户引擎/内容管理系统(CMS),能够用于建设拥用几个页面到几千个页面的网站。它具有: 1、强大的内容编排功能 只需要熟悉简单的在线编辑方式就可以维护自己的网站内容 2、丰富、精美的模板/主题可供选择 3、优秀的性能 采用独有的网站缓存技术,让动态网站拥有静...
ZT:Calling conventions on the x86 platform
http://www.angelcode.com/dev/callconv/callconv.htmlrnrnThis is a document that I wrote as research for the AngelCode Scripting Library. Since the library uses assembly to make the interaction between the script engine and the host application I needed to have complete knowledge of how the calling conventions are implemented by different compilers. To my surprise there were a lot more differences than I had initially thought. Most of the differences are related to C++ features, so the differences can be understood as there were no standard when the compilers were first written. Today there is a standard, but I believe that it doesn't mention how calling conventions should be implemented. Which leads to binary incompatibility between compilers, even though the source code is compatible.rnrnThe differences doesn't stop AngelScript from supporting each of the compilers. Though new compilers may have to make a few changes in order to follow the conventions used. As support for more compilers are added to AngelScript I will add those compilers to the article.rnrncdecl rnstdcall rnthiscall rnfastcall rnfurther reading rnrn--------------------------------------------------------------------------------rnrncdeclrnThis calling convention is the default for C programs and also global functions in C++ programs. Generally the function arguments are passed on the stack in reverse order so that the callee can access them in the correct order. The caller is responsible for popping the arguments after the function returns, which makes it possible to use the ... to send runtime defined arguments. Return values are returned in the registers.rnrnVisual C++ / Win32rnArguments are pushed on the stack in reverse order. rnThe caller pops arguments after return. rnPrimitive data types, except floating point values, are returned in EAX or EAX:EDX depending on the size. rnfloat and double are returned in fp0, i.e. the first floating point register. rnSimple data structures with 8 bytes or less in size are returned in EAX:EDX. rnClass objects that require special treatment by the exception handler are returned in memory. Classes with a defined constructor, destructor, or overloaded assignment operator are examples of these. rnObjects larger than 8 bytes are returned in memory. rnWhen a return is made in memory the caller passes a pointer to the memory location as the first parameter (hidden). The callee populates the memory, and returns the pointer. The caller pops the hidden pointer together with the rest of the arguments. rnMinGW g++ / Win32rnArguments are pushed on the stack in reverse order. rnThe caller pops arguments after return. rnPrimitive data types, except floating point values, are returned in EAX or EAX:EDX depending on the size. rnfloat and double are returned in fp0, i.e. the first floating point register. rnObjects with 8 bytes or less in size are returned in EAX:EDX. rnObjects larger than 8 bytes are returned in memory. rnClasses that have a destructor are returned in memory regardless of size. rnWhen a return is made in memory the caller passes a pointer to the memory location as the first parameter (hidden). The callee populates the memory, and returns the pointer. The callee pops the hidden pointer from the stack when returning. rnClasses that have a destructor are always passed by reference, even if the parameter is defined to be by value. rnGCC g++ / LinuxrnArguments are pushed on the stack in reverse order. rnThe caller pops arguments after return. rnPrimitive data types, except floating point values, are returned in EAX or EAX:EDX depending on the size. rnfloat and double are returned in fp0, i.e. the first floating point register. rnAll structures and classes are returned in memory regardless of complexity or size. rnWhen a return is made in memory the caller passes a pointer to the memory location as the first parameter (hidden). The callee populates the memory, and returns the pointer. The callee pops the hidden pointer from the stack when returning. rnClasses that have a destructor are always passed by reference, even if the parameter is defined to be by value. rnrn--------------------------------------------------------------------------------rnrnstdcallrnstdcall is the calling conventions used by the Win32 API. It is basically the same as the cdecl convention with the difference in that the callee is responsible for popping the arguments from the stack. This makes the call slightly faster, but also prevents the use of the ... operator.rnrnVisual C++ / Win32rnArguments are pushed on the stack in reverse order. rnThe callee pops arguments when returning. rnPrimitive data types, except floating point values, are returned in EAX or EAX:EDX depending on the size. rnfloat and double are returned in fp0, i.e. the first floating point register. rnSimple data structures with 8 bytes or less in size are returned in EAX:EDX. rnClass objects that require special treatment by the exception handler are returned in memory. Classes with a defined constructor, destructor, or overloaded assignment operator are examples of these. rnObjects larger than 8 bytes are returned in memory. rnWhen a return is made in memory the caller passes a pointer to the memory location as the first parameter (hidden). The callee populates the memory, and returns the pointer. The callee pops the hidden pointer together with the rest of the arguments. rnMinGW g++ / Win32rnArguments are pushed on the stack in reverse order. rnThe callee pops arguments when returning. rnPrimitive data types, except floating point values, are returned in EAX or EAX:EDX depending on the size. rnfloat and double are returned in fp0, i.e. the first floating point register. rnObjects with 8 bytes or less in size are returned in EAX:EDX. rnObjects larger than 8 bytes are returned in memory. rnClasses that have a destructor are returned in memory regardless of size. rnWhen a return is made in memory the caller passes a pointer to the memory location as the first parameter (hidden). The callee populates the memory, and returns the pointer. The callee pops the hidden pointer from the stack together with the rest of the arguments. rnClasses that have a destructor are always passed by reference, even if the parameter is defined to be by value. rn
ZT 各大互联网公司技术选择
网站 前端 后端(服务端) 数据库 Google.com JavaScript C、C++、Go、Java、Python、PHP BigTable Facebook.com JavaScript PHP、C++、Java、Python、FBML,Ajax,Erlang、D、Xhp MySQL YouTube.com Flash、JavaScript C、...
EL表达式无效问题《ZT》
jstl.jar、standard.jar 博文链接:https://demitong.iteye.com/blog/858675
(zt) ipad 使用技巧整理
from :http://www.douban.com/group/topic/14167746/ 1 不需要信用卡和paypal注册美国账号 http://www.penddy.com/ipad-early-experience-of-novice-and-more-chart.html 步骤如下: a.在itunes最下方选择国家为美国 b.在itunes中的app ...
ZT中国制造的神奇硬盘
Jitbit软件创始人Alex Yumashev在博客上讲述了他的一位朋友的一次非同寻常的经历(图片)。 他的朋友在中俄边境城市的一家硬盘修理中心工作,几天前一位客户拿着一个500GB的USB硬盘来修理,该硬盘是从河对岸的一家中国商店里购买到的,价格极其廉价。在商店里能正确演示,但到家里后却无法工作了,保存进去的电影只能播放5分钟。硬盘表面贴着三星商标。修理中心的人都笑疯了,因为这不是第一次有人拿
我为什么会选择成为ZT交易所的保荐人?
交易所这么多,保荐人计划如此繁多,节点合伙人计划遍地都是,然而作为圈内一名最普通的投资者,我却毅然选择了ZT.COM区块链数字资产交易平台,成为ZT交易所的保荐人, 究竟是什么原因促使我下定决心成为ZT交易所的保荐人呢? ZT.COM区块链数字资产交易平台自上线以来,一直紧密布局全球化生态建设,一直默默无闻的干实事。在上线半年内,ZT交易所的注册人数已经突破100万,用户地区也遍布全球145个国家...
寒~~高一男孩在我家隔壁炼TNT--我疯了!!! (zt)
寒~~高一男孩在我家--我疯了!!! rn--------------------------------------------------------------------------------rnccl4 4月19日 09:19:10 rnrn--------------------------------------------------------------------------------rn
一个老程序员的心里话 (zt)
rnrnrn一个老程序员的心里话 rnrn时间:2002-12-18 22:56:59 阅读 1313 次 rnrn(本来不想写的,实在不想看到某些人误人子弟,混淆视听,耽误了中国IT的未来,所以一吐为快) rnrnrn  一些人总是发出一些错误的声音,形成了劣胜优汰可怕的现象。他们在误导着中国,把我们的后继军训练 rnrn成软件蓝领――――胸无大志,目光短浅,稍有点成绩就自满就自高自大的人,浑不知天外有天,外国正在虎视眈 rnrn眈盯着中国的庞大市场。 rnrnrn  由于软件蓝领的呼声人们不再致力于培养大批的高精尖人才,掌握国际尖端技术的人。而是花费心思培训 rnrn一群猪出来给外国人利用。把自己的命运交给了外国人手里。结果,在最容易的管理软件领域也输给外国人, rnrn外国人派几个人过来,利用中国的劳动力,开发出软件,再卖给中国。大量的利润到了外国人手里。而我们的 rnrn中的一些人还在沾沾自喜:外国人给的工资高;外国的软件好。 rnrnrn  奴才! rnrnrn  低品质产品是没人要的。软件蓝领也不例外。 rnrnrn  他们不知道中国制造一个优秀程序员的难度,还在患红眼病。程序员制造,你可算过成为一个程序的高昂 rnrn代价?没日没夜地工作,没有女朋友,感情是一片沙漠,没有钱打工者的命运是悲惨的。 rnrnrn  真想知道究竟是哪个公司的程序员为了五十块钱跳槽,是哪个公司说需要软件蓝领。 rnrnrn  在马年,过春节,万家欢乐的时候,程序员们还在工作,用他们瘦弱的身躯,支撑起中国的软件工业。 rnrnrn  他们把不思进取比喻为工作稳定。 rnrnrn  国外可以在一个单位效力几十年。在国内不行。为什么?没有培训,没有上升机会。你被压榨完后就被扔 rnrn掉。哪个有志向的人甘于这样的命运? rnrnrn  中国的程序员是世界上最好的程序员。他们不计报酬,没日没夜地工作。没有女朋友,没有节假日,可能 rnrn几年后他们一无所有。他们仍在加班。 rnrnrn  一、 程序员为什么要跳槽?有两个报道: rnrnrn  1、“程序员为了五十块钱就跳槽”“万元月薪请不动程序员”“20%的程序员跳槽后都去了外企” rnrnrn  2、印度的程序员比中国稳定。 rnrnrn  另有两个报道: rnrnrn  1、 本科生去美国工作两年后即可年薪10万美元。当然,他们是加薪很快。 rnrnrn  2、 国外的企业都有培训。很吸引人。许多人是冲着培训去的。 rnrnrn  国外可以在一个单位效力几十年。在国内不行。为什么?没有培训,没有上升机会。你被压榨完后就被扔 rnrn掉。哪个有志向的人甘于这样的命运? rnrnrn  中国的程序员是世界上最好的程序员。他们不计报酬,没日没夜地工作。没有女朋友,没有节假日,可能 rnrn几年后他们一无所有。他们仍在加班。 rnrnrn  有培训,就意味着你不会永远拿着现在的薪水。意味着你在不断进取,不断进步,能力越来越强,你就可 rnrn以担当越来越重的工作,就可涨工资。给人看到未来。即使你对现在的薪水待遇不满意,你通过自身的辛勤不 rnrn懈的努力和奋斗,就可达到你要的待遇。你不用嫉妒别人。只要你努力就可达到他甚至超过他。 rnrnrn  没培训,意味着不思进取,思想僵化,要被淘汰。没有希望,看不到未来。你注定被淘汰。别人通过拼捕 rnrn获得的成功你就要嫉妒。因为你永远达不到那个高度。只有暗算他,把他拉下来,你才能达到心理的平衡。 rnrnrn  去外企,你可以看到一个光明的前途,你可以不断进步。路越走越宽。你在那个企业工作一段时间后,学 rnrn到了很多东西。出来后你就是另外一个人。我曾经想去一个企业,不是因为他的工资高,而是他那里有培训, rnrn甚至送到国外培训,从他那里出来后可以当总经理。 rnrnrn  在国内,你的路会越走越窄,最终无路可走。因为你没有学习,落后于时代,再找到新工作都很难。 rnrnrn  国内公司只会大呼疾呼人才难留。他们没想过,他们是如何对待人才的,他们只会残酷剥削,搞政治斗争 rnrn,整人。 rnrnrn  国内公司不去学习别人的先进的管理方法,反倒怨来怨去,浑不去找自己自身的原因。 rnrnrn  1、 为什么要跳来跳去? rnrnrn  因为在本公司内没有上升机会。 rnrnrn  中国程序员是艰苦的,也是聪明的。他们利用一切时间进行学习。就拿我来说,军训完毕后,离计算机机 rnrn房下班只有十五分钟时间了。一口飞跑到机房,只有十分钟可以学习电脑。就这十分钟,也要利用上。 rnrnrn  当他们发现本公司没有培训机会,没有学习机会,可这一切又怎能挡得住前进的脚步?国内公司管理一般 rnrn是很差的,员工没有成长机会和发展空间。唯一的办法就是跳槽。某人戏称,每跳一次,工资就要加一倍。就 rnrn拿我来说,每跳一次工资也确实是加一倍。拼命学习获得了知识的高增长,个人的高速进步,这没错。而雇主 rnrn能看上我,也确实是自己能力已经达到这个水平。但越来最后每跳一次的时间越长。也许是因为进步速度慢了 rnrn吧。后来又有些后悔,跳来跳去没有根,人到了一定程度就要扎下根来,把一项技术搞透,就需要长时间的积 rnrn累,反而又踏实下来了。 rnrnrn  所以说,那些不断跳来跳去的程序员,其实是仍在初级阶段,到了中级阶段基本就稳定下来了,在某一个 rnrn细分方向上获得突破。但我建议是,如果不能达到工资翻一倍的水平,或者目标公司没有特别之处,最好不要 rnrn跳。否则每跳一次,原来积累的人际关系就会丢掉,而技术又没有长足的进步,如此跳来跳去,只会毁了自己 rnrn,更可能越跳工资越低。到了一定层次后就不能再满足于一些小钱,而是要做事业了。衡量的目标,不是当前 rnrn多少钱,而是以后会有多少钱。 rnrnrn  一般来说,国内公司也没培训,初级阶段获得迅速成长的惟一途径是自我学习跳槽。中级阶段要稳定下来 rnrn。因为你这时已经到了“高原阶段”,工资也到了高原,精力也没以前充沛,不能再没日没夜加班加点了,也很 rnrn难再获得突破,要想技术飞速进步只能去国外了。或者自己苦心钻研。现在许许多多的程序员通过自己的努力 rnrn都到了此阶段。 rnrnrn  2、 为什么要跳到外企? rnrnrn  外企有信用。让人放心。有培训,有高薪,老板把你当人看,剥削较轻,不像国内企业那样敲骨吸髓。可 rnrn以找到女朋友。一般可以找到大施身手的空间。但有随时被裁危险。但一般是做得非常开心、顺心。 rnrnrn  老板说给你多少钱一般不用担心他会找理由克扣。这样你就可以尽可以放心地大施手脚。 rnrnrn  下面列举几个事实,说明为什么要跳到外企: rnrnrn  1、广州惠创软件公司http://www.hcweb.com.cn/ ;在广州体育西路。 rnrnrn  其老板以前是搞外贸的,发了财。我拿自己的全部代码(我拥有版权的软件),他卖.他老板说,你只能给我 rnrn打工.你自己去运作,赚了钱,你这个软件开发者和版权拥有者只能拿到40%以下.而且你来到公司三个月后,代 rnrn码的版权要归公司 。 rnrnrn  我起身走了。如果我能出国的话,我一辈子都不愿意再回来。 rnrnrn  2、广州市小聪软件公司http://www.jxc.com.cn rnrnrn  我去之前谈好,我不要工资,我自己独立运作市场和软件开发,他公司只提供一个营业执照,赚钱分给他一 rnrn半。辛苦了一个月,击败了众多对手后,一个十万元的项目总算有要签合同了。那个老板说,公司调整。你划 rnrn到市场部。项目的10%拿到市场部,你再从市场部分得点数。(到我手里只有不到5%)。从下个月起,每个月 rnrn1000块钱工资。你说话不算数,出尔反尔,没信用。我抗议。抗议无效。算工资的话,也行,那你把上个月的 rnrn1000块钱工资算给我才行。不,上个月没工资。只能从下个月开始算工资。那我走,你把项目的15%提成算给 rnrn我,这是你定的规定。没有15%,你只能拿5%。如果你现在走,那5%也拿不到。 rnrnrn  跟这样的公司混,你有未来吗?我能拼命给他干吗? rnrnrn  我拿起背包头也不回地走了。一分钱也没拿到。找到的新工作是,一个月一万。打工。 rnrnrn  我想把项目带走。但客户怕得不到保障。因为我没有公司。最后仍是把项目给了那个进销存公司。 rnrnrn  3、晶苑集团。港资企业http://www.crystalgroup.com rnrnrn  我对晶苑集团怀着深深的尊敬,并祝 晶苑集团 南中国电脑部 叶富华先生 马到成功,新春愉快。 rnrnrn  我印象最深的就是外企的信用。 rnrnrn  面试时,接待小姐端来一杯茶水。我很感激他们对我这样一个普通程序员的重视。(我去国内公司面试没 rnrn有一家给我端水的。他们让你先做一份考题。做完了你回去等通知。后来我有经验了,去之前先问问怎样面试 rnrn,只要是做题,见不着考官的,一概不去。再后来发展到只要是国内企业的,一概不去。)我的工资是上一份 rnrn工作的将近二倍。 rnrnrn  欣喜若狂。公司有买被子津贴(公司给你买被子)、吃饭补助、住宿补助、加班费(1.5元/小时)。有加 rnrn班费好啊。拼命加班吧。 rnrnrn  每天工作十八个小时到二十个小时。在四个月零十天的工作中,我只休息了一天。其他时间时间每天都像 rnrn玩命似地。。。没有人逼我们,是我们自愿的。 rnrnrn  公司从香港总部派人到大陆对我们进行培训。支出专门的图书经费让我们建立电脑图书馆。请来专门的电 rnrn脑教师,列出培训大纲,每天对我们进行程序培训。 rnrnrn  4、香港迎新丰软件公司。港资 http://www.welcomeERP.com ;位于广州天河软件园。 rnrnrn  我做了四天,什么成绩都没做出来。但公司照给工资不误。午餐费、住宿费、交通费、保险费都给了我。 rnrn很有信用。这样的公司,员工不会说它的坏话。只会尊敬、热爱和拥戴这个企业。 rnrnrn  老板很好。我们只要使他的资本达到20%的利润率就行了。 rnrnrn  5、矩元鞋业。台资。 rnrnrn  月薪8000请了个程序员(这个程序员不是我,我没有那么菜)。不知什么原因,反正做了两个月什么也没 rnrn做出来。公司虽然大呼上当:-),但仍然是客客气气地付了一万六给他。这份胸襟,试问哪个国内企业能做得 rnrn到? rnrnrn  结论: rnrnrn  国外企业已经完成原始积累,所以剥削相对轻很多0
Theory and Applications of Compressive Sensing下载
This thesis develops algorithms and applications for compressive sensing, a topic in signal processing that allows reconstruction of a signal from a limited number of linear combinations of the signal. New algorithms are described for common remote sensing problems including superresolution and fusi 相关下载链接:[url=//download.csdn.net/download/xueying9827/3282340?utm_source=bbsseo]//download.csdn.net/download/xueying9827/3282340?utm_source=bbsseo[/url]
数字水印技术下载
数字水印技术的基本知识,包括水印的特性、分类及算法 相关下载链接:[url=//download.csdn.net/download/sxlliqi/4297540?utm_source=bbsseo]//download.csdn.net/download/sxlliqi/4297540?utm_source=bbsseo[/url]
bmp图像预处理MFC程序下载
图像处理技术:几种图像预处理算法,需要的同学赶紧下载了,可以直接运行的。是在做车牌识别的时候用过的 相关下载链接:[url=//download.csdn.net/download/a446065841/5168112?utm_source=bbsseo]//download.csdn.net/download/a446065841/5168112?utm_source=bbsseo[/url]
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件
我们是很有底线的