编程语言学习概要与学习方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/engineerxin/article/details/84931113

启程——本文逐渐完善中...


三个普适性主题:系统的问题解决方式,抽象能力,以及将计算思维作为思考世界的一种方式。

应当学会以下技能

初级技能

  • 使用语言进行编程与计算

  • 学会系统性地组织编写调试中等规模的程序;

  • 理解算法复杂度

  • 将模糊的问题转化为明确的计算方法,以此解决问题,并对这个过程有深刻的理解;

  • 掌握一些有用的算法以及问题简化技术

中级技能

  • 对于那些很难得到封闭解的问题,知道如何使用随机性和模拟技术进行清晰阐述;

  • 学会使用计算工具(包括简单的统计,可视化以及机器学习工具)对于数据进行理解与建模。

编程本身就是一件非常困难的事情。正如那句名言所说:“在几何中,没有为国王铺设的大道”。对于编程而言,没有捷径可走。想学会的话,得练,得多练,得用心练!

计算机只能用来做两件事,执行计算与保存结果,但是它把这两件事做到了极致。常见的台式机与笔记本电脑每秒钟大概可以执行十亿次计算。许多问题被证明可以通过计算机来解决(当然也有不能通过计算机来解决的)。

希望大家可以熟练地将计算思维应用到解决工作学习生活的问题中。

所有的知识可以被归结为两类:陈述性知识,程序性知识。

陈述性知识由对事实的描述组成。

程序性知识说明如何做,描述了信息演绎的过程。

世界上目前存在几百种编程语言,没有哪一门语言是最好的(尽管你可以数出一些最差的)。每门语言都有自己的长处。

每种编程语言都有基本结构,语法,静态语义,语义。

我们举个栗子:就拿英语来说,它的基本结构是单词,语法则是来描述那些单词放在一起可以组成通顺的句子,静态语义则定义了哪些句子是有意义的,语义则定义了句子的实际含义。

下面是更加详细的解说;

英语的基本结构,比如:

1 名词 noun n. student 学生 6 数词 numeral num. three 三
2 代词 pronoun pron. you 你 7 冠词 article art. a 一个
3 形容词 adjective adj. happy 高兴的 8 介词 preposition prep. at 在...
4 副词 adverb adv. quickly 迅速地 9 连词 conjunction conj. and 和
5 动词 verb v. cut 砍、割 10 感叹词 interjection interj. oh 哦

英语的语法定义了字符和符号组成句子的正确形式,比如:

<代词><系动词><形容词>的形式在语法上是有效的,而<名词><名词><名词>这样的句子形式在语法上是不对的。

英语的静态语义定义了哪些语法有效的句子是有意义的,比如:

英语中I are big.这个句子符合语法<代词><系动词><形容词>的形式,但是它不是有效的句子,因为are是复数形式,而代词I是单数,这在静态语义上是无效的。

语义为每个语法正确又没有静态语义错误的句子关联一个含义,比如:

在自然语言中许多句子是模棱两可的。比如句子I cannot praise this student too highly可以是一种赞扬也可以是一种批评,而编程语言是被精心设计过的,所以每个语言都只有一种确切的含义。

[1]python编程导论第二版,John V.Guttag著,陈光欣译

[2]Introduction to Programming in Python : An Interdisciplinary Approach

猜你喜欢

转载自blog.csdn.net/engineerxin/article/details/84931113