主流互联⽹编程语⾔介绍,想要学习编程的你,不容错过
我将带⼤家⾛进互联⽹开发世界。今天给⼤家介绍⼀下互联⽹开发的语⾔。
什么是互联⽹开发语⾔
说到语⾔,⼤家可能⾸先想到的是汉语,英语,是可以让⼤家明⽩对⽅意思的⼀种交流⽅式。但是互联⽹开发语⾔呢,⼜是⼀种怎样的存在。既然是语⾔,就也是⼀种交流⽅式,但是这个语⾔,是为了让电脑来理解的。
⼈类的语⾔⾥,可以分为汉语,英语,⽇语,法语等等。在计算机的世界⾥,同样也有很多的种类。对计算机知识有⼀定了解的伙伴们,这个时候脑海⾥可能会浮现出Java,C,C++等多门编程语⾔的名称。⽽且也知道,如果想要学习编程,进⼊到开发领域⾥,就⾸先要学会⼀门甚⾄是⼏门开发语⾔。
开发语⾔其实有很多,现阶段,仍然⽐较常⽤的开发语⾔可能会有上百种,⽽且每时每刻都会有新的开发语⾔应运⽽⽣。
下图是最新⼀期(2020年04⽉份)的编程语⾔排⾏耪Top10榜单。
语⾔排⾏榜.png
从榜单中我们可以看到很多熟悉的名字,⽐如Java,C。如果我们想要学习互联⽹开发,就必须得学习这些语⾔。但是到底学习哪⼀种,且听我对这些语⾔进⾏⼀些说明之后再做决定。
从计算机诞⽣开始,就离不开编程语⾔。经过时代的进步发展,编程语⾔也从最开始的机器语⾔,汇编语⾔进化到了现在的多种多样的⾼级语⾔。
下图就简单的说明了,这三种语⾔之间的关系。
语⾔关系.png
图中最左部分是⽤C语⾔进⾏编写的代码,中间部分是将C语⾔编译成了汇编语⾔,最右侧的部分则是机器语⾔。从这张⽰例图中,我们可以明⽩,机器语⾔名不虚传,确实是给计算器看的。⽽我们能看懂并且学习的,可能也就只能选C这类语⾔了。
所有在今天的内容⾥,我们的主要介绍的重点,还是会放置到这些可读性好,易于学习的⾼级语⾔阵营⾥了。
互联⽹开发语⾔的分类
即使把范围缩⼩到了互联⽹开发语⾔中,我们发现还是有⼏⼗种常⽤的开发语⾔。这些语⾔,每⼀种都有着⼴⼤的⽤户体,都有着⼴阔的适⽤场景。如果让我来选,我还是不知道应该选择哪⼀门来作为⾃⼰未来的求职⽅向。
互联⽹开发,按照功能划分,现在可以简单的划分为前端开发,后端开发,移动端开发。
前端开发,主要是⾯向浏览器页⾯,更多的专注于页⾯的交互效果。是直接⾯向⽤户的。
后端开发,主要⾯向数据以及底层的⼀些数据功能逻辑,对⽤户⽽⾔并不可见,所以称之为后端。
移动端开发,这是主要⾯向⼿机,pad等移动设备⽽出现的⼀种开发场景。如果严格说来,移动端开发也可划分到前端开发的范畴⾥,这是也是⼀种直接⾯向⽤户的页⾯级的开发。
既然已经知道了互联⽹开发的分类,接下来,我们就需要知道这些不同分类中都有哪些代表语⾔。以及这些语⾔的特点。
web开发语⾔.png
⼀个基本的⽹站包含很多个⽹页,⼀个⽹页由html, css和javascript组成。
html是主体,装载各种dom元素;css⽤来装饰dom元素;javascript控制dom元素。
⽤⼀扇门⽐喻三者间的关系是:html是门的门板,css是门上的油漆或花纹,javascript是门的开关;
前端语⾔.png
但凡想要学习前端开发,这三门语⾔的知识是必须学会的。对于那些主做后端开发的程序员,除了那些⼤后端只和数据打交道的不关⼼页⾯逻辑的,这三门语⾔也是得多少了解和熟悉的。由此课件,这三门语⾔在互联⽹开发中到底有多么重要。不过⼤家不要担忧,正是因为在这种基础性决定了这三门语⾔本⾝不会太难,在整个开发领域⾥,这三门语⾔可以说是最易⼊门的技能了。
html介绍
html是⽤来描述⽹页的⼀种语⾔,它不是⼀种编程语⾔,⽽是⼀种标记语⾔(标记标签),总的来说,html使⽤标记标签来描述⽹页,本⽂就⽤标签来代替标记标签进⾏说明。
标签是指<html></html>,<div></div>。
标签是有语义的:标题⽤<h1>,表格展⽰⽤<table>,链接⽤<a>,⽆序排列⽤<ul>等等。
标签⾥可带有各类属性,最基本的就是class和id。class属性的作⽤是引⽤css样式;id的作⽤是配合javascript使⽤,具有唯⼀性。下⾯举⼏个例⼦说明
l 图⽚标签<img>的主要属性有src,alt。src是引⽤图⽚的⽹络地址(必要);alt是对这张图⽚的描述,如果图⽚加载不成功,则会显⽰alt的⽂字。
l 超链接<a>的主要属性有href,target。href是指链接要跳转的⽹址(必要);target是告诉浏览器点击这个链接后要以哪种形式开窗
⼝,target=”_blank”是指打开⼀个新窗⼝。
css介绍
css的官⽅名字叫层叠样式表,它的出现是为了解决内容和表现分离的问题,⼀般存放在.css⽂件⾥。
使⽤css。
可在html的头元素<head>⾥书写,或者书写在CSS⽂件并在html⾥引⽤该⽂件。
css优先权。
多个css样式可集中在单个html标签⾥,出现这种情况时,⼀般按优先权划分
1. 浏览器默认设置 (最低)
3. 内部样式表(写在html的<head>标签内部)
4. 内联样式(写在html的标签⾥,即style属性)(最⾼)
css的语法。
css由两个主要部分组成,选择器,⼀条或多条声明。
选择器是指css样式的名字“.seletor”,名字前⾯要带上⼀点“.”。声明是由属性和值组成,给个例⼦“margin: 0 auto”,冒号前⾯是属性,后⾯是值,该例⼦是定义元素居中显⽰。
javascript介绍
javascript是脚本语⾔,它是连接前台(html)和后台服务器的桥梁,它是操纵html的能⼿,本⽂⽤js代替javascript进⾏说明。
平时听到原⽣js,js库,js框架,js插件等等,下⾯简单说明⼀下。
l 原⽣js,是指最基础的js,没有封装过,但因为各浏览器对js的⽀持不同,就导致⽤基础的js编程需要为不同的浏览器写兼容代码。
l Js库,js框架,是指集成⼀系列dom操作,API封装,界⾯UI封装的的库类,常见的有jQuery,extjs等等,这⽅⾯的定义⽐较难区分,暂不误导⼤家
l Js插件,就是集成了帮助程序员轻松完成功能的程序。Js插件⽤得⽐较多,⽹页制作上随处可见。如图⽚轮换功能,导航制作,上传图⽚等等。
前端编程的难点
前端开发主要⾯向的是页⾯上的呈现效果,从以上介绍中可以发现,这么语⾔并不困难。⽽且近⼏年来,前端的就业形势特别喜⼈,各⼤公司都开始加强了前端⼈才的招聘⼒度。但是学习前端,其实也还是有些难点要事先交代⼀下的。
1. 要有同⼤众⼀样的审美能⼒和标准
这⼀点很容易理解,前端是整个开发体系⾥,最直接⾯向⽤户的。⼀定要有良好的审美能⼒,这样才能做出来⼀个能够吸引⽤户并有可能把⽤户留下来继续浏览的页⾯。
前端开发⼈员⼀定要具备跟⼤多数⼈⼀样的审美标准,要做到你认为好看的页⾯,80%以上的⼈都认为好看才⾏。如果你的审美是⼤家所不能理解的,那么,你可能就要考虑不要贸然选择前端开发了。
2. 多平台兼容,很可能会把你逼疯
在我的开发经验中,前端开发⼯作的⼀个⼤的挑战来⾃于多平台的兼容性问题。
前端开发完成的页⾯,最后其实是需要依托于浏览器展⽰出来的。现在为我们所熟知的浏览器平台其实有很多,有Chrome(⾕歌浏览
器),FireFox(⽕狐浏览器),IE,QQ浏览器,360浏览器等。这些浏览器因为内核不同,对同样的前端代码可能会做出不同的理解,所以呈现出来的效果也不⼀样。这就给我们的前端开发带来了很⼤的难度,因为我们⽆法预知⽤户会使⽤什么⼯具,我们的开发⼀定会要求适配所有的浏览器平台,不能只针对特定的浏览器。
⾯对多种多样的浏览器版本,已经够⼤家受的了。⽽在进⼊到移动互联⽹时代之后,⼿机上的浏览器也相应的给开发带来了更多的挑战,不同尺⼨,不同型号的⼿机,也给前端的开发增加了不少的乐趣。
3. 前端技术⽇新⽉异,要时刻保持技术敏感,不停学习
这⼀点,可能是所有的开发语⾔中都会存在的难点。
以前的前端其实真的很容易,只要学会最基础的语法,能够切图将页⾯做出来就是⼀个出⾊的前端开发者。但是到了现在,全都不⼀样了。
后,前端开发的清单⾥⼜出现了开发和⼩程序开发。技术的发展总是很快的,我们如果想要学好技术,成为⼀个合格的程序员,就⼀定要做好快速学习的准备。
后端开发语⾔
后端开发语⾔的代表就很多了,⽽且每⼀种语⾔都有着各⾃适合的应⽤场景,也有着⽆数⽤户者。我们经常能够看到关于那种编程语⾔更好的争辩,其实这真的没办法说明哪⼀种语⾔就⽐其他语⾔更好,只能在特定的情景下,判定哪⼀种语⾔更适合。
接下来,我就逐个讲解⼀下这⼏门常⽤的编程语⾔的特点。
C/C++
概括起来,⼤多数中国程序员的第⼀个语⾔。
C语⾔是⾯向过程语⾔的⼀个代表,常⽤于编写操作系统。C++是C语⾔的⼀个超集,既有指针⼜有对象使它成为最复杂的语⾔。
⼏乎所有现代编程语⾔都脱胎于C/C++,因此了解了C/C++,就了解了关于编程语⾔的⼀切,⾮常有利于快速掌握其他各类编程语⾔。
C/C++可以被嵌⼊任何现代处理器中,⼏乎所有操作系统都⽀持C/C++,跨平台性⾮常好。
C/C++的不⾜:据说C/C++发明的时候为了提⾼⼊⾏门槛和⾏业收⼊⽔平刻意制造了学习难度。尽管C语⾔体型⼩巧,可最常使⽤的C++规模可观且拥有⼤量极为复杂的功能交互⽅式,容易造成资源浪费。总结起来说,C/C++语⾔的学习成本⼗分⾼昂,更加偏向计算机底层。如果没有信⼼或者不是⽴志于去做计算机底层开发,还是不要贸然去学习这门语⾔了。
职业路线:
(1)⾸推Unix/Linux等操作系统软件的开发和嵌⼊式开发。
(2)Android ROM的定制,以及android App的NDK开发。
js脚本编程入门(3)⽤Cocos2d-x开发游戏也是C++程序员的好出路。
Java
这是最长寿的语⾔。
Java是最典型的⾯向对象语⾔。Java不仅吸收了C++语⾔的各种优点,还摒弃了C++⾥难以理解的多继承、指针等坑爹概念。Java积极推动了⾯向对象的编程理念,极⼤的改善了编写代码的易读性,可维护性。让⼤型编程,多⼈维护,变得越来越容易。
Java平台不断迎来新功能,⽐如移动互联⽹时代的Android,⼤数据时代的Hadoop,⼈⼯智能时代的TensorFlow。因为Java不断进取,能够不断的跟时代趋势保持同步,Java成为了世界上使⽤范围最⼴的语⾔——Java环境安装时那句“3 Billion Devices Run Java”谁没见过?桌⾯应⽤,⽹络编程,游戏编程,移动端编程,基本上只要有代码的地⽅,我们都能见到Java的⾝影。
Java同样也是⼀门⾯向底层的语⾔,它适⽤于⼤型项⽬的开发,本⾝推从的⾯向对象,多线程,包管理等特性,让Java成为了⼀门性能强⼤且安全性极⾼的开发语⾔。也正是这些特点,决定了Java开发项⽬往往开发成本⾼昂,每次开发都要进⾏⼤量的预先设计,过于重视标准化,也让Java开发项⽬的
开发周期被⽆形拉长。
职业路线:
(1)招聘⽹站上常见的“招聘Java开发”指的就是狭义的Java开发——基于JavaEE的后台开发,以前⼀度流⾏过SSH框架和SSM框架,现在⼊门建议学习SpringMVC框架。
(2)在移动互联⽹时代,Java可⽤于Android App开发。但Java之于Android的地位可能被Kotlin取代。
(3)在⼤数据时代,Java可⽤于Hadoop的开发,前景⾮常⼴阔,但可能有泛滥的趋势。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论