前端开发的历史

什么是前端?

前端代码在浏览器运行,后端代码在服务器运行。

前后端不分时代

互联网发展的早期,前后端开发是一体的,前端代码是后端代码的一部分。

  1. 后端收到浏览器的请求
  2. 生成静态页面
  3. 发送到浏览器

后端MVC的开发模式

那是的网站开发,采用的是后端MVC模式。

  • Model(模型层):提供/保存数据
  • View(视图层):展示数据,提供用户界面
  • Controller(控制层):数据处理,实现业务逻辑
    前端只是后端MVC的V。

MVVM模式

另一些框架提出MVVM模式,用View Model代替Controller。
Model
View
View-Model:简化Controller,唯一作用就是为View提供处理好的数据,不含其它逻辑。

Angular

Google公司推出的Angular是最流行的MVVM前端框架。
它的风格属于HTML语言的增强,核心概念是双向数据绑定。

Vue

Vue.js是现在很热门的一种前端MVVM框架。
它的基本思想于Angular类似,但是用法更简单,而且引入了响应式编程的概念。

前后端分离

  • Ajax -> 前端应用兴起
  • 智能手机 -> 多终端支持
    这两个原因,导致前端开发方式发生根本的变化。
    前端不再试MVC中的V,而是单独的一层。

Node

2009年,Node项目诞生,它是服务器上的JavaScript运行环境。
Node = JavaScript + 操作系统API
Node的意义

  • JavaScript成为服务器脚本语言,与Python和Ruby一样
  • JavaScript成为唯一的浏览器和服务器都支持的语言
  • 前端工程师可以编写后端程序了

前端开发模式的根本改变

  • Node环境下开发
  • 大量使用服务器端工具
  • 引入持续集成等软件工程的标准流程
  • 开发完成后,编译成为浏览器可以运行的脚本,放在CDN

全栈工程师

前端工程师正在转变为全栈工程师

  • 一个人负责开发前端和后端
  • 从数据库到UI的所有开发

全栈技能

怎样才能称为全栈工程师?

  • 传统前后端技能:HTML、CSS、JavaScript
  • 一门后台语言
  • 移动端开发:IOS/Android/HTML5
  • 其他技能:数据库、HTTP等等

软件行业的发展动力

历史演变:前后端不分 -> 前后端分离 -> 全栈工程师
动力:更加产业化、大规模的生产软件

  • 效率更高
  • 成本更低

通用型好、能够快速产出的技术最终会赢,单个程序员的生产力要求越来越高。

H5就是一个最好的例子

为什么H5技术会赢得移动端?

  • 开发速度快:Native需要重新编译才能开到结果,H5是及时输出
  • 开发成本低:Native需要两个开发团队,H5只要一个
  • 快速开发:安卓Native新版本需要24小时,IOS需要3~4天,H5可以随时更新

未来软件的特点

  • 联网
  • 高并发
  • 分布式
  • 跨终端

现在基于Web的前端技术,将演变为未来所有软件的通用的GUI解决方案。

未来只有两种软件工程师

  • 端工程师
    • 手机端
    • PC端
    • TV端
    • VR端
    • ......
  • 云工程师

你可能感兴趣的:(前端开发的历史)