Redian新闻
>
"叔叔建议我远离 Python,从汇编语言学起......"

"叔叔建议我远离 Python,从汇编语言学起......"

公众号新闻


整理 | 郑丽媛出品 | 程序人生(ID:coder_life)

据《2021-2022 中国开发者调查报告》显示,历史悠久的汇编语言是程序员最讨厌的编程语言(占比 37%),其次便是 C++(17%)和 C(16%)

作为一门面向机器的程序设计语言,汇编语言固然十分精细,但对于程序员而言却不太友好——不好记忆,里面也没有指针的概念,所有的变量、函数都由栈或堆上的偏移地址所代替。与高级编程语言相比,汇编在可读性、开发效率和可移植性上显然存在不足。

所以,我们自然觉得:都 2022 年了,在众多高级编程语言的包围下,还会有人将汇编作为程序员入门的第一个编程语言吗?

有的,前阵子一位 Reddit 用户(以下用“小 R”代称)就发帖称:我的叔叔,一位前程序员,建议我从汇编语言学起……


建议原因:应该先敲下最难的“钉子”


小 R 表示,TA 最近对学习编程有点兴趣,因此找了之前做程序员的叔叔,想问问有啥入门建议,结果 TA 叔叔开口就是:“一定要远离那些简单的高级编程语言,如 Python 或 Ruby。”

叔叔对小 R 解释道,当年他第一次学习基础代码时,一度认为自己是个天才,因为他几天内就很好地掌握了新技能。直到后来他又接触到了 C 语言,才完全颠覆了他的自我认知——他被“狠狠”难住了一段时间,而且之前掌握的那些基础技能在学习 C 语言上完全没用。

简单的编程语言显然不会教你任何关于编程和计算机究竟是如何工作的知识你现在还年轻,有一个能吸收很多知识的‘海绵大脑’,还有许多互联网指南可参考,你应该先敲下最难的‘钉子’,把汇编或者 C 作为第一门语言,以便之后对任何事情都可以轻松学习。”

(图片下载自视觉中国)


不必对高级编程语言避之不及


显然,小 R 叔叔的这番言论跟现实中大多程序员的选择相悖,小 R 也因此茫然地将问题抛给了广大网友:“你们对此的看法是什么?”

部分网友认为,能说出这种观点的“叔叔”肯定是大龄程序员

  • “他告诉你要以一种他自己都没尝试过的方式去做,而这个观点仿佛来自 30-40 年前。”

  • “你叔叔太老派了。如果他是在 1980 年之前毕业的,那可以理解,毕竟汇编在当时很常见。但到 1990 年以后,已经逐渐有更多的选择了。”

有网友调侃道,这种学习方法太过于“追本溯源”了

  • “这感觉就像是说,在你开车之前,你首先要知道它的每一个部分是如何工作的。”

  • “既然这样,那就先学半导体物理,然后学晶体管,然后是 CMOS 逻辑,然后是逻辑门,然后是数字电路,然后是计算机构成,这样更能彰显你叔叔的‘厉害’。”

话虽如此,但每一门编程语言能流传至今,必定有其的意义,汇编也是如此,现在操作系统中依旧还有汇编的身影。被许多程序员厌恶的汇编语言,更适用于底层硬件,如单片机、工业控制、实时控制等,它更为精简,运行效率也更高。

两年前,曾有一位学过汇编的程序员分享道:

”我也学过汇编,做一个程序要写好多条命令,而且思路要清晰,对程序员智商要求非常高。我以前单位有几个八十年代大学毕业的程序员,智商真的是非常高。现在的编程真的很傻瓜化,从没学过编程的短期内也能很快自学编程。“

平心而论,学好汇编确实能深入理解计算机底层原理,但这并不意味着就一定要对高级编程语言避之不及——如今,高级编程语言的开发效率、适用范围都远超过汇编,更符合现在企业所追求的高效。

最后引用一位网友的建议:“如果你想成为编译器开发者或硬件工程师这类人,你可以好好学汇编;但如果你只是从事软件开发,最多根据自身能力适当了解一下汇编即可。”

那么,作为程序员的你,接触并学习的第一门编程语言是什么呢?

参考链接:https://www.reddit.com/r/learnprogramming/comments/wedgo2/my_uncle_a_former_programmer_has_recommended_that/

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

刘遄老师QQ:5604241

Linux技术交流群:3762708

(新群,火热加群中……)

想要学习Linux系统的读者可以点击"阅读原文"按钮来了解书籍《Linux就该这么学》,同时也非常适合专业的运维人员阅读,成为辅助您工作的高价值工具书!


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
MNE/Python-fNIRS近红外数据处理中文手册百岁汇编语言之母逝世!71岁时她还在和儿子合写神经网络论文10 个 Python 脚本来自动化你的日常任务汇编语言创建者 Kathleen Booth 去世,享年 100 岁《我的叔叔于勒》:人到中年,我们都活成了叔叔于勒“食栗子,想儿子”ー中日不同语境异意Python环境搭建手把手图文教程硬核有奖问卷|你选择 JavaScript 还是 Python?下一个热门语言由你定义10个Python脚本来自动化你的日常任务“踩着叔叔的头,踩着叔叔的肩膀”Python程序化套利实战班想起上大學(完)Python之谜:四舍五入round(4.5)等于4?行业入门|量化分析,一个工作语言是Python和Chinese的行业德邦证券董事长金华龙:金融机构应融合"市场性",坚守"人民性",提升"专业性"将你的 Python 脚本转换为命令行程序 | Linux 中国胡渊鸣:import 一个“太极”库,让 Python 代码提速100倍!"浮盈"变"实盈"!基金11月分红很"壕",环比暴增100%,这些产品最给力33 个 "不得不看" 的 Python 关键字总结!"叔叔建议我远离 Python,从汇编语言学起......"字节大佬编写的这本《Python背记手册》,带我横扫互联网大厂秋招!你是谁这难道很重要吗?汇编语言之母100岁逝世,曾和冯·诺依曼一起研究神秘的古老之光:埃及阿布神庙汇编语言之母100岁逝世:曾和冯·诺依曼一起研究,退休后还在研究神经网络4 步打包一个新的 Python 模块 | Linux 中国危险警告!7000亿资金大"逃亡"?美股抛售潮来袭,20000亿"子弹"已撤退!日本"黑天鹅"突袭,影响多大?R语言工作者入门python,你需要实际解决这三个问题Julia 和 Python,哪一个更快? | Linux 中国连自干五也跟细颈瓶闹翻了
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。