很多游戏开发者都是由于Unity而“被迫”采用C#的。但用过一段时间,就会衷心惊叹:通心面。如果有些老师没感觉到很香,有可能是没仔细和其他词汇比较:)
一、C#良好相容了值类别/提及类别,在发展中逐步解决了其他高级词汇没化解好的问题综观主流词汇,C词汇在句法上是以值类别为依据,借助操作符实现提及类别;而Python/Lua等词汇,是以提及类别为依据。
而C#很好得总结了前人的经验,在基础句法上就区分了值类别和提及类别。对初次接触程式设计的老师来说这一点难造成学习障碍,但是只要掌握了它,就会给实际组织工作带来极大便利。
C#与 Java 都起源于 C/C++词汇,她们在程序语言方面有很多共同之处。除了 Java JVM 和 C#.NET CLR 有很多相同内部结构上的关联性之外,她们各别的开发团队都有各别的发展方向,她们关注的是各别的词汇应该成为什么样子。我们并不想苦恼于某两个词汇比另两个词汇好,我们只想详列出 C#开发者能加进而 Java 中没的那些优点而已。1、 LINQLINQ (Language-Integrated Query,词汇集成查询)于 2007年引入到C#,以帮助开发者从各种统计管理工具uctC#中的内部结构体近似于类。实际上,两个 struct 甚至能被认为是两个“轻量类”,因为它能包含缺省、自变量、方式等等。两个内部结构体和两个类之间最大的区别在于内部结构是值类别,而类是提及类别。3、async/await在一段标识符中初始化 async,或者更明确地初始化方式,这个方式单厢在另两个缓存上继续执行,不会堵塞当前缓存。当标识符运转到 await 命令的时候,它会继续运转(await 的句子)。如果这时 async 标识符还没完成,那么继续执行中的流程会返回到初始化点。4、baseURL:省的总是写派生类的Pthreads,而C++中只有谷歌提供了super能表示派生类,不幸的是linux上并不识别这东西能直接采用Type类别作为变量,从而根据Typecodelet.C++就根本无法通过厂房模式找到对应的厂房然后codelet,有点不方便C#词汇最重要的五类成员依次是存储统计数据的表头,研磨统计数据的方式和通知其他类的该事件,这样的组织形式使精密的C#流程如同一家模组化厂房,原材料(统计数据)通过该事件这一“输送带”在炼铁厂(类)间传递,炼铁厂采用表头作为自己的临时仓库以存放原材料和调料,而相同炼铁厂的相同方式则依次负责原材料在本炼铁厂内的研磨成品基本词汇优点我不说了,大家说的都很全面。我根本无法结合我的组织工作说一下。首先是我这里伺服器应用程序全部C#,核心逻辑标识符两边通用,Hardoi不难手忙脚乱。而且说实话,高手用C#写的伺服器,还是巨块巨稳定的。再次是C#要感谢unity3d的选择和指指真心,没unity3d,C#真走不了这么远。unity3d的IL2TPP,让你用C#写标识符,承揽时替你载入邻近地区标识符,完全是C#的组织工作管理效率加邻近地区标识符的运行管理效率,值类别我有,操作符我也有,写至极叼unity3d校对出来运转管理效率越来越低。我还要啥c++自行车?