学习编程语言之前,首先要搞清楚“编程语言”这个概念。

很小的时候,父母就教我们开口说话,也教我们如何理解别人讲话的意思。经过长时间的熏陶和自我学习,我们竟然在不知不觉中学会了说话,同时也能听懂其他小朋友说话的意思了,我们开始向父母要零花钱买零食和玩具、被欺负了向父母倾诉……

我们说的是汉语,是“中国语言”,只要把我们的需求告诉父母,父母就会满足,我们用“中国语言”来控制父母,让父母做我们喜欢的事情。

“中国语言”有固定的格式,每个汉字代表的意思不同,我们必须正确的表达,父母才能理解我们的意思。例如让父母给我们10元零花钱,我们会说“妈妈给我10块钱吧,我要买小汽车”。如果我们说“10元给我汽车小零花钱妈妈”,或者“妈妈给我10亿人民币,我要买F-22”,妈妈就会觉得奇怪,听不懂我们的意思,或者理解错误,责备我们。

我们通过有固定格式和固定词汇的“语言”来控制他人,让他人为我们做事情。语言有很多种,包括汉语、英语、法语、韩语等,虽然他们的词汇和格式都不一样,但是可以达到同样的目的,我们可以选择任意一种语言去控制他人。

同样,我们也可以通过”语言“来控制计算机,让计算机为我们做事情,这样的语言就叫做编程语言(Programming Language)。

编程语言也有固定的格式和词汇,我们必须经过学习才会使用,才能控制计算机。

编程语言有很多种,常用的有C语言、C++、Java、C#、Python、PHP、JavaScript、Go语言、Objective-C、Swift、汇编语言等,每种语言都有自己擅长的方面,例如:

编程语言 主要用途
C/C++ C++ 是在C语言的基础上发展起来的,C++ 包含了C语言的所有内容,C语言是C++的一个部分,它们往往混合在一起使用,所以统称为 C/C++。C/C++主要用于PC软件开发、Linux开发、游戏开发、单片机和嵌入式系统。
Java Java 是一门通用型的语言,可以用于网站后台开发、Android 开发、PC软件开发,近年来又涉足了大数据领域(归功于 Hadoop 框架的流行)。
C# C# 是微软开发的用来对抗 Java 的一门语言,实现机制和 Java 类似,不过 C# ,目前主要用于 Windows 平台的软件开发,以及少量的网站后台开发。
Python Python 也是一门通用型的语言,主要用于系统运维、网站后台开发、数据分析、人工智能、云计算等领域,近年来势头强劲,增长非常快。
PHP PHP 是一门专用型的语言,主要用来开发网站后台程序。
JavaScript JavaScript 最初只能用于网站前端开发,而且是前端开发的唯一语言,没有可替代性。近年来由于 Node.js 的流行,JavaScript 在网站后台开发中也占有了一席之地,并且在迅速增长。
Go语言 Go语言是 2009 年由 Google 发布的一款编程语言,成长非常迅速,在国内外已经有大量的应用。Go 语言主要用于服务器端的编程,对 C/C++、Java 都形成了不小的挑战。
Objective-C
Swift
Objective-C 和 Swift 都只能用于苹果产品的开发,包括 Mac、MacBook、iPhone、iPad、iWatch 等。
汇编语言 汇编语言是计算机发展初期的一门语言,它的执行效率非常高,但是开发效率非常低,所以在常见的应用程序开发中不会使用汇编语言,只有在对效率和实时性要求极高的关键模块才会考虑汇编语言,例如操作系统内核、驱动、仪器仪表、工业控制等。

可以将不同的编程语言比喻成各国语言,为了表达同一个意思,可能使用不同的语句。例如,表达“世界你好”的意思:

  • 汉语:世界你好;
  • 英语:Hello World
  • 法语:Bonjour tout le monde

在编程语言中,同样的操作也可能使用不同的语句。例如,在屏幕上显示“我爱IT”:

  • C语言:puts("我爱IT");
  • PHP:echo "我爱IT";
  • Java:System.out.println("我爱IT");

编程语言类似于人类语言,由直观的词汇组成,我们很容易就能理解它的意思,例如在C语言中,我们使用 puts 这个词让计算机在屏幕上显示出文字;puts 是 output string(输出字符串)的缩写。

使用 puts 在屏幕上显示“C语言”:

puts("C语言");

我们把要显示的内容放在("")之间,并且在最后要有;。你必须要这样写,这是固定的格式。

总结:编程语言是用来控制计算机的一系列指令(Instruction),它有固定的格式和词汇(不同编程语言的格式和词汇不一样),必须遵守,否则就会出错,达不到我们的目的。

C语言(C Language)是编程语言的一种,学习C语言,主要是学习它的格式和词汇。下面是一个C语言的完整例子,它会让计算机在屏幕上显示‘‘C语言”。

这个例子主要演示C语言的一些固有格式和词汇,看不懂的读者不必深究,也不必问为什么是这样,后续我们会逐步给大家讲解。

#include <stdio.h>

int main()

{

puts("C语言");

return 0;

}

这些具有特定含义的词汇、语句,按照特定的格式组织在一起,就构成了源代码(Source Code),也称源码或代码(Code)。

那么,C语言肯定规定了源代码中每个词汇、语句的含义,也规定了它们该如何组织在一起,这就是语法(Syntax)。它与我们学习英语时所说的“语法”类似,都规定了如何将特定的词汇和句子组织成能听懂的语言。

编写源代码的过程就叫做编程(Program)。从事编程工作的人叫程序员(Programmer)。程序员也很幽默,喜欢自嘲,经常说自己的工作辛苦,地位低,像农民一样,所以称自己是”码农“,就是写代码的农民。也有人自嘲称是”程序猿“。

通俗的理解:什么是编程语言?相关推荐

  1. 通俗地理解什么是编程语言

    学习编程语言之前,首先要搞清楚「编程语言」这个概念. 很小的时候,父母就教我们开口说话,也教我们如何理解别人讲话的意思.经过长时间的熏陶和自我学习,我们竟然在不知不觉中学会了说话,同时也能听懂其他小朋 ...

  2. 解惑(二)----- 如何通俗地理解Python中的if __name__ == ‘__main__‘

    1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...

  3. 如何通俗地理解 Gradle?

    作者:nonesuccess 链接:https://www.zhihu.com/question/30432152/answer/79547641 来源:知乎 著作权归作者所有.商业转载请联系作者获得 ...

  4. 【数学与算法】如何通俗的理解概率密度函数

    概率分布函数就是概率密度函数. 累计分布函数: 对概率密度函数从负无穷到xxx积分,得到的是累计分布函数. 如何通俗的理解概率密度函数? 首先考虑这样一个问题,你点了一个外卖,外卖说会在两个小时送达. ...

  5. python怎么用gamma函数_如何通俗的理解伽马(gamma)函数

    如何通俗的理解伽马(gamma)函数 - 直觉,求导和示例 我为什么要在乎garmma分布? 使用伽马函数定义了许多概率分布,例如伽马分布,Beta分布,狄利克雷分布,卡方分布和学生t分布等. 对于数 ...

  6. 电容或电感的电压_如何通俗的理解电流,电压,电阻,电容和电感电工技术知识学习干货分享...

    点击上方↑↑↑『电工技术知识学习』关注本公众号可以免费进微信群咨询技术问题 猜您喜欢的文章 82条电气专业术语详解,这资料就该人手一份 接触器如何选择?电气性能参数有哪些 收集最全的电工口诀,不用到处 ...

  7. 【线性代数】通俗的理解奇异值以及与特征值的区别,还有奇异值分解及其应用

    奇异值分解,就是把矩阵分成多个"分力".奇异值的大小,就是各个"分力"的大小. 之前在介绍矩阵特征值与特征向量的时候,也是以运动作为类比. 一.通俗理解奇异值 ...

  8. 如何计算近似纳什均衡_如何通俗的理解纳什均衡点?

    导读:如何通俗的理解纳什均衡点? 一.市场上有2家企业A和B,都是卖纸的,纸的成本都是2元钱,A和B都卖5块钱. 有一天A降价到4块钱,于是A销量大增,B销量大减.B看到了后,降价到3块钱,于是B销量 ...

  9. 如何通俗地理解相似矩阵

    如何通俗地理解相似矩阵 同学们大家好,今天我们来学习相似矩阵. 1 简单印象 设 都是 阶方阵,若有可逆矩阵 ,使得: 则称 为相似变换矩阵(Similarity transformation mat ...

  10. 如何通俗地理解傅立叶变换?

    声明下,下面都是用傅立叶级数来阐述,文章最后会说明下傅立叶级数和傅立叶变换之间的关系. 让我们从比较容易懂的解释开始吧. 1 直观解释 1666年牛顿发现太阳光经三棱镜的折射后可呈现彩色光,称为光的色 ...

最新文章

  1. Elasticsearch 与 Kafka 整合剖析
  2. excel 粘贴了HTML怎么删掉,Excel怎么删除网页上复制删不掉的文本框
  3. XAPIAN简单介绍(三)
  4. dubbo provider异步_Dubbo支持什么协议?与SpringCould相比它为什么效率要高一些?
  5. Redis源码剖析(六)事务模块
  6. 【Unity】6.1 Unity中的C#脚本基础知识
  7. java学习(142):file类的基本创建
  8. Diango博客--11.Nginx + Gunicorn + Supervisor 方式部署
  9. 【windows】windows 11 安装解决 这台电脑无法运行 Windows 11
  10. require.js使用(一)
  11. 关于用户自定义控件与引用该控件的页面之间的javascript脚本冲突
  12. /plus/recommend.php sql注入漏洞,DedeCMS 全版本通杀SQL注入漏洞利用代码及工具 -
  13. 关于node的聊天室错误
  14. nginx RTMP FFmpeg 视频直播
  15. 3.3通过EmbeddedServletContainerCustomizer调用Tomcat
  16. css中图片等比例缩放,自适应16:9实现
  17. C++课后作业 6.教材习题5_7:利用静态变量统计小猫Cat的数量
  18. 刷表法 和 填表法(DP)
  19. 基于51单片机控制的篮球比赛计时、计分系统设计与仿真(含设计图和C语言程序源码)
  20. 初学RUST-让程序跑起来

热门文章

  1. unity学习之NGUI做NPC对话
  2. PHP语言之表单基础
  3. 生产执行系统MES架构设计及应用架构
  4. wpa_supplicant 的使用
  5. vue实现导出excel,pdf功能
  6. 特斯拉神器-TeslaMate
  7. 3.4亿!史上最贵二踢脚,马斯克“自炸”火箭:SpaceX成功测试飞船逃生能力
  8. python安装包时报错Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools
  9. html苹果笔记本文稿如何转换,苹果电脑的pages文档想要变成word格式该如何转换...
  10. 树莓派添加开机自启动