大家觉得 Rust 语法丑吗?
Rust 语言是一种内存安全、性能高效的系统编程语言,它的语法设计非常具有表现力和可读性。虽然 Rust 的语法和其他编程语言有所不同,但这并不意味着它的语法丑陋。事实上,Rust 的语法设计非常简洁、清晰,易于理解和使用。
Rust 语言的语法特点如下:
总之,Rust 语言的语法设计非常简洁、清晰,易于理解和使用,虽然它和其他编程语言的语法有所不同,但这并不意味着它的语法丑陋。
引言 王垠在2016年写下这篇文章:《对 Rust 语言的分析》[1]。 当时觉得这篇文章对 Rust 语言的分析太偏颇,但是王垠说这篇文章会一直更新。...首先,语法美丑是很主观的事情。至少我并不认为这语法丑陋,而且我也不反对有人说 Rust 语法丑。 如果要公正客观的评价一门语言的美丑,我认为至少要结合这门语言的设计哲学(动机)来评判。...而不是你觉得,你认为。 Rust 美学之一:显式之美。...但我对编程语言有一个基本的认知我觉得应该大家都比较赞同的,那就是,任何一门非玩具编程语言的出现,都是为了解决一些现实里的问题,对不对?...当你理解了 Rust 所有权机制的时候,你还会说这样的语法奇葩吗?同一个变量,不管重新绑定了几次,它总是对那个内存区域掌握所有权。
Repo 【系列】Rust 的 OOP 编程研究 这是一个系列文章,目的是对于有以往OOP编程经验的程序员,看一下在Rust中如何实现/做到OOP编程的思维和模式。写得非常细致。推荐。...Read More Read More 2 Read More 3 Read More 4 用 Rust 实现 HTSP 协议 作者其实在2017年就用Rust实现了一版,现在新写了一篇文章,讲他如何用最新的异步语法来升级了之前的程序...在写作过程中,感觉 Rust 很好,很好,很好~~~~ 甚至自己做了一个EVA的图?虽然有点丑。 ?...Read More orion - 又是一个Rust密码学库 Rust密码学生态现在已经是第一完善的梯队了。这都是区块链带来的机遇吧?...Repo Fnnls - Rust 实现的 FNNLSa算法库 这个算法是Matlab中用于处理矩阵的算法,论文在这里。Rust 实现版本基于 ndarray。
不再需要把整個編譯项目目錄创建好 Read more IntelliJ Rust 更新 #98 支持await/async语法 Read more 使用Rust加速Ruby MRI 一个使用Rust加速...9012年了,你的磁盘空间就这么不够用吗,都干啥了?运行一次的时间我没测过,但我觉得就算真的是59ms我也是可以接受的,因为在我的反应时间之外,并没有多卡。...这是Rust社区,Rust文化的体现,就是让大家感受到更好的「人体工程学」。除了高亮显示,还有很多功能,比如支持git、扩展属性等。 所以,为什么要重写exa呢?...是为了给大家节省时间,提升工作效率啊,同志们! 同样,有很多优秀的Rust重写的命令行工具,比如ripgrep,你怎么不说说它的搜索性能呢?...说了这么多,主要是想说明: 用Rust重写或者新开发的命令行App,是为了让咱们这个世界更加安全、美好。这个重写,并不是盲目的。在需要安全、需要性能的地方,也不会含糊。大家都试试新工具吧。
大家都说我丑,我真的很丑吗?” 禅师笑而不语,端起一杯水,浇到程序员脑袋上。 程序员不解:“你的意思是,我每天都洗头就不那么丑了?” 禅师回答说:“丑到端水水更流,举杯浇丑丑更丑。”...因为我是一名女程序员吗?” 禅师问:“你知道男人为什么喜欢大海,而不喜欢湖吗?” 女程序员想了想:“我知道了,因为大海挑战大,男人都喜欢挑战,所以喜欢大海,对吗?”...只有像您这样心无所系,才能无忧无虑,对吗?”...因此心情烦躁,静不下来,我觉得心堵很痛苦。” 禅师笑笑抬手向南方一指,悠悠说道:“去看看大海吧。” 程序员若有所思的问:“这是要我陶冶情操,感受海的博大胸怀吗?”...禅师摇摇头:“如果大海能够,带走你的矮丑。”
3 用Rust后性能更高 你知道吗,Figma公司在2016年前后,开发了一款协作式用户界面设计工具。...4 用Rust后bug更少 85%的谷歌程序员觉得,和其他编程语言相比,Rust代码的准确性更胜一筹。看看图5就知道了。...大家在2024年开始真心认同Rust这个编程语言,因为它在内存管理上超级安全,而且提高了编程的效率。...但是,Rust代码就有整洁的错误处理,还有模式匹配可以确保所有情况都被处理,包括以后新增的情况。 6 掌握Rust至少要学2个月 你知道吗?...而且,超过一半的谷歌程序员觉得Rust的代码看起来更轻松。学了两个月以后,67%的谷歌程序员已经能用Rust写出漂亮的代码,33%的程序员甚至觉得Rust跟他们最擅长的语言一样好用。
因为我感觉前端的三件套是没有办法写一些复杂函数的所以我觉得如果做一个没有网络的软件好像不能用前端三件套。那应该用什么呢 C#、QT 吗?...首先我觉得这位同学应该是最近接触了很多前端或后端方面的知识、了解了 API 接口调用等,才导致自己有一点点 “小迷糊了”。...只不过可能没有用户界面,丑了点罢了。 为什么现在绝大多数的应用都依赖网络呢?...比如写桌面端应用可以用 C++ 的 QT Creator、前端 JavaScript + Electron / Tauri、C#、Rust、Java Swing / JavaFX、Python Tkinter...不知道大家还有没有什么其他的方法呢?欢迎在评论区留言讨论吧~
面对 Rust 的火爆现状,一些开发者发出了灵魂提问:2023 年,Go 还值得学习吗?...我在职业生涯早期用的是 Java 和 Ruby,所以编写 Go 和 Rust 代码一直让我有点畏惧、觉得自己掌握不了。...也就是说,除了 Go 语法之外,我们的学习曲线还必须考虑到标准库这个部分。 另一方面,把功能从语言转移到标准库,意味着大家只需要专注学习跟当前开发需求相关的库。...换个角度想,不改变编程方式的新语言,能叫新语言吗?而且在使用其他语言时,Rust 教会我们的安全思维同样意义重大。...Python 或者 Ruby 程序员可能觉得 Rust 限制太多,但其他人可能觉得这种清晰明确的约束也不错。
用 Rust 来写个应用,这个想法颇久了。之前呢,要么找不到合适的场景,要么觉得 Rust 门槛有些高。直到最近呢,刚好对底层编程有点想法,便想着用这门语言做点东西玩玩。...Rust 使用易懂的语法避免了段错误 (segmentation faults) 并保证了线程安全。...==,Go 有构建工具吗?可能是 Makefile 吧 和 Web 的无缝结合 是的,作为一个追求跨平台的开发人员,我特别看好 Rust 的两个 Web 相关的方向。 高性能 Web。...基于 Ownership、Borrowing、Lifetime 的内存管理机制 缺点 从上手难道上来说,我觉得 Rust 是比 Go 更加复杂的。...Rust 的诸多语法,都有些不合直觉。除此,Rust 还有一个功能非常强大的宏(macro)系统。嗯,每多一个特性,就多一点点的复杂度。
Hoare 后来在 Reddit 评论中感叹道,“终有一天,我可能会写篇〈我心目中的真正 Rust〉的博文,告诉大家我当初想象中的 Rust 和如今真实的 Rust 间其实有着巨大差异。...比方说,在文中“复杂的语法”这部分,Hoare 就抱怨说 Rust 仍然难于解析。“它虽然比 C++ 更易用,但跟 C++ 比较本身就说明它的易用性不足。...我觉得这才是 Rust 的正确发展方向,但事实证明这似乎跟大多数人对于 Rust 的预期截然相反。”...Hoare 甚至给出了不少细节: “Rust 社区中的很多人认为「零成本抽象」是 Rust 语言的核心承诺。我永远不会这么讲,而且我个人觉得这种机制本身就有问题。...大家可以想见,这篇博文在登陆 Reddit 之后,很快引起了各种各样的讨论。一位用户明确表示:“我真希望能拥有 Hoare 设想中的 Rust,那听起来很美。”
我们不会特别深入到语言的内核层面,而是更希望帮助大家开阔眼界,循序渐进地掌握 Rust 技能树,能够在各种场景下灵活运用 Rust。...在训练营里,我们会从 Rust 的基础语法讲起,到最后完整的系统架构实践。课程内容包含语法、数据结构、Rust 周边生态工具、跨端应用和架构设计,帮助你从其他语言平滑迁移到 Rust。...,从入门到精通(不过大家不必过于害怕课程量:第一周和第二周十几个小时的素材量是非常态,随着大家对 Rust 的熟悉,随后的内容会慢慢回落到正常的范围)。...密集」的任务进行 map/reduce: 对于异步,我会介绍 Rust 下主流的异步运行时 Tokio 的基本原理: 在一些简单的热身项目之后,跟大家一起构建一个简约而不简单的 redis 服务器: 我从...这是一个非常了不起的认知,就像我们呀呀学语的时候,先让说话常态化,之后才从学校中学习语法时态这些内容。我觉得学习语言,就要有这样的态度和方法。
因为我不清楚大家有多少人接触过 Rust,所以这里列出来一些例子,让大家对 Rust 的语法有一个基本了解。...但是我个人觉得只要理解了这些概念,写 Rust 就不是问题了。...我觉得现阶段 Rust 仍然没有大规模的应用,lib 不完备占了很大一个原因。...Rust 调用 C 的库方便吗?...Rust语法引入所有权和生命期概念,在编译期就能检查出一部分内存管理错误,这是rust的一个杀手锏的特性。
Rust强调安全性、并发和内存控制。尽管 Rust 借用了 C/C++ 的语法,却杜绝了空指针和悬挂指针,而这二者是 C/C++ 中系统崩溃、内存泄露和不安全代码的根源。...调查显示,Rust 使用率不高的很大一部分原因是选择 Rust 的公司占少数。 ? 不过,Rust 在工作中的占比却越来越高。过去一年间,Rust 在商业应用上有着令人惊讶的成长。...不仅如此,Rust作为一个编程语言显得不同,不是因为它的语法多么漂亮(实际有些人甚至觉得有点丑)或者社区多么受人欢迎,而是因为当用它写代码时获得的那种信心。...你有可能会觉得几百万行代码中出现50个bug不算什么。但在一些关键领域,出bug就意味着系统性风险(如,心脏起博器中的bug会导致生命危险)。...选择使用Rust作为第一开发语言的区块链项目也会越来越多,我们会迎来一波的Rust语言学习高潮。 谨以本文作为Rust 4周年的生日礼物,祝Rust生日快乐!
开发者能够很容易的来为这段代码编写单元测试吗?它的可测试性在哪里? 当这段代码逻辑有bug的时候,能够很容易的及时发现和修复吗?它的可维护性又在哪里? 既没有可读性,又没有可测试性,更没有可维护性。...这周一次架构日会上,我临时给大家分享了郑晔老师《代码之丑》的极客专栏。”代码之丑“到底”丑“在哪里。 从一个Java文件结构上大致是下面三个地方。...可能,你看了这张图,会觉得刚才一直说代码,怎么突然搞的这么严肃又严重起来了。 ”不知道自己不知道“最为可怕,如果开发者一直认为平铺直叙地写代码是一件”天经地义“的事情,你说是不是一件可怕的事情。...《代码之丑》 《你真的会写代码吗》 《编程的原则》 《代码质量》 《代码阅读》 《修改软件的艺术》 看了一本《红楼梦》,不一定能变为小说家。 欣赏了一副《蒙娜丽莎》画,不一定能成为画家。...然后,再结合代码严重级别违规数、代码评审打回率等指标的度量进行考核,通过”考核的力量“来指引大家向前改进。
但没有特别天赋的程序员,在这个高度内卷的时代就只能躺平吗?我也不这么认为。所以我在 InfoQ 视频号约了四位 CTO 级别的嘉宾,连线畅聊,全程四个小时,希望能得到一些技术人成长的高阶认知和方法。...3、每个同学的职业生涯都会从调 Bug 开始,但有的人会觉得调 Bug 是个低阶工作。实际上,调 Bug 并不是低阶的工作,而是提升技术能力最好的捷径。...此前,能胜任系统编程工作的语言,除了古老的 C 和 C++ 就没有其他的选择了,它们的编程模型和语法机制都存在很多问题。...大家有时会觉得自己的生活很重复、很机械、很无趣,很没有成就感。这个问题的根源就在于,在一定的时间里,你没有做成任何一件事情。先做成一件事情,再去想自己后面该怎么办。...欢迎大家预约围观!
此外所有权和内存结构相关的因素, 也在实际当中带来一些麻烦, 我最开始想用 Rust, 是因为发现 Rust 有的 trait, 以及配合 trait 有 pattern matching 一系列语法,...Rust 语言继承了部分 FP 语言的功能, 比如 if else 设计成了表达式, 还有对 Macro 的支持, 这就方便在框架层面提供一些比较简略的语法糖....这是我在 ClojureScript 当中熟悉的功能, 我觉得对于一个框架来说, 也比较必要. Rust 本身出名的特征有它是静态类型语言, 类型安全, 而且性能很高....主要说自己的观感吧, 我觉得 Store 部分 Rust traits 给出的抽象能力就让我非常满意了....JavaScript 环境因为有 GC, 大家默认觉得没问题, 引用就引用了, 但 Rust 这边需要专门声明, 而且每次引用计数增加都要单独声明, 写起代码来就很累了.
目录前言关于Rust 语言Rust 的基础语法Rust 的安装与开发环境Rust实践案例Rust 的应用场景结束语前言最近一段时间技术圈跟着Rust语言的流行而掀起一股Rust语言学习热潮,在现在的编程语言领域中...作为一种相对新兴且充满潜力的语言,Rust 正逐渐展现出其在众多领域的卓越表现,成为了技术圈中备受关注的焦点,个人觉得Rust 值得我们广大开发者入门学习和使用。...Rust 的基础语法接下来简单分享一下Rust语言的基础语法,由于篇幅原因,这里只把关键的基础语法罗列一下,方便大家了解。...但是这仅仅是一个开始,Rust 相关领域还有非常多的奥秘等待我们去学习和了解,尤其是在学习 Rust 语言的过程中,我们肯定会遇到一些挑战,但请不要气馁和放弃,因为我觉得每一次的困难都是成长的机会,每一次的突破都将带来巨大的成就感...希望这篇文章能对大家的 Rust 学习之路有所帮助,祝各位在 Rust 的世界中收获满满,加油!
Rust 岗位逐年增多,很多大厂暗流涌动,一旦掌握 Rust,你将具备较强的不可替代性。 很人觉得 Rust 陡峭的学习曲线让人望而生畏,但应了那句老话“难者不会,会者不难”。...有人倒在了“入门阶段”,认为其语法逆天、泯灭人性,也有人如下面这位有过 C++ 经验的网友所描述的,“学习成本不大”。...,分享给大家。...除此之外,我还搜集了一份【构建未来软件的编程语言大会】的资料包,也一并分享给大家,共 108 页,我看完了收获满满。...总之,内容真的很丰富、很硬,大家看了就知道了。说真的无论是为了提高自身不可替代性还是为以后就业做准备,我都推荐大家学学 Rust。
以下为译文: 我使用 Rust 编写了一些小工具,而且觉得很有乐趣。我的日常工作需要大量使用 JavaScript,而 Rust 给我一种非常熟悉的感觉,因此我决定尝试一下Rust。...坏消息 问题的核心不是语法,而是 Rust 对程序内部结构的推理方式。高级语言中包含大量抽象,因此你不必担心计算机的工作方式。...在这段代码中,main 作用域想再次使用 a,但是我们说当内层作用域结束时,Rust 已经删除了 a。 程序执行到这里的时候,不会崩溃吗? 没错,程序会崩溃。 ?...另一方面,Rust 团队一直在努力通过创建大量语法糖和清晰的错误消息,帮助我们理解错误。而且,Rust 还有非常完善的文档和一个伟大的社区。 ?...()吗?这是一个宏,相当于 JavaScript 的 console.log。下面,我们来创建一个有类型的变量,并输出日志。 ? 我们创建了一个 struct,本质上是一个类型。
Go 有点像一个朋友,你喜欢和他在一起,因为他很有趣,但是当你想要进行更深入的对话时,你会觉得无聊或痛苦,而且你不想与他去一起度假。...如果你需要编写程序集以充分利用 CPU,那么你不是应该直接使用目标 CPU 汇编语言吗?...没有枚举类型 Go 中没有枚举值,我觉得这是它的损失。 iota 可以快速生成自增的数值,但它看起来更像是一种修改而非特性。...等等...这是真的吗? 我们必须定义一个新的 ByAge 类型,它必须实现 3 种方法来桥接泛型(“可重用”)排序算法和类型化片段。...好了,现在来缓解一下痛苦,如果 Go 能用宏来生成这些无意义的模板将会变得美好一些,对吗? go generate:还行,但是...
很多朋友觉得 Rust 在网上水军太多,每天都会听到“Rust 最棒”、“人家 Rust 如何如何”、“Rust yyds”之类的言论。这帮家伙就不能消停一会?...确实,Rust 在网上热度很高,但大家还记得当初 Java 刚兴起时的情况吗?如果不记得,恐怕是因为各位还很年轻。 那时候市面上充斥着满是废话的商贸杂志,而且神奇的是,他们都爱报道计算机方面的内容。...所以当我看到 Rust 的一刹那,我就知道这是个好东西。 我之所以力推 Rust,是因为它真的很出色、没准能帮助大家解决现实问题(包括很多你已经觉得无药可救的问题)。...各位觉得不喜欢可以自行离开,这很正常。但我绝对不会刻意去迎合某些人脆弱的神经,也不想顺应那些在网上喷 Rust 喷到血压上升的家伙的立场。...总有人说“真正的”程序员绝不用 Java,我觉得 Rust 倒是没有这个问题,因为它“够难”(但其实并不难,至少没大家想象的那么难)。
领取专属 10元无门槛券
手把手带您无忧上云