谈谈这些年前端的变化

我从事web开发工作到现在差不多四年了,前后台都涉及过,近两年两年前端开发为主。我记得11年的时候,我到南京的第一年,加入了一个电商公司,从事PHP开发,那个时候公司里面有一个女孩子,专门从事前端的工作。说起来那个时候的前端除了像阿里腾讯这些上了规模的公司以外,大部分公司前端工作都是简单的写写页面,写写效果,然后把做的好的静态文件交给后台,由后台去嵌套等等。基本上前端到页面完成以后就没有太多事情了。记得当时我经常加班,但是那个女孩子却很闲,心里还一度不平衡过呢。
在那个时候,我理解的前端也就是上面说的那样,写写页面加上一写简单的效果,然后就ok了。这种看法在现在依然存在在很多中小公司里面。而近两年,前端市场却发生了非常大的变化。这些变化也是我个人加入前端行业以后的一些切身体会。

简单的说,前端的发展有两个方面的促进,一个html5的越来越强大,使得前端可以去操作一些硬件了,现在移动开发市场非常火爆,对于h5方向的需求也非常多,其中一个趋势就是混合app的诞生,前端可以借由html5 css3 javascript完成界面层,再借助phonegap appcan等打包工具实现打包,直接生成安装包,包括后来的ionic,它们都向前端提供了很多操作硬件的的接口,使得开发app变得更加简单,成本更小。虽然和原生开发的app相比,在流畅度和功能上还有缺陷,但这并不影响h5技术的发展。因此前端也变的值钱了。我记得10年的时候南京前端的工资少的可怜!!

当然这并不是h5技术的全部,即使在纯粹的web端,因为h5的加入,很多以前很复杂的效果,和一些根本没有的功能都得到了补充,比如文件的读取,原生的拖拽,本地存储,地理位置的识别,更加炫酷的画布技术等等。这些东西加强了用户的体验,也提供了很多更加实用的功能。另一方面讲,对于前端的要求也变高了。

促进前端发展的另外一个方面就是node.js的诞生,这个东西可以说给前端开同了一条完全不同于以往的世界。因为他是运行在服务器上的JavaScript环境。和h5相比,他几乎就是另外一个世界的东西了,前端可以借助node.js开发服务端程序,比如监听端口,分发路由,连接数据库,渲染页面等,这些功能原本只有java,PHP等语言可以完成。现在前端可以使用javascript做同样的事情。是不是很有意思。

当然,因为node,js技术发展到目前之间还不长,只有五六年的样子,而且他的设计之初就是为了打造高性能服务器,虽然文件的io效率很高,异步的处理方式很高效,但是因为javascript本身语言的的计算性能不高,导致了它的应用场景并不是特别的广泛。目前市面上对他的需求很多是作为中间件来使用,纯粹做后端也有,但是比较少。不过这同样不能阻止它的火爆。毕竟在以前这是绝不可能的事情。

除此以外,node.js的问世促进了前端工程的发展,早期是没有前端工程的,所有的一切都是人手动完成,而现在,像gulp grunt webpack fis bower等一系列前端工具的出现,形成了前端的自己的自动化工作流程,静态的文件的压缩,打包,合并,发布等工作不再需要手动了。然而这些工具都是依赖node.js环境才能使用,所以即使我们不打算学习复杂的后台,也需要了解node。毕竟不能一直生活在石器时代。

在框架方面,除了传统的dom操作框架以外,前端也开始向后台语言学习,angular,react,vue等一系列mvc和mvvm框架问世了。和后台的一些框架一样,他们也有数据双向绑定,注入等特点。让前端的开发层次更加分明。

说到底,前端的难度比以前大了,这也导致了前端比以前火了。从业人员也比以前多了。虽然很多还是处于较为原始的位置。

我从业的四年里面,也想过做前端会不会有发展,将来会怎样,曾经一度非常迷茫。不知不觉中也坚持下来了,我相信随着时间的发展,前端会越来越正规化,希望广大的同仁一起努力!!!

原文地址:http://www.cnblogs.com/shibaxiong/p/5877164.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/328465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第2步 安装git 配置git用户 git的安装和项目的建立

安装git 比较简单 在window上是有个 git bash 这个命令集成了一部分window和linux的命令 在任意目录下(一般是项目工程目录下面) 右键点击git bash 进入之后 小写字母 i 进入编辑模式(insert模式出入) [user] nameyjb1091947832(注册…

jsp连接mysql数据库 例子_JSP 连接 MySQL 数据库的例子

一:数据库 1. 正确install mysql 2. mysql -h localhost -u root -p 3. create database shujuku; 4. grant all privileges on shujuku.* to testlocalhost identified by "12345"; 5. use shujuku; 6. create table biao (id int(8) primary key, name…

115个Java面试题和答案——终极列表(上)

转载自 115个Java面试题和答案——终极列表(上)本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力。下面的章节分为上下两篇,第一篇将要讨论面向对象编程和它的特点&…

依赖注入的威力,.NET Core的魅力:解决MVC视图中的中文被html编码的问题

有园友在博问中提了这样一个问题 —— .NET Core 中文等非英文文字html编码输出问题&#xff0c;到我们的 ASP.NET Core 项目中一看&#xff0c;也是同样的问题。 比如下面的Razor视图代码&#xff1a; {ViewBag.Title "代码改变世界"; }<title>ViewBag.Title…

第4步 tomcat配置中文字符集 启动Tomcat  网页乱码

第二部&#xff1a;给页面上添加mate标签 <html> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"> <head> 然而并没什么效果。于是我就去掉这种无用的操作。换另外一种方案。 第三部&#xff1a;在tomcat的配置中…

自己动手开发编译器(我们的朋友 -- 装配脑袋走了)

编者: 昨天在微信群里得知 我们的朋友--装配脑袋(施凡老师),因白血病离我们而去,自从得病以来,施老师在积极的接受治疗&#xff0c;8.27 得到的消息还是比较让人开心的,大家都在期待着他能够重出江湖。装配脑袋一直在从事一个编译器项目,在博客园的博客里有个系列《自己动手开发…

Java Web开发与实战_Java Web开发技术与实战项目

【实例简介】北大青鸟ACCP6.0 使用JSP/Servlet/Ajax技术开发新闻发布系统第一部分课件以及代码答案1到6章【实例截图】【核心代码】7.《JavaWeb开发技术》└── 7.《JavaWeb开发技术》├── Chapter01│ ├── 01 提供给教员的内容│ │ ├── 01 教学演示案例│ │…

修改Eclipse中项目在Apache Tomcat中的部署路径

转载自 修改Eclipse中项目在Apache Tomcat中的部署路径在Eclipse中配置完服务器后&#xff0c;如果不做任何修改就去部署项目,部署后你会发现,在Apache Tomcat的webapp文件夹下并没有这个项目&#xff0c;那么项目去哪里了呢&#xff1f; 其实项目已经部署到如下默认目录…

微服务意味着分布式系统

Sander Hoogendoorn认为&#xff0c;向微服务迁移就意味着向分布式系统进行迁移&#xff0c;在这里&#xff0c;我们必须要处理延迟、认证与授权、无法到达的消息。通过使用微服务&#xff0c;我们能够将大型系统拆分为更小的组件&#xff0c;从而实现对架构的重新掌控。借助于…

在Eclipse中使用JUnit4进行单元测试(初级篇)

转载自 在Eclipse中使用JUnit4进行单元测试&#xff08;初级篇&#xff09;本文绝大部分内容引自这篇文章&#xff1a;http://www.devx.com/Java/Article/31983/0/page/1我们在编写大型程序的时候&#xff0c;需要写成千上万个方法或函数&#xff0c;这些函数的功能可能很强大…

java包 类 方法_Java中包与包之间方法的调用及其关键字区分(基础)

最近在写应用时&#xff0c;对包与包之间方法的调用不太清楚&#xff0c;专门看视频和网站后整理了这篇文章&#xff0c;希望对刚入门的同志有所帮助&#xff0c;进入主题。首先我们先简单看看Java中private、protected、public和default的主要区别&#xff1a;(看不懂没关系&a…

GitHub开源贡献榜:微软超越Facebook和Google排第一

在新任CEO萨蒂亚纳德拉的领导下&#xff0c;封闭许久的微软已于过去几年在变得更加拥抱开源。根据知名代码协作项目网站GitHub上的最新数据&#xff0c;我们发现微软已经位列开源贡献榜的第一名&#xff08;16419&#xff09;&#xff0c;超过了Facebook&#xff08;15682&…

Eclipse下导入外部jar包的3种方式

转载自 Eclipse下导入外部jar包的3种方式我们在用Eclipse开发程序的时候&#xff0c;经常要用到第三方jar包。引入jar包不是一个小问题&#xff0c;由于jar包位置不清楚&#xff0c;而浪费时间。下面配图说明3种Eclipse引入jar包的方式。1.最常用的普通操作方式:基本步骤式右击…

java速学_5分钟快速入门Java,不看真的可惜了

你好&#xff0c;世界&#xff01;源代码组织方式Java程序由packageclass组成&#xff0c;package对应目录的相对路径&#xff0c;class对应文件&#xff0c;如关于class有如下几点规则&#xff1a;文件的名字必须和class的名字一致(public级别的class名字)。文件必须只包含一个…

与微软.NET创始人Scott Guthrie面对面,“红衣教主”亲身传授推动成功转型的洪荒之力

金秋九月&#xff0c;是个即将收获的季节。微软 2016 企业技术决策论坛将于2016年9月21日在北京召开。届时&#xff0c;技术大咖Scott Guthrie 将现身论坛&#xff0c;和嘉宾们现场交流互动。 说起 Scott Guthrie&#xff0c;技术领域的人一定不陌生&#xff0c;Scott Guthrie …

第5步 配置pom.xml文件 pom文件好了就是jar包引入好了

<project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><!-- 自动生成的部分…

Tomcat启动超时问题Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds

转载自 Tomcat启动超时问题Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds使用Eclipse启动Tomcat时出现启动超时的问题如下所示&#xff1a;Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds . If the server …

xrkmonitor监控mysql_xrkmonitor字符云监控系统

下面我们对xrkmonitor字符云监控系统文件阐述相关使用资料和xrkmonitor字符云监控系统文件的更新信息。xrkmonitor字符云监控系统xrkmonitor字符云监控系统是一个国产开源监控系统&#xff0c;专注于通过监控系统对软硬件系统进行掌控以及系统相关数据的可视化&#xff0c;通过…