C#的进化 C#发展史、C#1.0-10.0语法系统性梳理、C#与JAVA的对比

前言

C#也使用了十年有余了。

一路走来,见证了微软从封闭走向开放,从平台捆绑,到成为活跃于Github的重要贡献者。亲历了C#的开创性引领和影响了诸多语言,也看到了其他语言的优秀机制被有机的融合进C#(好吧,我承认语言之间都在互相抄)。在微软的“开发者至上”理念加持下,C#变得越来越好用。如今,.Net 6已经发布,这是.Net家族结束混乱的割据,统一后的第一个LTS版本,也是号称迄今为止最快的.Net。回顾C#的发展历史,一路走来感慨万千。本着温故而知新的精神,和CSharper那该死的想要“安利”的冲动,感觉是时候对C#做个全面的总结了。

写本文还有一个现实原因:在如今的各大技术区中,鲜有细致地讲解C#全版本语法特点(Feature)的文章。而我也发现有不少博主对一些语法理解有所偏差,例如:大多数的文章都没能很好的阐述C#中枚举器(IEnumerator)和迭代器(Iterator)的区别,也没有很好的说明LINQ和迭代器的紧密联系。而对C#语法和Java语法做出全面对比的文章也不是很多。作者希望通过此一文填补这些空缺。

本文将以C#版本为时间线,从C#1.0到C#10.0梳理每个版本的语法。并尽可能与Java做出对比

本文目标人群主要是:

  1. CSharper

    1. 想对C#从1.0到10.0的语法特点进行系统梳理的人。
    2. 计划转Java,或者纯粹好奇,想了解C#与Java有哪些异同的人。
  2. Javaer,或者其他非C#的开发者:
    1. 对C#好奇,想对C#做个全面了解的人。
    2. 因编写多语言的SDK,需要实现C#版本的人。
    3. 计划转C#,通过此文可以直接上手开发的人。(我知道没有

      C#的进化——C#发展史、C#1.0-10.0语法系统性梳理、C#与JAVA的对比相关推荐

      1. Kafka 0.10.0文档翻译二

        1.快速开始 本教程假设你从零开始,没有已存在的Kafka或zk数据 1.1 下载代码 下载 0.10.0.0 release版本,并解压 > tar -xzf kafka_2.11-0.10. ...

      2. kafka0.9 java commit_kafka0.9.0及0.10.0配置属性

        名称 说明 类型 默认值 有效值 重要性 zookeeper.connect zookeeper集群的地址, 可以是多个, 多个之间用逗号分割 string localhost: 2181 ip1 : ...

      3. 假设用于通信的电文由字符集{a,b,c,d,e,f,g}中的字母构成。 它们在电文中出现的频度分别为{0.31,0.16,0.10,0.08,0.11,0.20,0.04}。【MOOC答案】

        目   录 1.题目 2.答案and详细题解过程 1)为这7个字母设计哈夫曼编码: 1.1.答案 1.2.详细题解过程 2)为这7个字母设计等长编码,至少需要几位二进制数?[3位] 2.1.答案 2. ...

      4. Kafka: Producer (0.10.0.0)

        Producer API入门 ProducerRecord 说明 异步发送流程 2.1 用户线程调用send将record压缩到BufferPool中2.2 发送调度 Producer设计说明 Pro ...

      5. 小米5s+刷+android+8.0,【小米5S标准版 解账户锁线刷包】MIUI V8.0.10.0 刷机 工具+驱动+教程!紫火提供版...

        [小米5S标准全网 解账户锁线刷包]含刷机工具+驱动+教程!机客盟提供版,基于官方MIUI V8.0.10.0.MAGCNDH适用于2015711版纯净,稳定,流畅,省电版 刷机包里面包含 刷机工具 ...

      6. 红米8A的root步骤(MIUI 11.0.10.0 稳定版 安卓9)

        手机root记录的第四篇. 红米8A便宜又耐跎,很适合作为测试机. 具体的操作步骤如下: 1.当然是BL解锁,这个不赘述了. 2.使用w大(wzsx150)对应安卓9的"TWRP-3.3.1 ...

      7. Kafka学习整理三(borker(0.9.0及0.10.0)配置)

        Kafka日志本身是由多个日志段组成(log segment).一个日志是一个FileMessageSet,它包含了日志数据以及OffsetIndex对象,该对象使用位移来读取日志数据 * borke ...

      8. kafka 0.10.0.0 版本

        kafka 0.10.0.0 版本 一.安装kafka 1)下载路径:http://apache.fayea.com/kafka/0.10.0.0/kafka_2.11-0.10.0.0.tgz 2) ...

      9. kafka 0.10.0 producer java代码实现

        首先导入包 将kafka目录下的libs中的jar包导入 用maven建立 <dependency><groupId>org.apache.kafka</groupId& ...

      最新文章

      1. 关于华为的E180 3G 无线网卡在windows 7 上的驱动问题
      2. 2016 CVPR 德州仪器 ADAS Tutorial
      3. lua代码格式化工具_FFLUA——C++嵌入Luaamp;扩展Lua利器
      4. android 关闭多点触控_Cocos Creator关闭多点触摸的问题
      5. python微信开发实例 pdf 百度网盘_用python看女神微信里的百度云资源有啥?
      6. Nacos服务发现实践
      7. 基于Modbus TCP-IP协议的WEINVIEW HMI与PC通讯
      8. 算法笔记_面试题_18.动态规划_模板及示例十几道(上)
      9. IE, FF, Safari前端开发常用调试工具(转载)
      10. 系统字体服务器,把字体放到服务器
      11. php hex2bin_PHP bin2hex()函数与示例
      12. openlayers示例教程002:简析EPSG:4326 和 EPSG: 3857
      13. 画二元函数即三维图像的函数及matlab代码
      14. mysql 合并同类项_使用Excel处理交易数据同一ID下的多条交易记录
      15. 拉线式位移传感器的原理
      16. 微信群被封怎么办?微信群如何防封?一招解决永不封群!
      17. 复习专栏之---面试总结
      18. dubbo之使用nacos作为注册中心
      19. RPA机器人流程自动化
      20. 单个java文件中引入jar包

      热门文章

      1. Spring面试之循环依赖详解
      2. UEG-F-10H-L抗干扰中继电器
      3. Cesium逼真水面,动态水波,倒影
      4. 一行代码实现电脑微信多开------Windows cmd 无需记事本
      5. 寻找iPhone内存泄漏:Leaks工具指南
      6. 电动汽车起火事故显著增加,再次说明能买燃油车就别买电动汽车
      7. winform调用html,C#_C#通过html调用WinForm的方法,本文实例讲述了C#通过html调用W - phpStudy...
      8. python人工智能算法包_Python 人工智能算法工具包 SimpleAI
      9. php 多音字,PHP多音字拼音处理方案
      10. 原来HR喜欢的简历长这样