如何学习一门新的语言

如何学习一门新的语言?

1 学习的目的?解决问题。

2 如何解决问题?通过语言本身和通过和语言相关的库。

学习就是学习语言的使用以及库的使用。

我们一般都学习过一种或者几种语言,从学习语言的过程中我们自己已经摸索出了语言的特征。并且使用它来解决了一些问题。然后我们把这些问题重新提出,用新语言如何解决?这是很好的练习过程。

语言的元素:

语元(在词法分析中叫token),这个是构成语言的基本元素。在不同语言下有不同的规则。语元的种类包含关键字,标识符,符号。要知道这种语言的关键字都有哪些,标识符的构成规则(正则表达式),各种符号的意义。

语法:

语言是由语句或者表达式构成(一些函数式语言是由函数和宏构成),这些语句和表达式的结构如何呢?如何使用这些表达式呢?

举个例子:

if表达式

在 C/C++ 中

if-stmt: if exp stmts [else stmts]

如果 exp 成立则执行stmt,else 部分可以选择有或者没有

在lisp语言中

(if cond exp1 [exp2])

如果cond成立则返回exp1 如果有exp2 则返回exp2 否则返回NIL

循环

在C/C++中

while-stmt: while(exp) stmts

如果exp 成立则执行stmts直到exp不成立

而在lisp中使用 loop 宏来实现,语言本身没有提供

当你理解各个语句或者表达式语法的时候,你已经掌握了它的语义。

掌握了这些语句我们就可以解决一些通用的不涉及库的问题,也就是只能运算,而不能输入输出及访问其他设备。这些设备是由特定的操作系统提供访问提,因此那些库就是为了和操作系统或者其他的设施(比如数据库,比如XML等)交互的。

接下来就是练习:

我们要把掌握的语元和语法,把原来的问题实验一下。

1 输入不同的成绩,给出不同的评级。 >90 为[80,90) 为B [60-80)为 C

用C语言就是

if(score >= 90) return ‘A‘;

if(score >=80 && score <90) return ‘B‘;

if(score >=60 && score< 80) return ‘C‘;

用 common lisp

(if (>= score 90) ‘A‘

(if (and (>= score 80) (< score 90) ) ‘B‘

(if (and (>= score 60) (<80 score 80) ) ‘C‘)))

2 打印出9*9矩阵

C/C++

for(int i=1;i<=9;i++)

for(int j=1;j<=9;j++)

printf("%d ",i*j);

lisp

(loop

for i from 1 to 9

do (loop

for j from 1 to 9

do (format t "~a ")))

库的掌握:参考书,例子程序,实验

时间: 2024-11-03 22:11:49

如何学习一门新的语言的相关文章

第1章:Python语言介绍/1.1 如何学习一门新开发语言

* 如何学习一门新开发语言 1. 学习新语言套路 1. 了解语言背景:是干什么的? 2. 安装环境 1. 下载安装包:Python-3.7.1.tar.xz.JDK. 2. 找一款好用的IDE: 1. JAVA:eclipse/myeclipse 2. C语言:VIM 3. C++:VISIO STUDIO 4. GO语言:LiteIDE 5. PYTHON:IDLE 3. 找一份容易上手的教程 1. 语言表达简单易懂 2. 实例多 3. 代码能落地 4. 坚持看完 4. 勤动手,勤总结 5.

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

最近突然有所感悟,特写下此博文,欢迎大家来辩! 如何学习一门新的语言?首先,需要一本书.其实好多人在挑选书籍的时候有个习惯(或者说是毛病),就是总是想挑选一本比较权威的书(俗称好书).大家想过没有,我们每人的生活环境以及学习环境都有或多或少的不同,以至于我们的学习方式.方法都是不一样的,所以所谓的"好书"对一些人来说就不一定是好书,只有合适的才是最好的. 所以,书籍方面我认为选一本基础的就好了,因为最后你会发现,买了书也看不了多少次,大多数还是在网上查找...哈哈 书籍方面的事情说完了

如何学习一门新语言

youtube上看了一个视频,介绍如何尽快的掌握一门新的语言: https://www.youtube.com/watch?v=FrMSSQRYS6I [5 principles, 7 actions] Action 1 : listen a lot, brain soaking 泡脑子 多听你要学习的语言,不管能不能听懂,要把脑子泡一泡: Action 2 : Focus on getting the meaning first, (even though don't know the wor

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

为什么 Objective-C 很难 - linux,dev - 博客园http://www.cnblogs.com/huapox/archive/2012/12/01/3251600.html 9 个指导开发者快速编码/学习的网站推荐 - 楚广明 - 博客园http://www.cnblogs.com/chu888chu888/archive/2012/02/16/2354813.html 教是最好的学 - MNight - 博客园http://www.cnblogs.com/mnight/p

实现一门新的语言(1)

背景 两个月前自学了编译原理, 在草草学习了前端之后实现了一门不能算语言的语言, 一直想对它进行维护, 但是无奈源代码是用java写的, 就我目前的状态而言对java完全提不起兴趣, 这段时间学习C++, 在实现完正则表达式之后几乎找不到high点, 于是决定用C++重新实现一门语言. 为了增加难度我准备实现一门面向对象的语言, 但是同时也为了降低难度我决定暂时不写该语言的CFG(事实上我已经不太记得怎么写上下文无关文法了), 等到具体实现过程中, 怎么简单怎么写… 因为我实际水平有限, 编译原

如何学习一门新的开发语言

作为一名软件研发,由于工作的需要,难免需要接触新的知识,新的技术,新的开发语言.有时候接触这些新的东西,不知道如何下手.每个人学习的方式都不一样,可以借鉴,不能完全照搬.最近在学习Android,我觉得可以按照以下步骤去入门. 1)准备一本入门的电子书或者买一本入门书籍,先大概看完能将开发环境搭建起来 2)将简单的Hello,World程序弄出来以及熟悉一下整体的程序框架 3)同时看一下入门视频的讲解,汲取一下别人理解的知识 4)会加日志调试程序 5)将入门书中的demo敲一遍[或者入门的视频的

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

答案是:在学习区刻意练习,每天500行.什么是学习区,就是那种,你刚刚够得着,但是还是需要付出一点努力的. 1. 如何寻找学习区 1.1 经典教程 一般某门新语言的图书,在豆瓣排名比较靠前,口碑都很不错的,挑一本带课后练习的就行了,放弃那种虽然写的很好,但是不带练习题目的,那种书作为备选就可以了.Ruby社区,我常常推荐日本Ruby学会会长写的这本:<Ruby Programming>课后习题. 1.2 笨方法系列 Ruby与Python双修的怪才Zed Shaw,推出了笨方法学习编程的系列教

有编程基础的人如何快速掌握一门新的语言

如果你已经熟练地可以用一种语言编写项目了,那么如何快速学习另一门语言? 首先,学习资料是必须有的.最好是教程视频,还有这门语言的参考手册(chm版)是最好的. 学习的过程中要合理的规划好自己的时间.学习周期,一天的学习时间,休息时间等,反正就有自己的时间概念. 当你熟悉这门语言语法以后,这时你就要关注数据的跳动与这名语言对数据的处理了.因为语言只是一种工具,至于用哪种语言,只是看符不符合实际需求而已.

对于一个成熟的程序员 如何快速正确的学习掌握新的语言

1. 怎样才算是精通一门语言? 为我所用.不去写,是永远也不会深入的. 遇到问题,能够运用这个语言的特点去解决. 2. 每种语言都有相似的东西: built-in data structure syntax convention code structure/management system api (提供与操作系统相关的库) dependency management garbage collection 3. 每种语言都有自己的特长 Go: concurency Python: data