常⽤的编程语⾔介绍以及各语⾔的特点(前端,前端框架,后端)
常⽤的编程语⾔介绍以及各语⾔的特点
编程语⾔(programming language),是⽤来定义计算机程序的形式语⾔。它是⼀种被标准化的交流技巧,⽤来向计算机发出指令。⼀种计算机语⾔让程序员能够准确地定义计算机所需要使⽤的数据,并精确地定义在不同情况下所应当采取的⾏动。最早的编程语⾔是在电脑发明之后产⽣的, 编程语⾔的描述⼀般可以分为语法及语义。 编程语⾔俗称“计算机语⾔”,种类⾮常的多,总的来说可以分成机器语⾔、汇编语⾔、⾼级语⾔三⼤类。
平常接触的常⽤的编程语⾔分为前后端两⽅⾯的:
前端语⾔:html,css,javascript三种语⾔,以及与前端有关的框架,语法等。
后端语⾔:c,c++,java,php
前端语⾔(html,css,javascript)
HTML
HTML(英⽂:HyperText Markup Language),超⽂本标记语⾔,标准通⽤标记语⾔下的⼀个应⽤。是 ⽹页制作必备的编程语⾔“超⽂本”就是指页⾯内可以包含图⽚、链接,甚⾄⾳乐、程序等⾮⽂字元素。超⽂本标记语⾔的结构包括“头”部分(英语:Head)、和“主体”部分(英语:Body),其中“头”部提供关于⽹页的信息,“主体”部分提供⽹页的具体内容。
语⾔特点:
超级⽂本标记语⾔⽂档制作不是很复杂,但功能强⼤,⽀持不同数据格式的⽂件镶⼊,这也是万维⽹(WWW)盛⾏的原因之⼀,其主要特点如下:
1.
简易性:超级⽂本标记语⾔版本升级采⽤超集⽅式,从⽽更加灵活⽅便。
2.
可扩展性:超级⽂本标记语⾔的⼴泛应⽤带来了加强功能,增加标识符等要求,超级⽂本标记语⾔采取⼦类元素的⽅式,为系统扩展带来保证。
3.
平台⽆关性:虽然个⼈计算机⼤⾏其道,但使⽤MAC等其他机器的⼤有⼈在,超级⽂本标记语⾔可以使⽤在⼴泛的平台上,这也是万维⽹(WWW)盛⾏的另⼀个原因。
4.
通⽤性:另外,HTML是⽹络的通⽤语⾔,⼀种简单、通⽤的全置标记语⾔。它允许⽹页制作⼈建⽴⽂本与图⽚相结合的复杂页⾯,这些页⾯可以被⽹上任何其他⼈浏览到,⽆论使⽤的是什么类型的电脑或浏览器。
css
层叠样式表(英⽂:Cascading Style
Sheets)是⼀种⽤来表现HTML(标准通⽤标记语⾔的⼀个应⽤)或XML(标准通⽤标记语⾔的⼀个⼦集)等⽂件样式的计算机语⾔。CSS 不仅可以静态地修饰⽹页,还可以配合各种脚本语⾔动态地对⽹页各元素进⾏格式化。
CSS 能够对⽹页中元素位置的排版进⾏像素级精确控制,⽀持⼏乎所有的字体字号样式,拥有对⽹页对象和模型样式编辑的能⼒。
语⾔特点:
CSS为HTML标记语⾔提供了⼀种样式描述,定义了其中元素的显⽰⽅式。CSS在Web设计领域是⼀个突破。利⽤它可以实现修改⼀个⼩的样式更新与之相关的所有页⾯元素。
总体来说,CSS具有以下特点:
丰富的样式定义
CSS提供了丰富的⽂档样式外观,以及设置⽂本和背景属性的能⼒;允许为任何元素创建边框,以及元素边框与其他元素间的距离,以及元素边框与元素内容间的距离;允许随意改变⽂本的⼤⼩写⽅式、修饰⽅式以及其他页⾯效果。
易于使⽤和修改
CSS可以将样式定义在HTML元素的style属性中,也可以将其定义在HTML⽂档的header部分,也可以将样式声明在⼀个专门的CSS⽂件中,以供HTML页⾯引⽤。总之,CSS样式表可以将所有的样式声明统⼀存放,进⾏统⼀管理。
另外,可以将相同样式的元素进⾏归类,使⽤同⼀个样式进⾏定义,也可以将某个样式应⽤到所有同名的HTML标签中,也可以将⼀个CSS 样式指定到某个页⾯元素中。如果要修改样式,我们只需要在样式列表中到相应的样式声明进⾏修改。
多页⾯应⽤
CSS样式表可以单独存放在⼀个CSS⽂件中,这样我们就可以在多个页⾯中使⽤同⼀个CSS样式表。CSS样式表理论上不属于任何页⾯⽂件,在任何页⾯⽂件中都可以将其引⽤。这样就可以实现多个页⾯风格的统⼀。
层叠
简单的说,层叠就是对⼀个元素多次设置同⼀个样式,这将使⽤最后⼀次设置的属性值。例如对⼀个站点中的多个页⾯使⽤了同⼀套CSS样式表,⽽某些页⾯中的某些元素想使⽤其他样式,就可以针对这些样式单独定义⼀个样式表应⽤到页⾯中。这些后来定义的样式将对前⾯的样式设置进⾏重写,在浏览器中看到的将是最后⾯设置的样式效果。
页⾯压缩
在使⽤HTML定义页⾯效果的⽹站中,往往需要⼤量或重复的表格和font元素形成各种规格的⽂字样式,这样做的后果就是会产⽣⼤量的HTML标签,从⽽使页⾯⽂件的⼤⼩增加。⽽将样式的声明单独放到CSS样式表中,可以⼤⼤的减⼩页⾯的体积,这样在加载页⾯时使⽤的时间也会⼤⼤的减少。另外,CSS样式表的复⽤更⼤程度的缩减了页⾯的体积,减少下载的时间。
⼯作原理:
CSS是⼀种定义样式结构如字体、颜⾊、位置等的语⾔,被⽤于描述⽹页上的信息格式化和现实的⽅式。CSS样式可以直接存储于HTML⽹页或者单独的样式单⽂件。⽆论哪⼀种⽅式,样式单包含将样式应⽤到指定类型的元素的规则。外部使⽤时,样式单规则被放置在⼀个带有⽂件扩展名_css的外部样式单⽂档中。
样式规则是可应⽤于⽹页中元素,如⽂本段落或链接的格式化指令。样式规则由⼀个或多个样式属性及其值组成。内部样式单直接放在⽹页中,外部样式单保存在独⽴的⽂档中,⽹页通过⼀个特殊标签链接外部样式单。
名称CSS中的“层叠(cascading)”表⽰样式单规则应⽤于HTML⽂档元素的⽅式。具体地说,CSS样式单中的样式形成⼀个层次结构,更具体的样式覆盖通⽤样式。样式规则的优先级由CSS根据这个层次结构决定,从⽽实现级联效果。
javascript
JavaScript⼀种直译式脚本语⾔,是⼀种动态类型、弱类型、基于原型的语⾔,内置⽀持类型。它的解释器被称为JavaScript引擎,为浏览器的⼀部分,⼴泛⽤于客户端的脚本语⾔,最早是在HTML(标准通⽤标记语⾔下的⼀个应⽤)⽹页上使⽤,⽤来给HTML⽹页增加动态功能。
语⾔特点:
JavaScript是⼀种属于⽹络的脚本语⾔,已经被⼴泛⽤于Web应⽤开发,常⽤来为⽹页添加各式各样的动态功能,为⽤户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌⼊在HTML中来实现⾃⾝的功能的。
1. 是⼀种解释性脚本语⾔(代码不进⾏预编译)。
2.
主要⽤来向HTML(标准通⽤标记语⾔下的⼀个应⽤)页⾯添加交互⾏为。
3.
可以直接嵌⼊HTML页⾯,但写成单独的js⽂件有利于结构和⾏为的分离。
4.
跨平台特性,在绝⼤多数浏览器的⽀持下,可以在多种平台下运⾏(如Windows、Linux、Mac、Android、iOS等)。
Javascript脚本语⾔同其他语⾔⼀样,有它⾃⾝的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型⽤来处理数据和⽂字。⽽变量提供存放信息的地⽅,表达式则可以完成较复杂的信息处理
特性:
JavaScript脚本语⾔具有以下特点:
(1)脚本语⾔。JavaScript是⼀种解释型的脚本语⾔,C、C++等语⾔先编译后执⾏,⽽JavaScript是在程序的运⾏过程中逐⾏进⾏解释。
(2)基于对象。JavaScript是⼀种基于对象的脚本语⾔,它不仅可以创建对象,也能使⽤现有的对象。
(3)简单。JavaScript语⾔中采⽤的是弱类型的变量类型,对使⽤的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语⾔,其设计简单紧凑。
(4)动态性。JavaScript是⼀种采⽤事件驱动的脚本语⾔,它不需要经过Web服务器就可以对⽤户的输⼊做出响应。在访问⼀个⽹页时,⿏标在⽹页中进⾏⿏标点击或上下移、窗⼝移动等操作JavaScript都可直接对这些事件给出相应的响应。
(5)跨平台性。JavaScript脚本语⾔不依赖于操作系统,仅需要浏览器的⽀持。因此⼀个JavaScript脚本在编写后可以带到任意机器上使⽤,前提上机器上的浏览器⽀
持JavaScript脚本语⾔,⽬前JavaScript已被⼤多数的浏览器所⽀持。 [3]
不同于服务器端脚本语⾔,例如PHP与ASP,JavaScript主要被作为客户端脚本语⾔在⽤户的浏览器上运⾏,不需要服务器的⽀持。所以在早期程序员⽐较青睐于JavaScript以减少对服务器的负担,⽽与此同时也带来另⼀个问题:安全性。
⽽随着服务器的强壮,虽然程序员更喜欢运⾏于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上⼿等优势⼤⾏其道。同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进⾏⽀持。随着引擎如V8和框架如Node.js的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被⽤来编写服务器端程序。
前端框架(jquery,vue.js)
Jquery
jQuery是⼀个快速、简洁的JavaScript框架,是继Prototype之后⼜⼀个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write
Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常⽤的功能代码,提供⼀种简便的JavaScript设计模式,优化HTML⽂档操作、事件处理、动画设计和Ajax交互。
jQuery的核⼼特性可以总结为:具有独特的链式语法和短⼩清晰的多功能接⼝;具有⾼效灵活的css选择器,并且可对CSS选择器进⾏扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。
语⾔特点:
快速获取⽂档元素
jQuery的选择机制构建于Css的选择器,它提供了快速查询DOM⽂档中元素的能⼒,⽽且⼤⼤强化了JavaScript中获取页⾯元素的⽅式。
提供漂亮的页⾯动态效果
jQuery中内置了⼀系列的动画效果,可以开发出⾮常漂亮的⽹页,许多⽹站都使⽤jQuery的内置的效果,⽐如淡⼊淡出、元素移除等动态特效。
创建AJAX⽆刷新⽹页
AJAX是异步的JavaScript和ML的简称,可以开发出⾮常灵敏⽆刷新的⽹页,特别是开发服务器端⽹页时,⽐如PHP⽹站,需要往返地与服务器通信,如果不使⽤AJAX,每次数据更新不得不重新刷新⽹页,⽽使⽤AJAX特效后,可以对页⾯进⾏局部刷新,提供动态的效果。
提供对JavaScript语⾔的增强
jQuery提供了对基本JavaScript结构的增强,⽐如元素迭代和数组处理等操作。
增强的事件处理
jquery是什么选择器jQuery提供了各种页⾯事件,它可以避免程序员在HTML中添加太事件处理代码,最重要的是,它的事件处理器消除了各种浏览器兼容性问题。
更改⽹页内容
jQuery可以修改⽹页中的内容,⽐如更改⽹页的⽂本、插⼊或者翻转⽹页图像,jQuery简化了原本使⽤JavaScript代码需要处理的⽅式。
⼯作原理:
jQuery的模块可以分为3部分:⼊⼝模块、底层⽀持模块和功能模块。
在构造jQuery对象模块中,如果在调⽤构造函数jQuery()创建jQuery对象时传⼊了选择器表达式,则会调⽤选择器Sizzle(⼀款纯JavaScript实现的CSS选择器引擎,⽤于查与选择器表达式匹配的元素集合)遍历⽂档,查与之匹配的DOM元素,并创建⼀个包含了这些DOM元素引⽤的jQuery对象。
浏览器功能测试模块提供了针对不同浏览器功能和bug的测试结果,其他模块则基于这些测试结果来解决浏览器之间的兼容性问题。
在底层⽀持模块中,回调函数列表模块⽤于增强对回调函数的管理,⽀持添加、移除、触发、锁定、禁⽤回调函数等功能;异步队列模块⽤于解耦异步任务和回调函数,它在回调函数列表的基础上为回调函数增加了状态,并提供了多个回调函数列表,⽀持传播任意同步或异步回调函数的成功或失败状态;数据缓存模块⽤于为DOM元素和Javascript对象附加任意类型的数据;队列模块⽤于管理⼀组函数,⽀持函数的⼊队和出队操作,并确保函数按顺序执⾏,它基于数据缓存模块实现。
在功能模块中,事件系统提供了统⼀的事件绑定、响应、⼿动触发和移除机制,它并没有将事件直接绑定到DOM元素上,⽽是基于数据缓存模块来管理事件;Ajax模块允许从服务器上加载数据,⽽不⽤刷新页⾯,它基于异步队列模块来管理和触发回调函数;动画模块⽤于向⽹页中添加动画效果,它基于队列模块来管理和执⾏动画函数;属性操作模块⽤于对HTML属性和DOM属性进⾏读取、设置和移除操作;DOM遍历模块⽤于在DoM树中遍历⽗元素、⼦元素和兄弟元素;DOM操作模块⽤于插⼊、
移除、复制和替换DOM元素;样式操作模块⽤于获取计算样式或设置内联样式;坐标模块⽤于读取或设置DOM元素的⽂档坐标;尺⼨模块⽤于获取DOM元素的⾼度和宽度。
Vue.js
Vue.js是⼀个构建数据驱动的 web 界⾯的渐进式框架。Vue.js 的⽬标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。它不仅易于上⼿,还便于与第三⽅库或既有项⽬整合。
另⼀⽅⾯,当与单⽂件组件和 Vue ⽣态系统⽀持的库结合使⽤时,Vue 也完全能够为复杂的单页应⽤程序提供驱动。
Vue.js是⼀套构建⽤户界⾯的渐进式框架。与其他重量级框架不同的是,Vue 采⽤⾃底向上增量开发的设计。Vue 的核⼼库只关注视图层,并且⾮常容易学习,⾮常容易与其它库或已有项⽬整合。另⼀⽅⾯,Vue 完全有能⼒驱动采⽤单⽂件组件和Vue⽣态系统⽀持的库开发的复杂单页应⽤。
Vue.js 的⽬标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件 [1] 。
Vue.js ⾃⾝不是⼀个全能框架——它只聚焦于视图层。因此它⾮常容易学习,⾮常容易与其它库或已有项⽬整合。另⼀⽅⾯,在与相关⼯具和⽀持库⼀起使⽤时,Vue.js 也能完美地驱动复杂的单页应⽤。
特点:
易⽤
已经会了HTML,CSS,JavaScript?即刻阅读指南开始构建应⽤。
灵活
简单⼩巧的核⼼,渐进式技术栈,⾜以应付任何规模的应⽤。
性能
20kb min+gzip 运⾏⼤⼩、超快虚拟 DOM 、最省⼼的优化。
后端语⾔(c,c++,java,php)
C
C语⾔是⼀门⾯向过程、抽象化的通⽤程序设计语⾔,⼴泛应⽤于底层开发。C语⾔能以简易的⽅式编译、处理低级存储器。C语⾔是仅产⽣少量的机器语⾔以及不需要任何运⾏环境⽀持便能运⾏的⾼效率程序设计语⾔。尽管C语⾔提供了许多低级处理的功能,但仍然保持着跨平台的特性,以⼀个标准
规格写出的C语⾔程序可在包括⼀些类似嵌⼊式处理器以及超级计算机等作业平台的许多计算机平台上进⾏编译。
语⾔特点:
基本特点:
1、⾼级语⾔:它是把⾼级语⾔的基本结构和语句与低级语⾔的实⽤性结合起来的⼯作单元
2、结构式语⾔:结构式语⾔的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独⽴。这种结构化⽅式可使程序层次清晰,便于使⽤、维护以及调试。C
语⾔是以函数形式提供给⽤户的,这些函数可⽅便的调⽤,并具有多种循环、条件语句控制程序流向,从⽽使程序完全结构化。
3、代码级别的跨平台:由于标准的存在,使得⼏乎同样的C代码可⽤于多种操作系统,如Windows、DOS、UNIX等等;也适⽤于多种机型。C语⾔对编写需要进⾏硬件操作的场合,优于其它⾼级语⾔。
4、使⽤指针:可以直接进⾏靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C++在这⽅⾯做了改进,在保留了指针操作的同时⼜增强了安全性,受到了⼀些⽤户的⽀持,
但是,由于这些改进增加语⾔的复杂度,也为另⼀部分所诟病。Java则吸取了C++的教训,取消了指针操作,也取消了C++改进中⼀些备受争议的地⽅,在安全性和适合性⽅⾯均取得良好的效果,但其本⾝解释在虚拟机中运⾏,运⾏效率低于C++/C。⼀般⽽⾔,C,C++,java被视为同⼀系的语⾔,它们长期占据着程序使⽤榜的前三名。
特有特点:
1.C语⾔是⼀个有结构化程序设计、具有变量作⽤域(variable
scope)以及递归功能的过程式语⾔。
2.C语⾔传递参数均是以值传递(pass by
value),另外也可以传递指针(a
pointer passed by value)。
3.不同的变量类型可以⽤结构体(struct)组合在⼀起。
4.只有32个保留字(reserved
keywords),使变量、函数命名有更多弹性。
5.部份的变量类型可以转换,例如整型和字符型变量。
6.通过指针(pointer),C语⾔可以容易的对存储器进⾏低级控制。
7.预编译处理(preprocessor)让C语⾔的编译更具有弹性。
C++
C++是C语⾔的继承,它既可以进⾏C语⾔的过程化程序设计,⼜可以进⾏以抽象数据类型为特点的基于对象的程序设计,还可以进⾏以继承和多态为特点的⾯向对象的程序设计。C++擅长⾯向对象程序设计的同时,还可以进⾏基于过程的程序设计,因⽽C++就适应的问题规模⽽论,⼤⼩由之。
C++不仅拥有计算机⾼效运⾏的实⽤性特征,同时还致⼒于提⾼⼤规模程序的编程质量与程序设计语⾔的问题描述能⼒。
语⾔特点:
⽀持数据封装和数据隐藏
在C++中,类是⽀持数据封装的⼯具,对象则是数据封装的实现。C++通过建⽴⽤户定义类⽀持数据封装和数据隐藏。
在⾯向对象的程序设计中,将数据和对该数据进⾏合法操作的函数封装在⼀起作为⼀个类的定义。对象被说明为具有⼀个给定类的变量。每个给定类的对象包含这个类所规定的若⼲私有成员、公有成员及保护成员。完好定义的类⼀旦建⽴,就可看成完全封装的实体,可以作为⼀个整体单元使⽤。类的实际内部⼯作隐藏起来,使⽤完好定义的类的⽤户不需要知道类是如何⼯作的,只要知道如何使⽤它即可。
⽀持继承和重⽤
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论