我个人情况是有1年web前端工作经验,半年实习经验。2020年毕业。我大一学的是C语言,所以一直对编程感兴趣。大三开学后开始自学web前端相关知识。之所以选择前端方向,一方面是因为我对网页比较感兴趣,而且我哥说现在的web前端发展趋势比较好(我哥在网易做程序员),所以我就把前端方向确立为我以后就业的主要方向。从开始自学到大四实习,一共花了1年2个月,把前端的主要技术点和框架都过了一遍,自己做了三个实际的Vue项目。然后在2019年10月进入杭州本地一家公司实习半年,直到2020年4月成为这家公司的转正员工。工资是12K*14月薪,五险一金。目前包括实习时间在内,已经在这家公司工作一年半以上,不打算跳槽。我哥说的是,尽量不要因为工资问题频繁跳槽。如果这家公司还有很多空的空间可以成长,可以学到很多东西,那就不要轻易跳槽。因为在我一年的自考期间,哥哥给了我很多帮助,所以我一定要听他的建议,我觉得是真理。因为刚毕业一年,所以这篇文章主要写给在校的学弟学妹,希望能给你带来一些帮助。
给你总结一下我一年来学了哪些前端技术:说明:以下内容是我一年来掌握的全部内容。为什么我把它们列得这么详细?这才是重点。其实这些技术大家平时都是可以接触到的,我们在实际的开发工作中也都会用到这些技术,只是不同的是大家掌握的程度不同而已。我们学习的技术名称可能是一样的,但是我们对这项技术的理解深度和实际操作的水平可能会有很大的不同。这也是为什么我第二学历毕业后之一份工作能拿到12K的原因。我觉得是这个原因,就是因为我学习很认真,所以希望大家不要抱怨太多内容。如果你真的想成为前端领域的技术大牛,这是必须的。
一定要看到最后,有所有前端学习资料的链接!
一定要看到最后,有所有前端学习资料的链接!
一定要看到最后,有所有前端学习资料的链接!
一. HTML/CSS3标签基础DTD与META语义化选择器权重与优先级匹配规则浮动与清除BFC类名组合规则SEO前端技巧定位叠加技巧伪类伪元素盒子模型代码规范性能优化渲染原理CSS Spritesiconfont字体图标布局思路布局定式css3动画css3选择器css3过渡flex布局背景渐变css3实用动效3D模块css3变量em/rem/vw企业内部多页面项目实战第二,JavaScript1、ECMAScript
语句语法数据类型运算符隐式转换运算规则控制流程作用域作用域链作用域解析js解释引擎字符串属性方法for of/for in数组属性方法对象广义对象概念对象特性存储机制深拷贝对象实际应用工厂模式构造函数原型原型链原型指向封装多种继承包装对象thisthis指向js数据处理垃圾GC闭包原理与应用debug方法论浏览器控制台工具应用面向对象开发函数式开发纯函数递归函数回调函数组合函数缓存函数柯里化函数偏函数函数防抖与节流高级函数IIFE函数模块化、数学对象高级数组方法(reduce、filter、map、every、some、forEach、find、findIndex、include)等、高级对象方法(entires、defineProperty、freeze、fromEntries、assign、keys、create、hasOwnProperty)等this通过bind、call、apply指向偏移、同步与异步、闭包模块化、数据形变处理、性能处理2、DOM/BOM
DOM对象与方法节点与遍历树DOM选择器DOM节点增删改查DOM样式操作DOM位置获取与偏移DOM对象与标签区别DOM虚拟化DOM事件Event对象定时器与监听器事件委托事件 *** 事件分流事件冒泡默认行为事件捕获防抖节流滚动键盘行为事件降频行为锁机制拖拽模组碰撞检测距离判断三角函数方向判断运动框架弹性运动重力加速度DOM树CSSOM树渲染解析加载回流重绘浏览器线程与阻塞BOM深入window对象NavigatorHistoryScreenLocationspa概念本地传参日期对象使用日期格式化封装随机封装DOM分片容器3。 *** 业务应用扩展
*** ON对象数据解析 *** ON方法模板渲染缓存懒加载正则表达式RegExp元字符修饰符正向预查贪婪模式replace方法分组与不分组test、match与exec正则库封装表单校验图片预存懒加载自定义封装滚动组件多重轮播(循环、视差、旋转木马)、选项卡切换、楼梯导航、吸顶导航、拖拽导航 、JavaScript编码风格指南console应用技巧4,ECMAScript 5-ECMAScript 9扩展
版本解读应用环境let、const解构赋值箭头函数对象解构reset参数解构ClassSetGetExtendsSuperStaticprivate实现symboPromiseproxy *** 拦截async/await对象新增API数组新增API字符串新增API原型属性对象修饰 *** 拦截链式询问空值合并运算符泡泡龙面向对象游戏开发三、html 5/移动开发部分1,HTML5标签和API
HTML5概念定义新增特性DTD对比新增H5标签新增语义化H5标签H5表单H5拖拽事件VideoAudiofullScreenFileReader文件流Blob对象sessionStoragelocalStorage、 *** 状态页面生命周期网页状态监听地理信息与定位canvas画布worker多线程Notifications桌面通知播放器开发 canvas交互特效开发移动端适配/事件移动端适配概念尺寸与分辨率原理PPI与DPI计算DIP与DPR设备像素概念视口viewport概念布局视口视觉视口理想视口视口适配方案(Meta viewport)缩放设置screen窗口大小API媒体查询@mediarem适配vw vh适配移动端适配方案flexible rem方案vh vw方案复合方案高清适配方案移动端字体缩放解决1px边框问题解决半像素线图片高清适配image-setSrcsetjs拼接URL技巧IPhonex刘海屏适配安全区域fit与envMeta权限管理兼容优化IOS头部底部闪屏回退输入框问题输入法空格问题默认首字母大写问题滑动卡顿问题等终端样式美化与访问判断Touch事件组封装click延迟处理FastClick使用禁用缩放设置理想视口2。公共类库/工具
jQuery: 元素选择、添加、删除和纠错、事件处理、位置获取、动画过渡、高级方法、特效应用。
ZEPTO: jquery,DOM操作,移动事件,点击延迟处理,移动端触摸事件组。
基础UI库:layerUI、easyUI、bootStrap、UI模块化、UI库使用技巧、文档解读、案例调试、表单系统iScroll、touchjs等移动事件库。
Swiper: 手机网站触摸滑动,轮播插件,模块化应用,源代码解读。
art-template: 模板引擎模板语法,渲染方法,原生模板引擎实现
css预处理:sass,少用手写笔深入学习,预处理语法,css编程,民信,预处理函数,继承,嵌套vscode高级插件及配置liveserver sass模板应用,预处理应用
3。日期选择器移动终端的本地组件开发
需求分析业务规则技术栈选型文件输出规则技术分析MVC模型概念与设计业务逻辑分类view层适配方案原型布局搭建模板化生成工具函数开发面向对象式业务设计能类日期对象开发交互业务封装模块对接优化设计面向对象高级程序设计四。节点和工程开发1。节点的本机基础
Node基础概念NPM命令V8引擎概念JavaScript模块化 CMD AMD UMDEventLoop事件循环同步异步阻塞非阻塞任务队列宏任务微任务原生Node模块核心模块与requireModule触发器events与path模块fs模块Buffer对象URL模块HTTP模块stream流Node原生封装HTTP与文件服务器2,节点框架
express框架使用中间件核心对象路由配置模板引擎数据脚本Router核心CORS配置错误处理校验封装PM2管理nodemoon管理MORGAN日志处理查询正则捕获中间件开发bodyParse等第三方中间件使用文件流上传下载文件流切分3。webpack工程建设
工程化概念工程化工具介绍webpack基础知识webpack配置与运行plugin插件loader使用入口出口配置模块modules依赖处理dev Servertarget文件切分build打包热处理package管理性能优化测试处理第三方插件使用babel等4、前端数据交互
HTTP通信交互原理请求响应MIMEURI地址报文解析端口报文流测试监听抓包TCP/IP握手机制 *** 业务模型 *** 缓存网关隧道等概念method与请求头分类基础XMLHTTPRequest对象方法属性方法ajax异步交互同源策略原理原生js封装ajax交互jquery的ajax封装交互jsonp跨域处理cors跨域处理携带cookie与跨域处理 *** 服务器跨域处理cookie验证与通信axios库的使用 *** 封装拦截合并二次封装通信加密策略数据对称加密数据非对称加密RSA加密实践MD5加密实践登录注册与鉴权机制Authenticity认证Token认证JWT认证session状态管理oauth认证5。RESTful界面设计
RESTful设计原则状态码设计与规范服务器响应规则与格式前后端接口协议制定传统RESTful改进API设计规范资源定位 *** ON模式合约说明资源标识符缓存友好APIHTTP头管理文档定义松耦合原则一致性重用稳定性原则6。数据库存储
MongoDB基础概念NoSQL与SQCAP定理RDBM *** ongoDB语法指令监控与GUIMongoDb驱动Mongoose应用数据库创建 *** 增删改查文档增删改查数据库查询高级查询操作通道查询多条件查询反向筛选索引处理aggregate聚合管道validation验证population联表middleware中间件处理查询ERROR类二次封装动词 (verb的缩写)Vue框架1,vue基金会
工具与插件mvc mvp mvvm设计理念原生js实现MVVM核心框架vue设计模式生命周期命令与属性组件化数据驱动与双向绑定虚拟DOM概念原理模板语法条件与列表数组监测计算属性事件处理修饰与表单监听器过滤器methods watch computed filter对比组件化开发动态组件组件通信、高级组件通信插槽vue动画实例对象setGetnextTickvue插件2、vue工程
Babelwebpack配置vuevue单文件组件vue-cli工程平台处理postCssAnimateCoreSocketlodash工具vue-cli插件Preset静态资源处理环境变量与膜还是切换工程化部署工程构建3、vue路由器
vue路由概念嵌套路由路由视图动态路由路由匹配编程式导航Historyhash模式管理命名视图重定向与别名导航守卫路由元信息滚动与懒加载导航故障处理4、vuex
vuex核心概念EventBus对比状态管理模式StorestateGetterMutationActionmoudulevuex辅助函数与API功能vuex环境选择vuex模块化处理规则与技巧对象风格提交方式模块重用等如果弟弟们能掌握以上内容,我想在10K找工作是没有问题的。据我观察,目前很多在线机构的前端课程都在偷工减料,前端很多知识点都可以删掉。400多学时的内容被压缩到了180学时,这也是导致现在很多人学习前端课程,却很难找到工作的一个主要原因。如果不是我哥从事这个领域的工作,我感觉我会和大多数人一样,缺少很多学习内容,可能连工作都找不到,更别说12K的前端开发工作了。所以我觉得应该尽量找身边的亲人朋友在这方面照顾自己,不然一个人走弯路真的太容易了。
看看我分享的这些前端教程,绝对比你在网上找的好很多倍:因为链接不会发,想获取教程的朋友可以私信我“前端”
本教程就是对应我上面总结的前端技术栈。这是我目前为止看到的更好的前端课程。它比大多数在线教程都要好,它的特点是更详细。提到了很多实际的开发问题,注意前端规范问题,很多前端教程都没有。所以我觉得比较适合新手学习就业。
推荐前端书籍:javascript编程精解javascriptDOM编程艺术javascript高级程序设计(3/4)你不知道的javascript(上中下)javascript权威指南javascript设计模式与实践应用喜欢读单词的同学可以看看这些书。这些是我挑选的经典JavaScript技术书籍。
前端应该怎么学?如果打算自学,首先要了解前端学习的基本大纲,这是你将要学习的主要内容。如果你很好的理解和掌握了这些内容,你就可以找到一份初级的前端开发工作。还需要有一套完整的前端学习教程。作为初学者更好的学习方法就是看视频教程,初学者容易理解和接受。不要选择买书学习。很少有人能这样学。基本上,他们读不懂书。如果你喜欢看书,可以买一些经典书籍作为辅助,主要是看教程。每天留出固定的学习时间,为长期学习做准备。学习编程不仅仅是每天看视频。学习编程最重要的目的是编写软件产品并提供给大众,所以手工编写代码实现功能是我们要做的事情。但是很多同学不会学习,只是每天看视频,而不是写代码写项目练习。这种学习状态是错误的。整个学习过程中会出现很多问题。如果你不明白,问,如果你忘了,检查。学习编程是一个漫长的过程,需要足够的耐心和决心去学习。在自学和自我探索的过程中会有很大的困难。最后通过自我探索自学成功的少之又少。所以尽量找个有经验的人带你,免得走弯路。
怎么找工作?大学生一定不要错过大四的秋季 *** 。秋季 *** 很重要。秋季 *** 一般都有一些不错的公司。这个时候公司数量特别多,可以的话可以走秋招。如果秋招没准备好,那就等明年春招吧。反正能通过校招进企业,就能通过校招进企业。一旦错过校招,社会招就会变得异常艰难。
IT圈还有一个很重要的规律,就是很多公司都有通过熟人介绍的猎头。这些猎头就是要找到那些技能型人才,通过各种方式挖人。所以通过关系内部晋升也是找工作的主要途径,内部晋升更容易就业。
就是自己投简历。这样找工作的方式就是海投。海投会累,但是如果你技术能力强,也可以找到自己喜欢的公司。如果我是大学生,我建议一定要经过校招。在学习的过程中,我应该认识更多的关系。打算以后在这个圈子里认识一些人力资源和技术都不错的大佬。打算工作三年,然后通过我哥在网易的关系把我推到网易。网易的工资会高一些。我去了之后直接年薪30万起步。现在是我积累的过程。