首页 > 编程语言 >如何快速的学习一门新的编程语言?

如何快速的学习一门新的编程语言?

时间:2022-11-11 13:34:33浏览次数:77  
标签:运算符 语言 编程语言 一门 学习 如何 使用


工作中,经常有工作两年左右的同事,用手挠挠发量本来就不多的脑袋,问我:“我如何快速上手一门新语言呢?”

程序世界变化非常快,新的框架、语言,新的词汇层出不穷,那作为有追求的技术人员,如何快速地跟上这些变化,使自己保持竞争力,而不落伍呢?

如何快速的学习一门新的编程语言?_编程语言

难学的第二门语言

上学的时候,一位老师在与新手开发人员分享经验的时候曾说:“最难学的编程语言是第二门语言”。

这是因为,在你第一次学习编程时,就已经对编程有了一些先入为主的想法。你会在语法上做很多的联想和假设。因此,在学习第二门语言时,你必须首先忘掉这些假设。在你学习第二门甚至是第三门语言时,一定要牢记这一点。这跟我们之前提到的:​​有趣的“第二个系统”​​ 描述的是同样的道理。

语言设计的目的

每种语言的每个方面都可以归结为真与假。为什么?电的工作方式就是这样:要么有电,要么没电。内存以0和1的形式存储值,这个最基本的单位叫做比特,而比特要么为真要么为假。

8比特等于一个字节,足以表示ASCII表中的任何字符。这些比特以特定的顺序翻转,以提供字符的十进制表示形式。计算机知道如何将这种表示形式转换为字母。

如何快速的学习一门新的编程语言?_js_02

基本的二进制表示形式,表示了单词“Hello”。

理解这个概念后,后面的内容就很好理解了。

新语言学习策略

所有语言中的这些工具都是相同的,你可以按照任意顺序学习,但是我通常会采用以下顺序:

变量

这似乎很简单,但话说回来,如何创建变量呢?

运算符

什么是运算符,如何使用?你明白基本的数学运算符,但是你明白逻辑运算符吗?“AND”运算符的正确拼写是“and”还是“AND”,还是使用诸如“&&”之类的符号?

条件语句

出人意料的是,我写得最受欢迎的Swift和Python文章都与决策有关。接下来,你需要知道如何在程序中做出决定。你学习的语言使用的是传统的“ if/else if/else”,还是像Python一样使用“ if/elif/else?你的语言是否带有“switch”或“guard”语句?

循环语句

如何遍历重复的任务?你学习的编程语言否包含for循环、while循环、do-while循环或for-each语句?

函数

是否可以创建函数?如果可以,那么该怎么创建?如何在这些函数中包含参数?你是否知道如何正确使用函数才能节省时间,并减轻你的工作负担?

类和结构

这种语言是否有类或结构的概念?这个问题听起来有点愚蠢,但有些语言要么没有,要么只有一种。如果有,那么该创建类或结构?类是否需要构造函数或初始化方法?

错误处理

错误是不可避免的。当出现错误时,这种语言是否拥有强大的错误处理解决方案,你又将如何使用呢?应该使用“ try/catch”、“ try/except”还是其他语句?是否还有其他子句,比如能进行其他处理的“else”或“finally”?

测试

如何测试代码?是否有用于测试的内置库,还是说你必须下载单独的工具?

大多数现代编程语言都包含上述工具。即使是稍旧的语言(例如COBOL)也拥有大多数工具,只不过它们有不同的称谓,例如pharagraph或copybook。

编码实战

在了解这些工具后,接下来要做的就是使用这种语言并编写应用程序。你可以通过阅读文档来学习一种语言,但是直到你编写一些应用程序之后,才能真正掌握这种语言。

事实上,你可以利用上面介绍的工具编写任何内容,标准库中包含的其他功能只不过减轻了编程的负担。大多数标准库都包含相同的功能,因此在各个语言之间也享有相似的名称。

随着使用语言的次数增多,你可以从标准库中找到更多的信息,但是一定要先学习这些工具。

在使用某种语言的时候,你需要搞清楚语言本身的优缺点。这可以帮助你决定针对某个特定的问题应该使用何种语言。

如果你需要快速进行一些数据科学研究,那么可以参考Python或R的几个包。如果你需要快速编写一个服务,那么可以考虑PHP或Go。如果你需要Web服务器,则可以考虑Java或Python。

光靠看书或文章不足以学好一门编程语言,你需要真正的实战。

写在最后

学习一门新语言是一种挑战,更重要的是坚持,祝你好运!

如何快速的学习一门新的编程语言?_编程语言_03

·················· END ··················



如何快速的学习一门新的编程语言?_编程语言_04

「架构精进之路」专注架构研究,技术分享


标签:运算符,语言,编程语言,一门,学习,如何,使用
From: https://blog.51cto.com/u_15107509/5844764

相关文章

  • Android数据库学习123
    我个人感觉安卓自带的数据库用的不是太多的,毕竟现在很多应用都直接和服务器数据库进行交互,或者直接API获取一些接口的数据,但是不可否认自带的数据库还是有一些作用的,所以我......
  • Android实战--小DEMO(JAVA关键字学习)一
    学习技术最好的方式就是实战,看书看不到的东西太多了,实际操作时会碰到各种书本里提不到的问题,解决这些问题会迅速提升你的能力,你是一个solider,最好成长的方式就是实战。下面......
  • 狂神说Javase基础学习1
    狂神学习博客1基本的DOS命令打开CMD的方式1.开始+系统+命令提示符2.win+R,进入运行窗口,输入cmd打开控制台3.在任意的文件夹下面,Shift+鼠标右键,进入命令行窗口4.资源管......
  • 论如何学习计算机
    上网查,多上手尝试                                               ......
  • Java集合Map接口与Map.Entry学习
    Map接口不是Collection接口的继承。Map接口用于维护键/值对(key/valuepairs)。该接口描述了从不重复的键到值的映射。(1)添加、删除操作:Objectput(Objectkey......
  • 20201306吴龙灿第十三章学习笔记
    知识点归纳第十三章TCP/IP和网络编程学习目标通过本章的学习,了解TCP/IP协议及其应用,包括TCP/IP协议栈,ip地址,主机名,DNS,IP数据包和路由器;理解TCP/IP协议簇中的UDP和TCP......
  • Salesforce新手如何开始学习Commerce Cloud课程?
    SalesforceCommerceCloud之前被称为Demandware,是一种基于云的多租户架构,可在任何地方提供智能数字商务解决方案,在营销、商品推销、购物体验、客户服务等方面为在线零售......
  • 20201208史逸霏第十三章学习笔记
    第十三章读书笔记13.1TCP/IP协议IPv432位地址IPv6128位地址TCP/IP的哥哥层级以及每一层及的代表性组件及其功能顶层是使用TCP/IP的应用程序,用于登录到远程主机......
  • 学习笔记-frida硬件准备
    • 1.3Android/iOS– 1.3.1Androidroot• 1.3.1.1硬件准备• 1.3.1.2刷入官方Android8.1• 1.3.1.3刷入twrprecovery• 1.3.1.4刷入Magisk• 1.3.1.......
  • 学习笔记-Xposed特征收集
    XPOSED魔改一:获取特征写在前面准备环境:选择XPOSED版本v89准备环境:选择谷歌原版镜像7.1.2准备环境:使用SuperSU进行root准备环境:安装Xposed框架并激活插件收集特征:底......