前端学习路线(2023)
这个前端学习路线看起来很详细和全面,涵盖了从基础知识到高级框架,从单机开发到全栈项目,从混合应用到原生应用,从性能优化到架构设计的各个方面。如果你能够按照这个路线学习和实践,我相信你一定能够成为一名优秀的前端工程师。
不过,我也要提醒你,这个路线并不是一成不变的,你需要根据自己的实际情况和学习进度来调整和优化,同时也要关注前端领域的最新动态和技术变化,不断地更新自己的知识体系和技能树。前端开发是一个永远学不完的领域,只有不断地学习和进步,才能保持自己的竞争力和创造力。祝你成功!
第一阶段前端开发基本功
HTML
HTML元素和属性HTML表单和图形处理HTML媒体和最佳实践
CSS
CSS基本语法与选择器CSS背景、文本、边框、轮廓与颜色CSS列表、表单与表格样式CSS样式层叠与继承CSS盒模型、定位、浮动和显示属性CSS渐变、阴影与滤镜CSS变换、过渡与动画Web字体与多列布局
页面制作工具
VSCode及插件PhotoShop的使用和图片整合markman、pxcook工具使用蓝湖、sketch与axure工具使用
该阶段获得初级web前端工程师水平,熟悉前端开发的HTML与CSS基础知识。能够配合UI设计师进行项目开发。
可从事职位:初级前端开发工程师、前端实习生
第二阶段 页面布局实战
布局技术
BFC、 IFC、 GFC、FFC等概念Flex弹性布局网格布局媒体杳询viewport. rem, vw, dpr与ppi
布局规范与方案
PC端网站布局规范PC端管理系统布局规范流式布局 (100%布局)等比缩放布局(rem布局)响应式布局移动端reset, 1px border,高清图片移动端设备适配最佳实践
该阶段获得初级Web前端工程师水平,能够完成各种PC端与移动端网页布局与样式设计实现。可以做各浏览器兼容与设备适配。
可从事岗位:初级前端开发工程师、前端实习生
第三阶段 前端开发内功
原生JavaScript
交互功能开发某本语法流程控制语句函数与数组String与DateBOMSDOM拖拽效果客户端存储(cookie存储、 WebStorage)正则表达式Ajax面向对象基础运动与游戏开发数据结构与算法
JavaScript
工具库自主研发DOM库事件库AJAx库原型和继承库MVVM核心库基于SPA的路由库
面向对象进阶与ES应用
Promiseasync/await浯法try / catch 浯法原型链构造函数执行上下文栈与执行上下文作用域链闭包thisES5-ES12设计模式
原生JS经典交互特效开发
时间轴特效tab页面切换效果网页定位导航特效滑动门特效焦点图轮播特效导航条菜单效果瀑布流特效弹出层效果倒计时效果抽奖效果
该阶段获得中级Web前端工程师水平,主要进行页面行为交互,实现网站中常见交互特效。
可从事岗位:JavaScript开发工程师
第四阶段 PC端全栈项目开发
前端工具库
Animate CSSVanillaJSLodashSwiperaxiosMoment.jsEslint, prettierEChartsjQuery
前端工程化与模块化
LinuxLess/SassNPMGitAMD/CMD/UMDES6模块化
Node.js服务端开发
Node 基础入门Express 框架基础中间件开发MVC开发模式基于Express的后端路由MongoDB数据库的基本使用基于Token的登录状态保持Node.js的JEventLoop文件上传(单文件/多文件)模板引擎静态资源加载服务端渲染页面
PC端网站开发
该阶段获得中级 Web 前端工程师水平,并能配合 U1 和后台实现项目。
可从事职位:网站开发工程师、Web前端开发工程师
第五阶段 前端高级框架技术
Angular
Angular脚手架与创建命令TypeScript语法与修饰模式Ng服务与依赖注入Ng组件与生命周期Ng路由与Ng状态管理基于Angular的UI组件库
数据可视化
数据可枧化基础Echarts/HighchartsD3.js入门D3.js入进阶D3.js选择器与数据基于Echarts/D3.js项目实战
React
React 18ReactRouter6Umi技术其他技术栈开发基于React的C端和B端项目
Vue
Vue3选项式APIVue3组合式APIVite2+SFCVueRouter4Vuex4Pinia2TypeScript基础TS+Vue3其他技术栈开发基于Vue3的C端和B端项目
全栈Web3.0开发
Web3.0 生态概念详解Solidity 智能合约基础与实践Web3.js 助飞你的 DApp上以太坊智能合约 Solidity+以太坊实践应用 Solidity 开发以太坊在线钱包 Web3.0 项目
该阶段获得高级Web前端工程师水平,主要进行前后端全栈开发。能够独立完成一个中小项目的前后台。对于Web开发有着非常熟练的编程能力。
可从事职位:高级Web开发工程师
第六阶段 混合应用开发技术
微信公众号
微信内置公众号定制JSSDK接入公众号常见功能开发
微信小程序
微信小程序基础小程序高级应用原生多端小程序开发uni-app多端小程序框架Taro 多端小程序框架
Electron技术
Electron入门Electron 调试技巧Electron主进程与渲染进程APIElectron 与 React、Vue集成构建Windows、Mac及Linux跨平台应用
PWA技术
什么是PWAPWA项目实战
该阶段高级Web前端开发工程师/Electron开发工程师,获得高级Web前端工程师水平,主要进行混合式App项目开发。能够实现多端开发并拥有多端开发能力,整合资源,实现跨平台跨设备的架构能力。
可从事岗位:混合APP开发工程师/小程序开发工程师
第七阶段 原生应用开发技术
HarmonyOS鸿蒙开发
认识鸿蒙框桇基础肉置组件自定义组件接口
Flutter
Flutter环境搭建界面结构与基础部件布局与表单Dart语法widgets容器网络请求与路由
ReactNative
RN环境搭建RN基础组件RN动画和手势Expo基础RN+Expo调用硬件设备
该阶段获得大前端高级开发工程师水平,主要涉猎原生APP开发。主导移动端多元产品项目实现。能够跨平合开发提出可建设性解决方案。
可从事岗位:大前端高级开发工程师
第八阶段 大前端架构
开发工具及服务器技术
Webpack5Vite2Git工具及GitHub/GiteeESLint与单元测试TypeScript架构阿里云ECS: linux服务器Nginx: Web服务器Docker :容器化应用Serverless: 无服务器技术WebAssembly技术
前端性能
SSR技术Nuxt.js 服务器端渲染Next.js 服务器端渲染SEO:搜索引擎优化
低代码与组件库开发
低代码平台搭建基于Vue/React/小程序的U组件库开发
微前端架构
什么是微前端微前端的实现技术基于Webpack+Vue+React微前端实战
安全
前端攻击前端异常监控
该阶段获得大前端架构师水平,主要进行前端项目架构和项目把控。能够解决网站出现的突发状况,能够改进网站性能到极致。拥有大型网站、大量高井发访问量等开发经验。
可从事岗位:大前端架构师/资深前端开发工程师
除了学习路线,我还有一些其他的建议,希望对你有用:
多看多写多练。前端开发是一个实践性很强的领域,你需要通过不断地编写代码,来巩固你的知识点,提高你的编程能力,发现你的问题和不足,同时也要多看一些优秀的代码和项目,学习他们的思路和技巧,拓展你的视野和思维。
多思考多总结多分享。前端开发是一个需要不断思考和创新的领域,你需要通过不断地思考,来深入理解你的知识点,提出你的疑问和想法,解决你的难题和挑战,同时也要多总结你的经验和收获,分享给他人,得到他人的反馈和建议,促进你的成长和进步。
多交流多合作多参与。前端开发是一个需要团队协作和社区参与的领域,你需要通过不断地交流,来沟通你的需求和意见,了解他人的想法和建议,协调你的工作和任务,同时也要多合作,与他人一起完成项目和功能,提高你的协作能力和效率,同时也要多参与,加入一些前端学习交流群 ,或者参加一些前端相关的活动和比赛,扩大你的人脉和影响力。
关注我公众号:一粒程序米,获取更多学习资源。
相关文章:
前端学习路线(2023)
这个前端学习路线看起来很详细和全面,涵盖了从基础知识到高级框架,从单机开发到全栈项目,从混合应用到原生应用,从性能优化到架构设计的各个方面。如果你能够按照这个路线学习和实践,我相信你一定能够成为一名优秀的前…...

景区如何对旅行社进行分销管理?
旅行社的买票能力强,一般景区会跟多家旅行社合作门票分销。其中卖票下单、价格设定、财务对账结算都出现了很多问题,导致对账困难,查询困难,甚至可能有偷票漏票的情况出现,给景区收入造成损失。那要怎么处理呢…...

四步从菜鸟到高手,Python编程真的很简单(送书第一期:文末送书2本)
🍁博主简介 🏅云计算领域优质创作者 🏅华为云开发者社区专家博主 🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支持,我…...
Thread类的常用结构(java))
1 构造器 public Thread() :分配一个新的线程对象。public Thread(String name) :分配一个指定名字的新的线程对象。public Thread(Runnable target) :指定创建线程的目标对象,它实现了Runnable接口中的run方法public Thread(Runnable target,String name) :分配一…...

CSS :nth-child
CSS :nth-child :nth-child 伪类根据元素在同级元素中的位置来匹配元素. CSS :nth-child 语法 值是关键词 odd/evenAnB最新的 [of S] 语法权重 浏览器兼容性 很简单的例子, 来直觉上理解这个伪类的意思 <ul><li class"me">Apple</li><li>B…...

国内好用的企业级在线文档有哪些?
在当今数字化时代,企业级在线文档已经成为了现代办公环境中不可或缺的一部分。它不仅能够提高工作效率,还能够实现多人协同编辑,满足团队协作的需求。那么,在国内市场上,哪些企业级在线文档产品备受企业青睐呢…...
P1217 [USACO1.5] 回文质数 Prime Palindromes
题目描述 因为 151 151 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 151 151 是回文质数。 写一个程序来找出范围 [ a , b ] ( 5 ≤ a < b ≤ 100 , 000 , 000 ) [a,b] (5 \le a < b \le 100,000,000…...
【STM32MP1系列】DDR内存测试用例
DDRDDR内存测试 一、uboot下测试DDR内存二、Linux内核下测试DDR内存1、使用memtester测试DDR内存2、使用stressapptest测试DDR内存三、Buildroot中构建memtester软件包四、搭建stressapptest软件包五、注意事项一、uboot下测试DDR内存 输入bdinfo查看DDR起始地址以及大小: b…...

【CAS6.6源码解析】调试Rest API接口
CAS的web层默认是基于webflow实现的,ui和后端是耦合在一起的,做前后端分离调用和调试的时候不太方便。但是好在CAS已经添加了支持Rest API的support模块,添加相应模块即可。 文章目录 添加依赖并重新build效果 添加依赖并重新build 具体添加…...

C++设计模式之模板方法、策略模式、观察者模式
面向对象设计模式是”好的面向对象设计“,所谓”好的面向对象设计“指的是可以满足”应对变化,提高复用“的设计。 现代软件设计的特征是”需求的频繁变化“。设计模式的要点是”寻求变化点,然后在变化点处应用设计模式,从而更好地…...

【计算机网络 02】物理层基本概念 传输媒体 传输方式 编码与调制 信道极限容量 章节小结
第二章 -- 物理层 2.1 物理层基本概念2.2 物理层下的传输媒体2.3 传输方式2.4 编码与调制2.5 信道极限容量2.6 章节小结 2.1 物理层基本概念 2.2 物理层下的传输媒体 传输媒体也称为传输介质或传输媒介,他就是数据传输系统中在发送器和接收器之间的物理通路 传输媒…...

无涯教程-jQuery - serialize( )方法函数
serialize()方法将一组输入元素序列化为数据字符串。 serialize( ) - 语法 $.serialize( ) serialize( ) - 示例 假设无涯教程在serialize.php文件中具有以下PHP内容- <?php if( $_REQUEST["name"] ) {$name$_REQUEST[name];echo "Welcome ". $na…...

一套不错的基于uniapp实现的投票类小程序/H5
最近作者心血来潮,想做一个热点话题投票,话题相关的资讯跟踪类的小程序,方便自己发布一些大家比较关心的话题。 基于以上需求,说干就干,首先需要定义一个需求: 1、支持热门话题投票、排行榜(日…...

Mac代码编辑器sublime text 4中文注册版下载
Sublime Text 4 for Mac简单实用功能强大,是程序员敲代码必备的代码编辑器,sublime text 4中文注册版支持多种编程语言,包括C、Java、Python、Ruby等,可以帮助程序员快速编写代码。Sublime Text的界面简洁、美观,支持多…...
django------模糊查询
1.常用模糊查询的方法 queryset中支持链式操作 bookBook.objects.all().order_by(-nid).first() 只要返回的是queryset对象就可以调用其他的方法,直到返回的是对象本身 大于、大于等于、小于、小于等于: # __gt 大于> # __gte 大于等于> # __lt 小于< …...
AVFoundation - 音视频组合编辑
文章目录 一、简要说明二、使用1、音频和视频合成2、视频的拼接一、简要说明 相关类 AVMutableCompositionAVMutableCompositionTrack二、使用 1、音频和视频合成 - (void)testCom1{AVMutableComposition *mutableComposition = [AVMutableComposition composition];AVMu...

jpa生成实体类,jpa根据数据库表生成实体类
jpa生成实体类,jpa根据数据库表生成实体类jpa根据数据库表结构生成实体idea下SpringbootJPA从数据库自动生成实体类JPA用数据库表直接生成实体类Spring boot整合jpa(一),根据表生成实体IDEA下SpringData-JPA根据数据库表生成实体类idea怎么根据数据库表自动生成JPA实…...

嵌入式Linux系统组成
嵌入式Linux系统的组成 文章目录 嵌入式Linux系统的组成一、发行版Linux系统VS嵌入式Linux系统二、嵌入式Linux系统架构一、发行版Linux系统VS嵌入式Linux系统 1.产品 发行版Linux系统产品:服务器、消费平板、消费手提电脑 嵌入式Linux系统产品:扫地机器人,小米机顶盒特定场…...

【iOS】—— RunLoop和多线程相关问题总结
RunLoop 1. 讲讲RunLoop,项目中有用到过吗? RunLoop 的基本作用:保持程序的持续运行,节省 CPU 的资源,提高程序的性能 ( 没有事情,就请休眠,不要功耗。有事情,就处理&a…...
在CSDN学Golang云原生(gitlab)
一,基于Docker安装gitlab runner 在Golang中,基于Docker安装GitLab Runner需要以下步骤: 首先,您需要安装Docker和Docker Compose。这可以通过访问官方网站来完成。接下来,您需要创建一个名为docker-compose.yml的文…...

【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
Web中间件--tomcat学习
Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机,它可以执行Java字节码。Java虚拟机是Java平台的一部分,Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...

抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...