横向对比其他领域,计算机技术领域的革新速度令人害怕。编程语言之争是开发者社区热衷讨论的话题之一。然而总会有理性的声音告诉我们:语言不重要,重要的是xxx。对于这种论断,私以为就像衣服不重要,重要的是内在。你看小扎和乔帮主不就十年如一日穿一件T恤吗?
扯远了,语言当然重要!
其一,一门语言总有其特定的服务领域。即使是设计成通用的编程语言(General Purpose Language),也有它擅长的领域。如果你是用C语言做Web开发的牛人这句话当我没说。
其二,在任何领域,每套语言组成的技术栈都有其优点和缺点。开发理念也是天差地别。拿笔者熟悉的Web开发来说,创业公司想快速出Demo,ruby on rails是一个很棒的选择。但一旦产品已经面向千万用户,使用Java + Spring框架或者Go语言的Web框架能带来更好的吞吐量和稳定性。
其三,每种编程语言都有伴随着它的设计理念,如果开发者的开发理念跟语言设计者的理念相合,使用这种语言就会有与红颜知己聊天的感觉(别想了,你没有)。为什么Ruby之前会有一大堆拥趸,就是其让编程感到快乐的理念吸引了一大波开发者。
尽管社区里确实存在凑数的毫无特点的语言,或者有该被淘汰苟延残喘的语言,在特定领域有其竞争力的语言都是由存在的意义的。我们知道,编程语言的核心总是大同小异,不同的语言从开发者使用的角度来说,无非是存在语法差异、支持特性差异等。
所以,本文的标题并不是说的话,对于学习过至少一门语言的开发者来说,30分钟入门任何一门语言都是可能的。注意前提,(1)学习过至少一门语言,(2)入门。那么30分钟的入门能达到什么程度呢?是不是学会写Hello World就算入门呢?当然不是,笔者说的入门能够让开发者至少能够完成下面任务:
- 读懂以该语言编写的项目代码
- 在读懂的基础上能够修改项目代码的细节
- 使用该语言编写项目的大框架
经济学有个著名的二八定律,应用到编程语言的学习上,即20%的学习时间能应用到80%的任务中。而便随着第一个前提,当一个开发者有一门语言的开发经验时,这20%的学习时间可能已经完成了19%。因此,30分钟只是完成那1%而已。
说了那么多,今天的主角等得不耐烦了。什么网站能够让我们在30分钟内入门任何主流编程语言呢?
learnxinyminutes是社区驱动的编程语言基础知识网站,它以代码+注释的方式解释编程语言最基础的语法和应用,并提供进阶学习链接。我们以近期的新星之一dart语言为例,
Learn Dart in 15 minutes传送门,https://learnxinyminutes.com/docs/zh-cn/dart-cn/。Dart是当前大火的移动框架Flutter的主力语言。接触过React Native或者移动原生开发的同学经过这篇文章入门后,阅读Dart工程代码和做修改不会有太大压力。事实上,LearnXinYminutes除了入门外,对许久没用回来某个语言熟悉语法的同学也会有巨大的帮助。
硬广结束,笔者不喜欢单纯推荐,会加一些自己关于技术的想法,欢迎大家在评论区开杠(Python天下第一!)。Flutter今天的学习计划还没完成,溜了溜了。
网友评论