当前位置: 首页 > news >正文

前端学习路线(2023)

这个前端学习路线看起来很详细和全面,涵盖了从基础知识到高级框架,从单机开发到全栈项目,从混合应用到原生应用,从性能优化到架构设计的各个方面。如果你能够按照这个路线学习和实践,我相信你一定能够成为一名优秀的前端工程师。

不过,我也要提醒你,这个路线并不是一成不变的,你需要根据自己的实际情况和学习进度来调整和优化,同时也要关注前端领域的最新动态和技术变化,不断地更新自己的知识体系和技能树。前端开发是一个永远学不完的领域,只有不断地学习和进步,才能保持自己的竞争力和创造力。祝你成功!

第一阶段前端开发基本功

HTML

HTML元素和属性HTML表单和图形处理HTML媒体和最佳实践

CSS

CSS基本语法与选择器CSS背景、文本、边框、轮廓与颜色CSS列表、表单与表格样式CSS样式层叠与继承CSS盒模型、定位、浮动和显示属性CSS渐变、阴影与滤镜CSS变换、过渡与动画Web字体与多列布局

页面制作工具

VSCode及插件PhotoShop的使用和图片整合markman、pxcook工具使用蓝湖、sketch与axure工具使用

该阶段获得初级web前端工程师水平,熟悉前端开发的HTML与CSS基础知识。能够配合UI设计师进行项目开发。

可从事职位:初级前端开发工程师、前端实习生

第二阶段 页面布局实战

布局技术

BFCIFCGFCFFC等概念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)

这个前端学习路线看起来很详细和全面,涵盖了从基础知识到高级框架,从单机开发到全栈项目,从混合应用到原生应用,从性能优化到架构设计的各个方面。如果你能够按照这个路线学习和实践,我相信你一定能够成为一名优秀的前…...

景区如何对旅行社进行分销管理?

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

四步从菜鸟到高手,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…...

国内好用的企业级在线文档有哪些?

在当今数字化时代&#xff0c;企业级在线文档已经成为了现代办公环境中不可或缺的一部分。它不仅能够提高工作效率&#xff0c;还能够实现多人协同编辑&#xff0c;满足团队协作的需求。那么&#xff0c;在国内市场上&#xff0c;哪些企业级在线文档产品备受企业青睐呢&#xf…...

P1217 [USACO1.5] 回文质数 Prime Palindromes

题目描述 因为 151 151 151 既是一个质数又是一个回文数&#xff08;从左到右和从右到左是看一样的&#xff09;&#xff0c;所以 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实现的&#xff0c;ui和后端是耦合在一起的&#xff0c;做前后端分离调用和调试的时候不太方便。但是好在CAS已经添加了支持Rest API的support模块&#xff0c;添加相应模块即可。 文章目录 添加依赖并重新build效果 添加依赖并重新build 具体添加…...

C++设计模式之模板方法、策略模式、观察者模式

面向对象设计模式是”好的面向对象设计“&#xff0c;所谓”好的面向对象设计“指的是可以满足”应对变化&#xff0c;提高复用“的设计。 现代软件设计的特征是”需求的频繁变化“。设计模式的要点是”寻求变化点&#xff0c;然后在变化点处应用设计模式&#xff0c;从而更好地…...

【计算机网络 02】物理层基本概念 传输媒体 传输方式 编码与调制 信道极限容量 章节小结

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

无涯教程-jQuery - serialize( )方法函数

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

一套不错的基于uniapp实现的投票类小程序/H5

最近作者心血来潮&#xff0c;想做一个热点话题投票&#xff0c;话题相关的资讯跟踪类的小程序&#xff0c;方便自己发布一些大家比较关心的话题。 基于以上需求&#xff0c;说干就干&#xff0c;首先需要定义一个需求&#xff1a; 1、支持热门话题投票、排行榜&#xff08;日…...

Mac代码编辑器sublime text 4中文注册版下载

Sublime Text 4 for Mac简单实用功能强大&#xff0c;是程序员敲代码必备的代码编辑器&#xff0c;sublime text 4中文注册版支持多种编程语言&#xff0c;包括C、Java、Python、Ruby等&#xff0c;可以帮助程序员快速编写代码。Sublime Text的界面简洁、美观&#xff0c;支持多…...

django------模糊查询

1.常用模糊查询的方法 queryset中支持链式操作 bookBook.objects.all().order_by(-nid).first() 只要返回的是queryset对象就可以调用其他的方法,直到返回的是对象本身 大于、大于等于、小于、小于等于&#xff1a; # __gt 大于> # __gte 大于等于> # __lt 小于< …...

AVFoundation - 音视频组合编辑

文章目录 一、简要说明二、使用1、音频和视频合成2、视频的拼接一、简要说明 相关类 AVMutableCompositionAVMutableCompositionTrack二、使用 1、音频和视频合成 - (void)testCom1{AVMutableComposition *mutableComposition = [AVMutableComposition composition];AVMu...

jpa生成实体类,jpa根据数据库表生成实体类

jpa生成实体类&#xff0c;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&#xff0c;项目中有用到过吗&#xff1f; RunLoop 的基本作用&#xff1a;保持程序的持续运行&#xff0c;节省 CPU 的资源&#xff0c;提高程序的性能 &#xff08; 没有事情&#xff0c;就请休眠&#xff0c;不要功耗。有事情&#xff0c;就处理&a…...

在CSDN学Golang云原生(gitlab)

一&#xff0c;基于Docker安装gitlab runner 在Golang中&#xff0c;基于Docker安装GitLab Runner需要以下步骤&#xff1a; 首先&#xff0c;您需要安装Docker和Docker Compose。这可以通过访问官方网站来完成。接下来&#xff0c;您需要创建一个名为docker-compose.yml的文…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...

STM32---外部32.768K晶振(LSE)无法起振问题

晶振是否起振主要就检查两个1、晶振与MCU是否兼容&#xff1b;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容&#xff08;CL&#xff09;与匹配电容&#xff08;CL1、CL2&#xff09;的关系 2. 如何选择 CL1 和 CL…...