在了解前端、大前端以及微前端之前,我们先来认识一下不同类型的应用程序或网页,它们在开发方式、运行环境、用户体验和分发渠道等方面的区别
- H5:通常指用HTML5技术开发的Web页面,运行在任何支持HTML5的浏览器上。web页面开发除了可以用传统的前端三剑客外,也可以用react、vue等主流框架,这些框架与 HTML5 技术栈完全兼容。但是h5页面在性能上不如原生应用。
- App (移动应用) :App是用ios/android操作系统开发的原生应用程序,有更好的性能且可以充分利用设备的硬件特性。开发App需要使用特定的编程语言和工具,如Swift或Objective-C用于iOS,Java或Kotlin用于Android。
- 桌面端应用:桌面端应用是桌面操作系统(如Windows,macOS或Linux)开发的桌面应用程序。提供了丰富的功能和更好的性能,通常通过操作系统的界面直接安装和运行。桌面端应用开发用到的技术栈有C++、C#、Java或特定平台的开发工具和框架。
- 小程序:小程序是一种不需要下载安装即可使用的应用,它们通常在微信、支付宝等平台内部运行。程序的开发和运行依赖于宿主应用提供的API和环境,小程序适合快速开发和部署,易于分发和更新,但功能和性能受限于宿主平台的限制。
前端
一、什么是前端开发?
前端开发是创建WEB页面、APP、桌面端应用或小程序等前端界面呈现给用户的过程,通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。
二、前端应用
互联网行业对前端的需求量确实大,因为移动端应用、前台PC、游戏、中台、桌面应用、VR、智能电视、AI、小程序等领域,都需要前端。
前端开发工程师
1. 使用Div+css并结合Javascript负责产品的前端开发和页面制作。
2. 熟悉W3C标准和各主流浏览器在前端开发中的差异,能熟练运用DIV+CSS,提供针对不同浏览器的前端页面解决方案 。移动HTML5的性能和其他优化,为用户呈现最好的界面交互体验和最好的性能。
3. 负责相关产品的需求以及前端程序的实现,提供合理的前端架构 。改进和优化开发工具、开发流程、和开发框架。 4. 与产品、后台开发人员保持良好沟通,能快速理解、消化各方需求,并落实为具体的开发工作 ;能独立完成功能页面的设计与代码编写,配合产品团队完成功能页面的需求调研和分析。 5. 了解服务器端的相关工作,在交互体验、产品设计等方面有自己的见解。
资深前端开发工程师
相比较“前端开发工程师”而言,更加资深,工作职责更大。一般而言,资深前端开发工程师需要使用JavaScript或者ActionScript来编写和封装具有良好性能的前端交互组件,熟练使用CSS+XHTML完美输出视觉界面。同时还要对Web项目的前端实现方案 提供专业指导和监督并在日常工作之中对新人及相关开发人员进行前端技能的培训和指导。另外,还要跟踪研究前端技术,设计并实施全网前端优化。HTML5、node.js(JavaScript编程的后台语言)兴起,要求资深前端熟悉后端,并且要在商业模式、代码架构思想等维度去整体考虑前端的全局布局。
前端架构师
前端架构师更偏管理,但职责要求不仅限于管理。前端架构师需要带领组员实现全网的前端框架和优化,创建前端的相应标准和规范,完善并推广和应用自己的标准和框架。同时,还要站在全局的角色为整个网站的信息架构和技术选型提供专业意见和方案。
大前端
一、什么是大前端开发?
大前端是指在不同的终端设备上,通过统一的技术架构和开发方式,实现跨平台、跨终端的应用开发。涉及多种设备和平台的前端开发工作,比如web前端、移动应用开发、桌面应用开发、小程序开发、小程序开发、跨平台开发、智能设备界面以及游戏开发等。
大前端开发者需要具备跨平台的设计理念和技能,能够根据不同设备的特性和用户需求,提供一致且优质的用户体验
二、大前端的特点
于一次开发,适用于所有平台,开发者不用为一个APP需要做Android和iOS两种模式而担心。随着微信小程序等平台的兴起,跨平台前端技能变得日益重要。大前端正成为移动和Web开发的主流趋势,并扩展到智能设备显示终端的开发。它结合打包技术和混合应用开发,覆盖了桌面应用和基于Node.js的后端开发。
微前端
一、什么是微前端开发?
微前端的概念
微前端借鉴了微服务的理念,将一个庞大的应用拆分成多个独立灵活的小型应用,每个应用都可以独立开发,独立运行,独立部署,还可以随意组合。目的是为了降低耦合度,更加灵活。
二、微前端的特点
-
技术栈:主框架不限制接入应用的技术栈,子应用可自主选择技术栈.
-
独立开发、部署:各团队之间仓库独立,单独部署,互不依赖。实现了跨团队。
-
增量升级:当一个应用越来越庞大,技术升级或重构相当麻烦,而微应用具备渐进式升级的特性。
-
独立运行:微应用之间运行互不依赖,有独立的状态管理。
微前端方案
- iframe方案
- qiankun方案
- micro-app方案
- EMP方案
- 无界微前端方案