什么是编程?.docx_第1页
什么是编程?.docx_第2页
什么是编程?.docx_第3页
什么是编程?.docx_第4页
什么是编程?.docx_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

什么是编程?如果你是一个在软件开发公司工作的非编程人员,你可能会想知道程序员到底做什么。而且你可能每天听到新的流行语。本文中无论你是销售人员、医生、律师、业务负责人还是会计师,只要你曾经在脑海你想过如何学习编写代码,这里将是一个好的开始的地方。简单的说,“编程就是指导计算机执行任务的行为”。编程通常被认为是编码。那么,什么是计算机程序?计算机程序就是计算机所执行的一系列的指令。上面所定义的计算机指的是任何能够执行代码的设备。可能是智能手机、ATM机、黑莓PI、服务器等等。一个关于编程的好的类比首先,我们的日常生活是有规律可寻的。宇宙的运行某种程度上来说是可预测的;例如白天黑夜、季节变换、日出日落。人类在早上起床然后去上学或者上班的循环里周而复始。工作上我们从别人那里获得指令,比如上级。再比如烹制一道菜可以分解成有限的几个步骤。再次,比如当我们使用智能手机的时候,有部分代码运行的在后台不可见的。再比如在电脑上将鼠标从一个地方移动到另一个地方,看起来很简单,但实际上,这需要运行很多行代码。又如在Google Docs上输入文字这样一个看似简单的操作,在后台也需要运行相当多的代码。代码随处可见。计算机程序也可以称为代码。不要使用codes这个词来称呼代码(因为“code”只能用单数形式)。计算机的自然语言就像人类一样,机器也有属于他们的自然语言。但计算机无法理解人类的语言。计算机的自然语言实际上是二进制代码(binary code)1和0。它们代表了两种状态:有(1)和无(0)。它就是电子设备的自然语言。但是要让人类用这种二进制代码来交流的话,我们一定会抓狂的!进入程序设计语言为了和这些只讲二进制语言的机器交流,我们需要一种与我们的自然语言(比如英语、法语、阿拉伯语或斯瓦希里语。)比较接近的语言。程序设计语言就是一种和人类语言相近的语言。但是它们跟加结构化而且必须完全学会才能够使用它们。程序设计语言可能是高级程序设计语言或是低级程序设计语言。高级语言与机器语言的差别要比低级语言更大。这种“大的差别”通常被称之为抽象(abstraction),这一点我们在这个系列中不会深入讨论。这样我们就不会分心(distracted)了:)计算机需要一种方法来理解我们的语言。为此,我们需要一个翻译器(Translator)。什么是翻译器源代码是指以特定编程语言编写的代码。 更多内容在第2部分。翻译器有责任将您的源代码转换为机器语言。 这也被称为二进制化。 记住1和0。 我们可以将二进制文件称为目标代码,程序或今天的常用词:应用程序。翻译器可以是以下任何一种:*解释器*编译器*混合解释编译器*汇编器解释器一些语言是被解释的。 翻译器逐行处理源代码,程序或应用程序运行每一行代码。 这意味着解释从运行代码开始,直到它遇到错误。 然后解释器停止工作,报告错误。 更多内容在第3部分。Python是解释型编程语言的一个很好的例子。编译器编译器的工作方式跟解释器不一样。编译器会通过编译过程将所有源代码全部转换成为二进制文件。然后执行该二进制文件。如果源代码中存在错误,在编译的时候编译器会检测出来并予以标示。这将会中断编译过程,并且不会生成二进制文件。解释器是一行行的翻译源代码并执行的,只有当前行的源代码执行完后才能进行下一行代码的翻译。而编译器则是一次性将所有源代码翻译成一个文件(二进制),并执行这一整个文件。还记得计算机程序的定义吗?就是计算机所执行的一系列的指令。一个正在执行的程序通常被称为进程。这样的程序需要占用计算机或智能手机一定的资源,如内存、硬盘空间还有文件系统。正在执行的程序也可以说成正在运行。当我们执行一个计算机程序的时候,我们使用“运行(run)”这个词来描述。程序运行所花的时间一般被称为该程序的运行时。计算机程序通常也被叫做应用程序(Apps)。我们经常会把程序和它们所运行的、或者设计运行的平台或者环境联系起来。比如web应用程序是运行在web浏览器上的,谷歌电子表格(Google Spreadsheet)就是一个例子。还有移动应用程序,是运行在智能手机上的,如CandyCrush。另外还有桌面应用程序,如Evernote的桌面应用。再说一遍,解释型源代码是直接从源文件上执行的。而编译型源代码则是先转换成二进制文件。之后再执行该文件。编译型源代码编译成功后,在运行时仍有可能发生错误。详见第3部分。混合解释编译器混合解释编译器是解释器和编译器的组合。流行的混合编程语言是 Java 。Java 首先将你的源代码编译为称为字节码(Bytecode)的中间格式。字节码然后由称为虚拟机的运行时引擎解释和执行。这使得混合翻译器能够在各种操作系统上运行字节码。Assemblers 汇编器汇编器是将底层的汇编语言翻译成二进制。对于这个系列,我们只关注高级语言。分析转译器的一个好方法就是把它们看成一个程序。你需要下载或获取它们,将其安装在计算机系统上并了解其基本工作流程。常见问题这里有一个初学者通常都会问的问题。我应该先学哪门语言?现在有数百种编程语言。他们按流行度、社区活跃度、长期支持、教育用途和商业用途排名。也可以按技术性来排序,比如是否是函数式的、命令式的、静态的、强类型或弱类型的。某些语言比其它的更合教学。这些语言以教学为目而不是以商业用途为目的。比如那些给孩子们用于学习编写代码的语言。也存在非常强大,易于安装和学习的语言。Python 就是其中之一。我一般会建议初学者学习 Python。如果你有兴趣探索怎么选择“第一语言”,这里有 Philip Guo 的一些研究在学习一门新语言的时候你就应该知道语言翻译器。这是安装配置在你的计算机系统中的一个程序。我非常推荐从如何使用 CLI(Command Line Interface,命令行界面) 开始学习。CLI 是一个终端或 Shell。你可以把终端看作 GUI(Graphical User Interface,图形用户界面)。在 GUI 中,你会通过鼠标与计算机进行交互。同时也会依赖目录以及其它你事情的视觉表现。但是,如果使用 CLI,你会通过命令与计算机进行交互,你需要在提示信息或闪烁的鼠标后输入命令$_在 Windows 下,随机终端就是命令提示符。而对于 Mac 和 Linux 用户,已经存在 Bash 终端。如果想在Windows 下有相同的体验,就安装 Git Bash 或者 PowerShell。继续前进你现在已经不知不觉进入到了编程中。你需要做好准备开始写第一行代码了。你需要从下面这些内容开始:计算机系统这时候你需要的不是复杂或昂贵的计算机,你只需要一台工作正常的就行。安装 CLI开始学习使用 CLI。安装文本编辑器我们会在第二部分回到这个主题学习一门编程语言在这个系列中你会学习一些基础,建立适用于多数编程语言的基础知识。询问开始编程需要哪些基本的工具?你将在 Bash(CLI) 下使用什么命令?检查你的当前目录进入一个叫 bin 的目录(现在 bin 是当前目录)创建一个新叫 lib 的新目录创建一个叫 book.py 的文件列出当前目录的所有内容小结我们已经了解了基本编程知识,也介绍了翻译器。“源码” 对你来说不再陌生。我们将会在下一部分仔细分析源码。小测验答案开始编程时你需要的基础工具有哪些?一台计算机,一个文本编辑器,一个shell(终端),一个编译器/解释器。在bash(CLI)中你使用什么命令完成以下操作?查看当前目录: pwd切换到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论