每年都学习一门新的语言,到底有什么用?

Android Geckoview实战:5分钟搞定JS与原生交互(附完整Demo代码) 本文详细介绍了在Android应用中使用GeckoView替代系统WebView,构建稳定高效的JavaScript与原生代码交互桥梁的实战方法。通过WebExtension架构,文章提供了从环境配置、扩展开发到Android端集成的完整步骤,并附有可运行的Demo代码,帮助开发者快速解决混合应用中的兼容性问题。 阅读详情

640?wx_fmt=jpeg

张大胖刚入行的时候就听牛人说:程序员每年都应该学习一门新的编程语言。

张大胖热爱新技术,觉得这个建议不错,多学一门语言,技多又不压身, 于是除了自己用来吃饭的Java之外,还学了C#, Python, Ruby , JavaScript,Go 等等在当年最流行的语言。

不过由于时间的关系和环境的限制,张大胖并没有机会在真实项目中去做实战,语言的学习无法深入,很多语言都是学习了语法,流程控制语句等最基本的东西, 在Google的辅助下,可以写一点不考虑代码质量小程序。

学得多了,张大胖开始沾沾自喜: 这么多编程语言都差不多嘛,都是套路:

数据类型,内置的数据结构,可以定义函数,类, 有流程控制语句,文件操作,网络操作, XML文件,正则表达式,线程......等等。

沾沾自喜的同时也有点迷茫:  那我每年学一门语言有什么用?很多细节都忘记了!

有一天,办公室的大神Bill和同事聊起来领域特定语言(DSL),张大胖说:“这个东西我好像见过啊”

Bill说:“你当然见过,你不是会Ruby吗,Ruby有着强大的元编程,非常适合来构建DSL。”

元编程? 张大胖感觉有点懵逼,Bill说的东西自己似乎看过,但是并没有在意。

他把自己的疑惑给Bill说了一下, Bill说:“其实吧,大部分语言基本的东西就是你总结的那些,但是你去学习新语言的时候,不能只学习共性的东西, 得把重点放到这个语言独特的东西,这样每年学习一门新语言,才能真的有收获啊。”

“独特的东西?”

“比如刚才说的DSL,就充分地利用了Ruby 元编程的强大功能,还有Ruby的mix-in, Ruby on Rails的编程哲学(约定重于配置, Don't repeat yourself), 这些才是让Ruby及其系统与众不同的特性和精华,值得你花大精力去学习、体会。 ”

“再比如说Go语言,goroutine 和 channel 绝对是你值得深入研究的、独特的东西。”

张大胖想了想,确实是这样,在没有项目历练的情况下,每年一门语言,很难把这门语言学精通,用熟练,自己学了太多共性的知识, 看起来很多,但是自己的知识积累却不够高。

“那我也不知道一个语言独特的东西是什么啊?”  张大胖追问。

“不用担心,一方面要善用Google,另一方面要养成‘比较’的好习惯,你现在对Java很熟悉了,当你去学Python的时候,可以Java做个比较,看看对同样的问题, Python是怎么解决的,发掘Python独特的地方,对语言的认识就会深入一层,比如你发现Python的变量是没有类型的,像个指针,可以指向任何类型的对象, 这和Java就不同,反映了静态语言和动态语言的区别。 ”

“再比如JavaScript,利用原型法也能实现对象,继承等概念,这和Java基于类的方式大相径庭,可以说是另外一个编程泛型,值得深入研究。 ”

“总之,在不断地比较的过程中, 你就能找到这个语言的独特之处。”  Bill做了最终的总结陈述。

张大胖感到受益颇多,也更有信心了:“好! 我这就试试去。”

(完)

你看到的只是冰山一角, 更多精彩文章,请移步《2016文章精华》或者《2017文章精华》


数字蓝军智能体关键技术课题研究 本研究提出基于人工智能大模型技术构建智能数字蓝军智能体系统,旨在提升作战模拟推演的智能化水平。系统采用"大模型+小模型"混合架构,整合感知、决策、规划、学习等核心模块,实现动态、智能的作战方案生成。关键技术包括大模型与知识图谱融合、多智能体协同、战场态势数字化表示等。研究成果将形成可复用的垂直领域智能体框架,为军事训练提供智能化对抗平台。该系统不仅能模拟真实对手的决策行为,还能通过自我博弈持续进化,有效增强推演的真实性和对抗性。 阅读详情

相关推荐

LabVIEW与MySQL实时数据存储:传感器采集与数据库同步实践

本文详细介绍了如何将LabVIEW与MySQL结合,实现传感器数据的实时采集与高效存储。通过设计合理的数据库表结构、配置LabVIEW数据库连接工具包,并编写核心的采集与存储VI,构建了稳定可靠的数据链路。文章重点分享了批量插入、连接管理、时间同步等关键优化技巧与避坑指南,帮助工程师应对工业监控、环境监测等场景下的实时数据同步挑战。

weixin_29281915的博客 262

还不懂你现在学习的编程语言能做什么?还不懂如何进阶?过来看图

C语言 C++语言 JAVA语言 Python语言 PHP语言 JavaScript语言 Go语言 C Sharp

1_bit 的博客 7516

YOLO11实战 第001期-基于yolo11的CrowdHuman密集行人目标检测实战文档(yolo格式数据免费获取)

1.数据阶段在拥挤/遮挡场景下,使用crowdhuman数据集重训练后的yolo11,效果表现较好。crowdhuman数据集标签如下,有Head BBox、Visible BBox、Full BBox。如下图显示:数据集介绍CrowdHuman数据集是旷世发布的用于行人检测的数据集,图片数据大多来自于google搜索。CrowdHuman数据集数据量比较大,15000张,5000张,验证集4370张。训练集和验证集中共有470K个实例,约每张图片包含23个人,同时存在各种各样的遮挡。

深度学习算法工程师,专注于前沿算法研究与实战应用。在这里,我将分享深度学习领域的实战经验、优质数据集资源以及最新论文解读与精度分析,旨在与广大技术爱好者共同探索人工智能的奥秘,助力技术成长与创新。 2168

老程序员通过一篇文章快速学会python这门新语言

老程序员快速掌握一门新的语言,如果还是逐个看语法手册,太费时间了,通过一篇文章,无需太多解析,自己就可以看个大概了。接下来看看标准库,然后就可以开始干活了。先来看一个简单的任务: 简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200. import subprocesscmd="cmd.exe" begin=101 end=200 whil

马立弘 1029

数学:箭头符号→(to)都表示什么意义?

数学符号“→”在不同领域有不同含义:在逻辑中表示“蕴含”(p→q);在函数中表示映射关系(f:A→B);在极限中表示变量趋近(x→a);在推导过程中表示推理方向(A→B)。此外,它也可能用于向量表示或数列趋势。其具体含义需结合上下文判断,核心应用场景包括逻辑运算、函数定义、极限分析和数学推导等。

shunzi2016的博客 5580

手把手教你用STM32CubeMX和HAL库驱动DW3000:从SPI配置到第一个测距Demo

本文详细介绍了如何使用STM32CubeMX和HAL库驱动DW3000 UWB定位通信模块,从SPI配置到实现厘米级测距Demo的全过程。涵盖硬件连接、SPI通信调试、驱动移植及双向测距(TWR)算法实现,帮助开发者快速掌握UWB高精度定位技术,适用于仓储物流、智能家居等场景。

weixin_27038245的博客 485

个人对于学习一门新的语言的看法

很多时候,我们想去学习一门的新的语言,但是都在犹豫和徘徊,不知道学哪一门好,等决定了,去网上一查,看见很多人都在喷,又退缩了。来来回回的,最后发现一门语言也没学到。其实,任何一门语言都是有弊端,没有完美的语言。所以说,觉得哪一门源语言符合我们的需求,那就别犹豫,立即下手去搞定它。有一位大牛我觉得说的很对,可以去看看。 大牛博客 王垠(不少文章喷到蛮有道理):http://w

weixin_36652177的博客 1199

bert-ini:一种基于bert的实体对齐交互模型

本次分享一项来自IJCAI-20的实体对齐工作,该工作提出了一种不同于以往的采用图结构信息进行实体对齐的技术方案,该方案取得了当时的最好效果;不仅如此,模型本身的对齐效率在该项工作中也被考虑,实际工作中非常具备借鉴意义。

qq_33331424的博客 3155

为什么学完一门编程语言却干不了什么?

很多计算机专业的新生或者是对编程感兴趣的小伙学完一门编程语言后,会发现自己好像并不能够做什么东西,不管你学的是C、C++、Java还是Python等等。今天我们就来聊聊为什么都学完一门编程语言了,但还做不了自己想做的网站、软件等等。   就以C语言为例(其他的都大同小异),很多大学生的第一门编程语言就是C语言,很多刚学编程小伙可能都觉得为什么都只是讲解什么各种类似于数学问题的求解之类的问题,还有运行的程序也是黑乎乎的,看起来都很low的样子。可是小伙都别忘了大名鼎鼎的Linux系统的都是使用命令行终端进行

weixin_43803935的博客 1447

ESP32设备驱动-TM1637-驱动4位7段数码管

TM1637是一款带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成了MCU数字接口、数据锁存、LED高压驱动、键盘扫描等功能。 TM1637使用DIP20/SOP20封装,主要适用于电磁炉、微波炉、小家电的显示驱动。

视觉与物联智能 2120

C# 零基础入门知识点汇总

本文属于C#零基础入门之百识百例系列目录文章。此系列文章已经完结,欢迎大家点击文中文章链接查看详情进行学习。

陈言必行 -- Unity游戏开发领域优质博主 5352

从李小龙的一句话看程序员是否应该多学几种编程语言

8 次分享 新浪微博 腾讯微博 Tweet QQ空间 作为程序员,关注最新前沿技术,学习新的语言,这当然是好事。我看到有人每年都要学习一两种新的语言。但是,我认为,如果为了学习而学习新语言或因为流行而学习这种语言,这是一种时间和精力上的浪费。就比如,现在人人都在谈论函数式编程,那你就要去学习Haskell语言吗?

xiyf2046的专栏 936

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

优秀开发人员的十个习惯

钱安川 喜马拉雅FM 10.每年学习一门新的语言 转载于:https://www.cnblogs.com/galaxy-tek/p/8654897.html

weixin_30314793的博客 114

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

我只会 Java 一门语言可以吗?

面向对象用来组织程序是好,但我用的是C语言; 我用的是C++,函数式编程的好,跟我有什么关系; 动态语言那些特性很好,可惜我用的Java; …… 如果你这么想,说明你被自己的看家本事给局限住了,这种思维方式会让你即便学到了更多好东西,也无可奈何。 程序设计语言之间没有那么泾渭分明的界限,唯有多学几门,才能打破语言局限,让设计更好落地。 可根据项目特点选择合适语言,也可以将其它语言一些优秀的地方借鉴过来。Andrew Hunt和David Thomas在《程序员修炼之道》(The Pragmatic Prog

JavaEdge全是干货的技术号 8436

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

我的编程回顾 —— 浅谈怎么快速学习一门新的编程语言

我从2002年到现在,学习了好几种编程语言。有一些,早已不用并且忘光了,有一些尽管不用但还会惦记着,还有一些,朝九晚五地用着。   我回顾过去9年的学习经历,差不多每年会学习一门新的语言,现在把它记录如下:   语言 学习时间 状况 C 2002 学习时候在TC上编了一些玩具程序,还曾记得,迁移到VC的时候,找不到g

smqh2011的专栏 1068

编程入门:你的第一门编程语言应该学什么?还指望百度给你答案?

大多数人的编程之旅都是从搜索引擎开始的。 例如搜索“XXX语言教程”。 但要怎么决定从哪门语言开始呢? 反手给你来一广告,让你防不胜防! “硅谷的人总是开Java的玩笑,我想应该先学Java。” 或者: "Python!现在Python这么火!" 又或者: "一定要学Go!你看它的吉祥物多么可爱!" 或者当我们不知所措的时候,只能搜: "入门学什么编程语言比较好?" 人们顾虑的问题通常就那么几个,下面这张信息图很好地回答了这些疑惑: 选择第一门编程语言的过程十分有趣,这就

致力于C语言C++知识分享! 1200

2024 年你的第一门编程语言应该学什么?[已解决]

大多数人的编程之旅都是从搜索引擎开始的。例如搜索“XXX 语言教程”。但要怎么决定从哪门语言开始呢?“硅谷的人总是开 Java 的玩笑,我想应该先学 Java。或者:"Haskell!现在 Haskell 这么火!又或者:"一定要学 Go!你看它的吉祥物多么可爱!或者当我们不知所措的时候,只能搜:"入门学什么编程语言比较好?选择第一门编程语言的过程十分有趣,这就好像是个人的信仰选择问题一样。也许因为你像个孩子一样喜欢玩橡皮泥,稀里糊涂都打算开始学 Ruby。我还是要提醒你,不要草率做决定。

xiaoshun007的专栏 1620

08 | 语言的模型:如何打破单一语言局限,让设计更好地落地?

今天,我们谈到了程序设计语言。学习不同的程序设计语言可以帮助我们更好地落地设计,也可以让我们向不同的语言借鉴优秀的方面。我们简要地了解了程序设计语言的发展历史,从最开始的对机器模型的封装,到今天不断降低的开发门槛,程序设计语言的演化从未停止。我们也看到各种不同的编程风格在经历了最初各自独立的发展之后,开始慢慢融合。一切语法都是语法糖。新的语法通常是在既有的结构上不断添加出来的,为的是简化代码的编写。

qq_37756660的博客 1154

97-things-every-programmer-should-know-27: 不要只是学一门新语言,而要理解它的文化

在经典书籍《The Pragmatic Programmer》,中文译《程序员修炼之道》中,作者建议我们每年学习一门新语言,我试着采纳他们的建议,数年之后我拥有了使用多种编程语言编程的经验。从我学习多语言编程的经历,让我意识到不仅仅是要学习它的语法,更重要的是学习它的文化。 你可以使用任何语言写Fortran,但真正学会一门语言需要拥抱它的思想。如不要在C#中写一个很长的Main方法,并且使用static方式调用静态方法,而是要理解类的优点。如果花了很长时间还是未能理解函数式语言中的lambda,不要觉得不

elegent Developer's 的博客 1444

用sql写每年的第三周_SQL是一门手艺

【公众号:数据驱动增长】SQL不是一门语言,而是一门手艺。把SQL当手艺来学1.行列过滤2.数据变换3.合并连接4.聚合透视奇怪的用法把SQL当手艺来学所谓手艺,要求心手相连,每一门手艺的背后,都闪现着手艺人的心血与智慧。SQL也是。SQL: Structured Query Language,结构化查询语言。实际上也有戏称是标准查询语言的,并不为过,SQL诞生于1974年,基于关系数据库(也就是...

weixin_39812142的博客 108

我是如何学习一门开发语言(适合最最菜的鸟,入门参考阅读)

   这周工作有点儿累了,写个文章放松一下,就写个最最原始的时候,我是如何学习一门开发语言的步骤。   1. 我往往是被动学习,就是社会上流行什么了,我就学什么,因为我外语不太好,不大知道前沿的技术,也看不懂前沿的技术资料,等社会上发起一股什么技术的潮流,我就学什么。   2. 当然我们生活的年代不同,学习的途径也不同,我按我当时的方式来讲吧,先会到图书馆就去找翻翻书,哪个本子都会

通用权限管理系统 4530

程序员之每年的12个目标

01. 变得有耐心 02. 保持健康 03. 拥抱变化带来的不适应 04. 学习一门新的编程语言 05. 自动化 06. 学习更多数学知识 07. 关注安全 08. 备份你的数据 09. 学习更多理论知识 10. 接触艺术和人文 11. 向新的软件学习 12. 完成一个自己的项目 接下来我会对这些建议逐个介绍。 变得有耐心 程序员们会担心锻炼耐心付出的努力得不到应有的回...

weixin_42116550的博客 773

27. 不只是学语言,更要领悟其文化

不只是学语言,更要领悟其文化         上大学时,我必须学一门外语。那时我觉得自己英文已经很不错了,所以就选择了睡过三年的法语课。几年后我去突尼斯度假,那里的官方语言是阿拉伯语,由于曾经是法国殖民地,所以法语在这里用得也很广泛,英语则只在观光地带使用。由于我语言不通,只好仅限于在游泳池旁边读《芬尼根守灵夜》, James Joyce在语言形式上的杰作。Joyce对40多种语言的有趣的融合,

aoelover的专栏 899

我是如何学习一门开发语言【转】

478

只学一门编程语言,到底学什么好?

只学一门编程语言,到底学什么好?

xiqng17111342931的博客 345
上一篇: JVM和Python解释器的硬盘夜话
下一篇: 我把这两年的精华文章都整理出来了
码农翻身
码农翻身 《码农翻身》作者 《码农翻身》作者
博客等级 码龄8年 3万+粉丝 1084原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值