软件设计之美
郑晔
开源项目 Moco 作者
19890 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 42 讲
软件设计之美
15
15
1.0x
00:00/00:00
登录|注册

加餐 | 再八卦几门语言!

你好,我是郑晔!
软件设计是一个比较烧脑的话题,对于一些同学来说,学起来还是有一些辛苦的。所以,我准备了这次加餐,让大家在前面高密度地狂奔了一段时间之后,稍微休息一下。
我在第 8 讲中讲了程序设计语言的发展,有同学觉得不过瘾,想了解其他语言的发展过程。那好,我们就来谈谈几门比较吸引眼球的程序设计语言。

C#

当年 Java 开始起势的时候,微软还处于自己的巅峰,它当然不想错过 Java 这么有前景的东西。但是,微软从来就不会老老实实按照标准做事,所以,你会看到微软手中的 Basic 已经很不像 Basic 了,微软的 C++ 也有着自己的扩展。
于是,微软也想做出一个自己的 Java,J++ 就出现了。但是,这不是一个正常的 Java,引发了 SUN 的不满,将微软告上法庭。最终,双方庭外和解,微软不再祸害 Java,J++ 停止更新。
但有一点不得不承认,微软在 Windows 上的 JVM 性能是当时最好的,因为操刀 J++ 的是 Anders Hejlsberg,他是全世界最顶级的程序员。微软为了不与 Java 开启的受控(Managed)代码浪潮擦肩而过,于是,转身又推出了 C# 和.NET。
C# 的初版本简直和 Java 一模一样,一个 Java 程序员几乎不用培训就可以成为一个 C# 程序员。所以,从语言的角度来说,最初的 C# 并没有对行业做出什么贡献。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

C#和JavaScript作为备受关注的程序设计语言,各自经历了不同的发展历程。C#在Anders Hejlsberg的介入下不断发展,尽管受到微软下降期的影响,仍然是一门值得学习的语言。相比之下,JavaScript经历了曲折的发展,从最初为应付工作而设计,到在浏览器中的表现力得到提升,再到Node.js的出现,逐渐成为一门全平台覆盖的语言。尽管JavaScript曾备受争议,但在软件开发历史中却留下了浓墨重彩的一笔。 在系统编程方面,C语言虽然是霸主,但随着时间的推移,人们开始寻求替代。Go语言的简单语法设计和处理并发的方式给人眼前一亮的感觉,尽管起初并未引起广泛关注,但随着云计算基础设施的兴起,Go语言终于有了用武之地。另一方面,Rust作为系统编程语言的有力竞争者,通过其安全特性和内存管理方式赢得了关注,背靠着LLVM基础设施,为新兴语言的发展提供了巨大的好消息。 在技术趋势的判断上,了解技术的发展历史是至关重要的。对于未来的语言发展,Go和Rust都展现出了潜力,但其应用领域和特点各有侧重。读者可以根据自身需求和技术发展趋势来选择未来看好的语言。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《软件设计之美》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(20)

  • 最新
  • 精选
  • 西西弗与卡夫卡
    语言的流行通常需要一个杀手级的应用,比如RoR之于Ruby,Docker之于Go,Spring之于Java

    作者回复: 是这样的,杀手级应用助力语言爆发。

    2020-06-19
    3
    28
  • hello zero
    python应该会因为AI继续焕发第二春下去

    作者回复: 这点还真是,Python找到了AI这个增长点。

    2020-06-21
    18
  • Janenesome
    郑老师,我能说像看到了华山论剑一样嘛,这篇文章真是太吸引人了。 以后学习新语言的时候就要刷一刷这篇文章,了解这个语言的前因后果以及特性。

    作者回复: 程序设计语言本来就是很吸引人的,每个语言背后都有着自己的故事。

    2020-10-20
    6
  • escray
    从语言本身来说,我还是比较喜欢 C# 的,多年以前也写过 ASP.NET 的程序。不过 C# 确实“时运不济”,而且替技术人员背了不少黑锅,比如 “ASP.NET 就是慢”之类的。我还是挺喜欢 C# 后来的泛型、Lamda 表达式、LINQ 之类的“语法糖”。 从就业市场的角度讲,C# 的程序员的平均薪水一直不怎么高(可能是因为上手比较容易),岗位也不多。现在有了 .NET Core,不知道会不会好一点。 学过一点 JavaScript 和 Node.JS,相比较而言,我还是更把时间投入到 Go 或者是 C# 上面。听了一次前端的直播(Vue.js),我就从入门到放弃了。 之前是打算去学一下 Go 语言的,不过看了专栏的介绍,觉得 Rust 也是一个好机会。

    作者回复: 每种流行的语言都有它流行的原因,值得探索一下。

    2020-06-23
    2
    6
  • qinsi
    Wasm最初的规范中不支持GC,所以Rust和C/C++天生都可以"直出"Wasm,Go和Java等就不行。但要让前端开发去掌握系统编程语言还是要求高了点且没必要(其他的选择像是AssemblyScript虽然门槛低一些但还不完整;Yew可以重用一些Elm的经验,但Elm本身也太小众了)。有GC的话虽然影响性能,但确实可以降低语言的门槛。

    作者回复: 感谢你的补充信息!

    2020-06-20
    4
  • 看了老师的文章 我决定去学学rust

    作者回复: 加油,希望你有收获!

    2020-06-22
    3
  • 有学识的兔子
    很感谢老师的分享,开阔了不少眼界。 由于自己的行业相对比较传统,没有接触特别前沿的领域和技术,不好判定语言的走势。 就程序设计语言,又让我回想起那句:语言即是程序库,程序库即是语言。语言的出现是伴随着工程问题的出现,通过新的语言特性更好地解决现有的工程问题。 前段时间阅读了《c++的程序设计与演化》,较直观地看到语言的前世今生,了解语言的历史对写好一门语言也是挺重要的

    作者回复: 一个程序员,保持对技术趋势的关注很重要。

    2020-06-20
    3
  • 行与修
    个人以为语言应差异化竞争,百花齐放,多出些最佳实践和案例相互成就。 我比较看好微软的.NET 5.0,立足实际又不乏野心,公司本身也具备做好的条件和能力。不要太在意短期吸粉与排名,做好自我完善和迭代也许就水到渠成了。

    作者回复: .NET 本身的能力只是一方面,还要看微软怎么让它摆脱单一平台的刻板印象。

    2020-06-19
    3
  • Jxin
    1.微软早期本就是屡战屡败,屡败屡战顽强存活下来的...失利和失败在那个时候也算是家常便饭了。 2.很遗憾,语言这个话题不敢乱说。虽然也会几门语言,但也就看得懂语法,能写点玩具的程度。也就java熟悉点。只能说,无论以后各种语言多么璀璨。java都挺难退出历史舞台,毕竟在普及程度或则说体量上java占比很高,这算得上已有市场优势。而且java的社区的积累殷实。新语言哪怕只是翻译,一个一个组件改写成自己的程序库也要挺久。所以kt,grovy,scala这些可以基于java程序库开发其实挺好的。能改善java比较死板的语言特性,还能用其丰富的程序库。更何况java还有jvm这个玩意,这玩意可是实现了多语言的虚拟机(jit编译器graal)。(一门语言除了前端编译器(文法解析),是否还应包含后端编译器呢?这是个问题)

    作者回复: Java 在可见的未来都会长期存在,它的生态太庞大了。

    2020-06-19
    3
  • aoe
    原来Go的背景这么震惊!Rust好强

    作者回复: 多了解一些背后的故事,都很精彩

    2021-10-22
    2
收起评论
显示
设置
留言
20
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部