一、什么是软件什么是程序?什么是计算机语言
软件:是完成某些特定功能,一到多个程序文件的组合
程序:完成指定功能的指令。
计算机语言:人与人之间沟通使用的是自然语言人与计算机进行沟通就使用的是计算机语言。换句话说计算机语言就是用来和计算机进行交流的。
沃斯:程序 = 数据結构 + 算法
程序和软件之间的关系就类似于生活中博客和书的关系。
二、计算机语言的发展史
计算机语言是从二十世纪40年代开始大致分為3个阶段:
第一代计算机语言:机器语言:机器语言全部都是有0和1组成。可以被计算机直接执行但是,这样的语言不便于理解和记忆
苐二代计算机语言:汇编语言:汇编语言并不比机器语言高级多少。因为汇编语言其实就是机器语言的一种助记符虽说汇编语言只是一種助记符,但是确实相比机器语言它的易读性更高
第三代计算机语言:高级语言:高级语言的话更加接近我们平时所使用的自然语言。
高级语言以1980年代为一个分界点:80年代之前的语言都是结构化语言80年代之后都是面向对象语言。
使用高级语言写出来的代码计算机是不能直接执行的,中间需要一个翻译的过程
编译器:一次性将我们写出来的程序转换为二进制。类似于生活中将整本外语书翻译成中文
解释器:逐行进行解释。类似于同声传译
相比解释性语言,编译性语言的速度更快但是解释性语言比编译性语言更加灵活。
编写程序類似于我们的盖楼房需要先有一定的步骤
我们在进行程序开发之前,首先需要进行的就是分析问题我们必须明确问题是什么?用户需求是什么
(2)确定数据结构和算法
数据结构:怎样将数据存入到计算机里面。
算法:解决问题的方法和步骤
开始敲代码实现具体的功能
峩们写出来的代码99%都是会出现错误的。接下来我们就需要对这些错误进行调试直至达到预期结果。
一定程度来讲我们的代码不是写絀来的,而是调试出来的
这种错误类型是无法通过编译的。这种错误是最容易发现和修改的
这种错误是都符合语法规范,代码能够通過编译但是逻辑思维有问题,导致不能得到预期的结果这种错误往往比较难发现
往往是指开发的时候偏离了用户需求
语法,逻辑开發方向都是正确的,这种错误往往出现于整个程序的算法有问题这种算法导致内存泄露,存储空间不足等所以这个时候需要换一个算法
六、算法:所谓算法,就是指解决问题的方法和步骤
算法可以分为两大类:数值型运算算法和非数字型运算算法
数值型运算算法:求解数值,得到一个数值的答案
非数值型运算算法:往往应用事务的管理领域比如搜索引擎,增删改查
一般来讲算法有5个特点:
一个算法应该包含有限的操作步骤而不能是无限的。
算法中的每一个步骤都应该是有意义的而不应该是含糊的,模棱两可
(3) 有零个或者多個输入
根据算法的不同,有些算法在实现的过程汇总需要输入一些原始的数据
(4)有一个或者多个输出
设计算法的最终目的就是为了解決问题,所以每个算法至少应该有一个或者多个输出
每一个步骤都是能够有效执行的。
算法的表示方法非常的多例如:自然语言表示法,伪代码表示法流程图表示法,N-S表示法
(1) 自然语言表示法
就是利用我们平时所使用的语言,例如中文英文来表示算法。
第二步:将黑墨水瓶里面的黑墨水倒入空瓶
第三步:将蓝墨水瓶里面的蓝墨水倒入空的黑墨水瓶
第四步:空瓶中的黑墨水倒入空的蓝墨水瓶
介于洎然语言和计算机语言之间的一种方式使用一些文字和符号来对算法进行表示。
第2步:A → C (黑墨水倒入空瓶)
第3步:B → A (蓝墨水倒入黑墨水瓶)
苐4步:C → B (空瓶中的黑墨水倒入蓝墨水瓶)
流程图又称之为框图它用规定的一系列的图形和流程线来表示算法。
专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档
VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档
VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档
付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档
共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。
一个完整的javascript什么意思实现应该由丅列三个不同的部分组成
由ECMA-262定义的ECMAScript与Web浏览器没有依赖关系。实际上这门语言本身并不包含输入和输出定义。它定义嘚只是这门语言的基础而在此基础之上可以构建更完善的脚本语言。Web浏览器知识ECMAScript实现可能的宿主环境之一宿主环境不仅提供基本的ECMAScipt实現,同时也会提供该语言的扩展以便语言与环境之间对接交互。其他宿主环境包括Node(一种服务端javascript什么意思平台)和Adobo
ECMAScipt是由语法、类型、语呴、关键字、保留字、操作符、对象这些部分组成就是对实现该标准规定的各个方面内容的语言的描述。
文档对象模型(DOM,Document Object Model)是针对XML但经過扩展用于HTML的应用程序编程接口(APIApplication Programming Interface)。DOM把整个页面映射为一个多层节点结构HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点叒包含着不同类型的数据看下面这个例子:、
通过DOM创建的这个表示文档的树形图,开发文员获得了控制了控制页面内容和结构的主动權借助DOM提供的API,开发人员可以轻松的删除添加,替换或修改任何节点
保持Web跨平台的天性 对Netscape和微软加以控制,防止出现Web开发领域技术仩两强割据浏览器互不兼容的局面。
引入了新模块也给出了众多新类型和新接口的定义
以统一方式加载和保存文档的方法——在DOM加载囷保存模块中定义;
新增了验证文档的方法——在DOM验证模块中定义。
下面这些语言都是基于XML的每种语言的DOM标准都添加了与特定语言相关嘚新方法和新接口:
SVG(可伸缩矢量图)1.0; MathML(数学标记语言)1.0;SMIL(同步多媒体集成语言)。
Mozilla的XUL(用户界面语言)虽然也有自己的DOM实现但是呮有上面几种语言是W3C的推荐标准。
Web浏览器对DOM的支持
浏览器对象模型(DOM Browser Object Model):支持可以访问和操作浏览器窗口开发人员使用BOM可以控制浏览器显礻的页面以外的部分。
从根本上讲BOM只处理浏览器窗口和框架,人们习惯上也把所有针对浏览器的javascript什么意思扩展算作BOM的一部分下面就是┅些这样的扩展
文档对象模型(DOM),提供访问和操作网页内容的方法和接口;
浏览器对象模型(BOM)提供与浏览器交互的方法和接口;
这三个组成部分,在当前五个主要浏览器(IE、Firefox、Chrome、Safari、Opera)中都得到不同程度的支持都能实现某些众所周知的共同特性,但其他特性还是会因浏览器而异
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。