游戏开发论坛

 找回密码
 立即注册
搜索
楼主: square.jerry

关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

[复制链接]

31

主题

630

帖子

635

积分

高级会员

Rank: 4

积分
635
发表于 2005-3-2 16:52:00 | 显示全部楼层

Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

.Net好像已经移植到BSD上面了,还是另一个我记不太准,反正是个开源的操作系统。

41

主题

340

帖子

345

积分

中级会员

Rank: 3Rank: 3

积分
345
发表于 2005-3-2 17:41:00 | 显示全部楼层

Re: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

fujingqiu: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

.Net好像已经移植到BSD上面了,还是另一个我记不太准,反正是个开源的操作系统。

那个项目叫mono,是.Net在Linux上的移植,现在已经有许多人在用。主要是开发网络游戏的服务器端。

0

主题

64

帖子

64

积分

注册会员

Rank: 2

积分
64
发表于 2005-3-2 20:08:00 | 显示全部楼层

Re: Re: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总

square.jerry: Re: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结


先问一句,你了解.net多少?
以后不需再笼统的说谁快谁慢了,具体程序具体分析。再说一句,.net甚至可以跨unix平台,只是现在unix的厂商不给实现。并不是说不可以。


请问你又了解多少?
.net可以跨UNIX平台?不要听人说了有个mono,就来对我们说.net是跨平台的。
语言和工具的发展,都是在方便的基础上,增加了系统资源的消耗和降低了效率。因为机器不“值钱”了,人的劳动“值钱”了。看不到这一点,就和相信永动机这类东西存在一样。
打个比方,垃圾收集这样的机制,早在1959年就有人提出了。但当时的机器能力,承受不了这个代价。
微软以前的MFC对商业的游戏都是过于庞大的东西,以后的.net framework更是难以接受。

2

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2005-3-2 20:11:00 | 显示全部楼层

Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

这个...楼主的言论有点误导的感觉...

楼主说的第一点是对的,就不说什么了

但关于托管堆和垃圾回收的言论实在有点...-_-b,java和c#之所以比C++慢,大半的原因就是因为垃圾回收机制,这个是C#拿效率换安全的结果。使用了垃圾回收之后,将不会再有memory leak,但也必须为此付出相应的代价,那就是隔一段时间必须进行垃圾回收,垃圾回收是由一个独立的线程执行的,在回收时的同时,它还要完成压缩托管堆的任务。如果一个程序频繁地生成新对象,而导致经常需要垃圾回收的话,那么它比相应的C++程序会慢不止一个数量级。

分代标记回收算法,是目前垃圾回收算法中最有效率的,但这也只能减轻垃圾回收带来的负面影响。要知道在没分代回收算法的时候,使用垃圾回收的程序语言的性能要比C++差几个数量级!

至于第五点,我不知道楼主有没有看过rotor的类库实现(不要告诉我你不知道什么是rotor),如果你看过的话就不会这么说了,事实上现在的.net类库就是win32 API的封装。.net如果不通过native接口的话,还不具备访问硬件的能力。

P.S .net运行时是可以免费从MS网站上下载的,并没有盗版一说

P.S 又 P.S 现在mono已经很成熟了,除了不支持CAS之外,已经和MS提供的CLR没有什么差别了,甚至win form部分也通过wine库来实现了。可以说是前途无限。

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
发表于 2005-3-2 20:16:00 | 显示全部楼层

Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

P.S .net运行时是可以免费从MS网站上下载的,并没有盗版一说

看明白我说的,我是说.net framework

2

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2005-3-2 20:20:00 | 显示全部楼层

Re: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

tarkey: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

P.S .net运行时是可以免费从MS网站上下载的,并没有盗版一说

看明白我说的,我是说.net framework



是我没有说清楚,.net framework SDK也可以免费下载的

31

主题

630

帖子

635

积分

高级会员

Rank: 4

积分
635
发表于 2005-3-2 20:45:00 | 显示全部楼层

Re: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

Hush: Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

这个...楼主的言论有点误导的感觉...

楼主说的第一点是对的,就不说什么了

但关于托管堆和垃圾回收的...

哪有产生那末多对象的?哪种语言也经不起这么胡折腾。
明明该用数组的地方你要是非得用链表的话,就算机器指令也慢死你!
C++和C#性能都差不多,性能主要取决于数据结构的运用。

2

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2005-3-2 22:56:00 | 显示全部楼层

Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

在.net里,数组也是对象(System.Array),一样是分配在托管堆上的,如果这个数组包含的元素是值类型,那么这些值类型也是在托管堆上的...所以如果用.net要不分配对象是很难的...

31

主题

630

帖子

635

积分

高级会员

Rank: 4

积分
635
发表于 2005-3-3 09:37:00 | 显示全部楼层

Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

正常的分配对象没什么关系,垃圾回收没有那么次。我以前编的JSP页面速度跟静态页面一样快,每个页面还包括多次数据库访问。

31

主题

630

帖子

635

积分

高级会员

Rank: 4

积分
635
发表于 2005-3-3 09:44:00 | 显示全部楼层

Re:关于对.net语言(c#/VB.net/managed c++等)认识的误区总结

并且C#会比Java快一点。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-25 10:10

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表