我从事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跨平台或扫描二维码关注

谈谈这些年前端的变化相关推荐

  1. 谈谈我对前端组件化中“组件”的理解,顺带写个Vue与React的demo

    谈谈我对前端组件化中"组件"的理解,顺带写个Vue与React的demo 前言 前端已经过了单兵作战的时代了,现在一个稍微复杂一点的项目都需要几个人协同开发,一个战略级别的APP的 ...

  2. 你好,谈谈你对前端路由的理解

    Vue3 商城项目开源地址:https://github.com/newbee-ltd/newbee-mall-vue3-app Vue3 高仿微信记账本项目开源地址:https://github.c ...

  3. 谈谈新的前端框架 Svelte 和现代前端框架的特点

    官方网址 https://svelte.dev/ 这个框架还是非常不错的,轻量级,代码量少,没有Virtual DOM高性能,涵盖了非常多的优点. 先来说说轻量级,通过CSS缩小后有约17kb的大小, ...

  4. 第一百篇博客,想谈谈大学的前端的学习历程和未来的计划

    大家好,您吃了吗?我是Kaiqisan,是一个不善言辞的羞射男孩,昨天是国庆中秋双节,大家过得还开心吗? 秋季叶落之候,空气微凉,被稍稍一拨弄,睡意就涌上大脑,"但今天还有好多事情要做!&q ...

  5. 结合我的大学经历谈谈如何学习前端

    1. 按需调整目标 人活着就不能没有目标,也不可能没有目标.比如活着就是个目标,或者说做人,也是个目标.但是我们更应该关注一些可以量化的具体的目标,比如我今天要刷一道算法题这种.那么如何找到让自己动力 ...

  6. 半月谈 | 谈谈咱们星球的新变化

    点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 上周『自动驾驶之心』邀请到了上海人工智能实验室的蔡新雨研究员.UCLA的徐润生博士加入星球,并分别带来了< ...

  7. SegmentFault 专访 | AlloyTeam 2015 前端技术大会讲师圆桌

    导读 继采访 AC 2015 讲师高工晓思之后,我们又访问了 AC 2015 的另外三位讲师:来自 AlloyTeam 的工程师郭碧青.潘佳韩和王斌,整理成这篇讲师访谈圆桌. 下面是三位讲师的简单介绍 ...

  8. 四年,如何从前端小白蜕变为前端技术专家?

    简介:作者简介:珑晴--淘系技术部前端技术专家,16 年校招实习转正进入的阿里,当时是在聚划算前端团队,随着业务变化一路从聚划算到天猫至今加入淘系技术部,负责日常活动营销的同时,也多次参与大促会场&a ...

  9. 从阿里前端工程化中台实践,看中台建设的舍与得

    作者|朱华军(阿大) 出品|InfoQ&阿里巴巴新零售淘系技术部 导读:随着前端技术不断从 Web 延伸至各种"端",大前端的概念早已成为业内共识.伴随着大前端的发展,与之 ...

最新文章

  1. Oozie使用java启动外部包
  2. Flutter开发之布局-1-Column(15)
  3. leetcode 1339. Maximum Product of Splitted Binary Tree | 1339. 分裂二叉树的最大乘积(树形dp)
  4. 解决Django静态文件配置pycharm高光问题
  5. matlab编程实现二进制树搜索,数据结构: 二进制搜索树(用C语言实现)
  6. Jmeter+ForEach控制器+BeanShell取样器+BeanShell PostProcessor爬取网站信息储存csv
  7. Linux命令——cut命令学习
  8. pymol怎么做底物口袋表面_汽车表面有划痕怎么办?建议大家这样做,自己动手就解决...
  9. 在windows下使用cmd命令行对java文件进行编译和执行
  10. 【语音隐写】基于matlab GUI LSB语音信号数字水印嵌入提取(带面板)【含Matlab源码 1676期】
  11. 【物理应用】基于matlab GUI三相配电网实时仿真【含Matlab源码 1047期】
  12. python 简明教程
  13. ApacheCN 翻译活动进度公告 2019.5.31
  14. matlab局部放大找交点,11.matlab找两条离散曲线的交点
  15. Nginx的HTTP健康检测
  16. 单独设置一页或者多页的页眉或者页脚
  17. 我看到左岸读书上的留言,感觉挺有新意
  18. 云服务器win10系统搭建ftp,win10系统搭建ftp服务器
  19. tensorflow输出的人脸图片经过OpenCV write的图片是蓝色的问题的解决方案
  20. python 全栈开发,Day86(上传文件,上传头像,CBV,python读写Excel,虚拟环境virtualenv)

热门文章

  1. 深入理解javascript函数
  2. Linux SSH Publickey登录
  3. Jafka源码粗略解读之二--关于JMX
  4. 帮助别人是一种快乐!
  5. 合集 | 我在传统行业做数字化转型
  6. WebSocket服务器(物联网下行通知神器)
  7. Windows 11 操作系统最低硬件要求
  8. 解决 WPF 绑定集合后数据变动界面却不更新的问题(使用 ObservableCollection)
  9. 骚年快答 | 微服务架构中的BFF到底是啥?
  10. 从零开始实现 ASP.NET Core MVC 的插件式开发(七) - 问题汇总及部分问题解决方案...