总结一年来的前端学习心得

  到今天,前端学习刚好满一年。我也顺利从非计算机专业转到前端。对于前端学习,自己也是摸着石头过河,中间也有过困惑和迷茫。本文主要讲述自己一年来对于前端学习的心得体会,希望能对学习前端的人提供一些帮助。

 

  前端主要分为三部分:html,css,js。

 

  html:首先得了解标签的含义,用在哪里,常用的用多了就知道了。另外H5也要去了解,对于H5的学习可以自己动手做一个H5的动画场景。这里面涉及比较多的是css3样式以及canvas。

 

  css: 关于css还是推荐看书系统的学下。单看网上的,你可能只知道怎么用,却不知道他这样用所隐藏的含义。还有就是容易产生混乱,所以还是建议看书系统学一学。有些概念还是要掌握的,不然面试很容易懵逼。

 

  js: 这个是最复杂的。首先建议先看书了解基本语法。但是只看不动手是不行的。很多人没有项目也不知道从何练起。我个人是推荐百度前端技术学院题目,每一个题目后面都提供了解决这个问题所需要的知识点的链接。题目难度是逐渐增加的,越到后面越难。我自己也没有做完,看个人情况。我把我自己做的放在了github上,可以下载查看当做参考。之后再继续看书,继续学习。

 

其他  

  框架:这个等你有了一定的JavaScript基础后在开始学比较好。推荐入门jQuery, 这个比较简单,容易建立信心。之后再学其他的框架,react, vue, angular. 学习框架建议先看框架文档,一般配有简单入门教程。现在用的比较多的都有中文版的教程的,所以不懂英文的可以看中文的。后期可以在github上找些项目练手。能够加深你对这些框架的理解。

 

  项目:最好去实习,参与一些项目。如果没有实习经验的,也可以自己找项目做。比如简单的游戏,网站模仿等等,另外也可以网上搜,自己跟着做一个出来。我个人是在实习后又花了10多天搞了一个简单web论坛,采用PHP, jQuery和mysql源码参见:https://github.com/huanshen/web-bbs。这个可以参看《PHP和MySQL Web开发》,这本书能够让你知道前端后台是如何一起工作的。这个项目在面试中发挥了蛮大的作用。问我项目难点的时候都说它。因为前端部分的难点感觉叫不上难点(就个人实习做的项目而言,也可能自己的实习比较水,毕竟小公司)。个人面经参看:2017年秋招前端招聘面经,另外自己也总结了一些前端面试常问的问题,含答案。

前端面试笔试知识汇总1(含答案)

前端面试笔试知识汇总2(含答案)

前端面试笔试知识汇总3(含答案);

 

  nodejs: 这个很有必要去学习,具体可以看网上的教程《包教不包会》(https://github.com/huanshen/node-lessons),但是不是很系统,最好是找本书籍看看。第一遍比较难理解,你就照着写就好,不理解也没关系。可以看看nodejs相关文章或者书籍,以后有空再来一遍,慢慢你就会理解了。

 

  ES6: 现在很多人都用ES6,所以还是推荐各位去了解一下。推荐阮一峰老师写的书籍:http://es6.ruanyifeng.com/ 。我自己也根据上面的教程做了一些总结。参看:http://www.cnblogs.com/huansky/tag/ES6/  。

 

  自动化构建工具:属于加分项,你不懂也可以,懂更好。没必要都了解,选一种去学习,有时间再去了解其他的,之前自己也 写过gulp学习笔记。对于webpack,暂时还没有去接触。

建议:

  基础:面试最看重的还是基础,所以一定要把基础打好。书还是要多看的。《JavaScript高级程序设计》《JavaScript启示录》《JavaScript语言精粹》《JavaScript设计模式》等。总之要多看书。还有记得,书是一定要看多遍的 !看完记得总结。

 

  读源码:建议先读underscore.js。代码总共1600多行(包含注释说明),相比其他比较简单,就是一个函数库。读源码可以先看看网上的源码的文章,后面自己在对着说明文档读源码。尽可能读懂每个函数的含义(读不懂也不必太纠结)。后面再从大方向分析作者为什么要这么写,包含其中一些细节的处理啊。然后思考如果是你,你会怎么写等等。后面也可以阅读jQuery或者其他的。

 

  后台:很多人说如今前后端分离,没有必要再去学习后台或者。个人认为这是错误的。首先,你把前后端一刀切断,这个本身就不对了,这只会让你的路越走越窄;其次你懂后台,遇到问题方便和后台交流;再者,编程语言是相通的,你多学了一门语言,肯定会在无形之间提升了你自己的能力。最后,哪一个牛逼的程序猿只懂一门语言啊

 

  学习方法:每个人学习方法不一样,但是最重要的一点是要总结,然后慢慢摸索出适合自己的学习方法。个人觉得,你可以注册一个博客,将自己平时学到的,看到的,记录下来,没事也可以浏览下自己写的。无聊的时候看看别人写的博客,你会从中学到很多的。

 

  遇到困难:如果学习中遇到不理解的,建议先百度谷歌,一般都能够得到解答的。还是不懂再去问别人,没人可问也可以先跳过,继续学习后面的。过段时间再来看一遍,你会发现有些问题已经不是问题了。还有一点最重要的就是要学会坚持。不要三天打鱼,两天晒网。既然选择了前端,就风雨兼程。

 

  最后预祝大家在前端道路上越走越远。

转载于:https://www.cnblogs.com/huansky/p/5990991.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/270480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

办公技巧:10个WORD神操作,值得收藏

目录 1、F4键 2、Ctrl字母快捷键 3、巧用“文档比较” 4、巧用替换功能 5、特殊字体保存 6、Word表格随心粘 7、去除超链接 8、Word图片轻松移 9、截图 10、格式刷不停 在日常办公当中, Word文档就是我们最常用的软件之一。用它我们写论文、写方案、写小说等等。 但…

MYSQL学习:GROUP BY分组取最新的一条记录

日常开发当中,经常会遇到查询分组数据中最新的一条记录,比如统计当前系统每个人的最新登录记录、外卖系统统计所有买家最新的一次订单记录、图书管理系统借阅者最新借阅书籍的记录等等。今天给大家介绍一下如何实现以上场景的SQL写法,希望对大…

@SentinelResource注解实现热点限流

下图中请求url中param参数为axb,如果QPS超过5,就会限流 一:如下代码 RestController public class ParamController {GetMapping("/param")SentinelResource(value "param", blockHandler "exHandler")p…

[LeetCode] 4Sum II 四数之和之二

Given four lists A, B, C, D of integer values, compute how many tuples (i, j, k, l) there are such that A[i] B[j] C[k] D[l] is zero. To make problem a bit easier, all A, B, C, D have same length of N where 0 ≤ N ≤ 500. All integers are in the range of…

php的正则表达式函数,php中常用的正则表达式函数

php中常用的正则表达式函数* preg_match()* preg_match_all()* preg_replace()* preg_filter()* preg_grep()* preg_split()* preg_quote()接下来对比讲解:讲解中 $pattern 通常表示正则表达式$subject 通常表示目标处理数据定义一个方法 方便查看数据类型&#xff…

硬件知识:固态硬盘4K对齐知识介绍

目录 1、什么是4K对齐呢? 2、怎么查看硬盘是否4K对齐呢? 3、怎么4K对齐呢? 现在大家基本都有一个固态硬盘,而在固态硬盘分区中4K对齐是非常重要的。 1、什么是4K对齐呢? “4K对齐”就是符合“4K扇区”定义格式化过的硬…

【spring cloud】注解@SpringCloudApplication和@SpringBootApplication的区别

SpringCloudApplication注解 注解SpringCloudApplication包括:SpringBootApplication、EnableDiscoveryClient、EnableCircuitBreaker,分别是SpringBoot注解、注册服务中心Eureka注解、断路器注解。对于SpringCloud来说,这是每一微服务必须应…

网络知识:路由器常见故障分析及处理方法

目录 1.路由器的部分功能无法实现 2.网络频繁掉线 3.无法浏览网页 4.某些应用无法使用 5.网络带宽达不到合同带宽或相差甚远 6.局域网内存在多个路由器,因人为原因出现二级路由 对当前的大多数网络来说,无论是实现网络互连还是访问Internet&a…

matlab找不到函数系统函数,求助,Matlab找不到ztrans函数

只把这个函数给你吧,你自己保存下:function F ztrans(varargin)%ZTRANS Z-transform.% F ZTRANS(f) is the Z-transform of the scalar sym f with default% independent variable n. The default return is a function of z:% f f(n) > F F(z). The Z-transfor…

硬件技巧:如何隐设置的你的电脑U盘不可见

有时候电脑里面有重要内容,在不联网的情况下,还需要禁用U盘,下面介绍禁用U盘的方法,原创文章,转载注明出处即可。 第一步,首先在电脑上点击开始按钮,或者直接按下快捷键组合"WinR"&am…

XidianOJ 1035 数独 1053 正数负数 1042 另一个简单的游戏

三道水题。。 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; int n; int main(){while (scanf("%d",&n) ! EOF){if (n > 0){printf("yes\n");}else if (n < 0)…

Django 基本命令

1. 新建一个 django projectdjango-admin.py startproject project-name一个 project 为一个项目&#xff0c;project-name 项目名称&#xff0c;改成你自己的&#xff0c;要符合Python 的变量命名规则&#xff08;以下划线或字母开头&#xff09;2. 新建 apppython manage.py …

前端知识:如何创建自己的Iconfont图标库

在日常的开发过程中&#xff0c;前端页面经常会引用一些图标&#xff0c;iconfont图标库是前端开发者非常友好的在线字体图标库。大家可以根据平常所涉及的项目&#xff0c;收藏自己需要的图标库&#xff0c;方便在后续的项目中使用&#xff0c;今天小编给大家介绍如何通过icon…

mysql 二次 聚合,MySql-聚合查询

聚合查询Chloe 可以像写 sql 一样实现聚合查询。IQuery q context.Query();q.Select(a > Sql.Count()).First();/** SELECT COUNT(1) AS C FROM Users AS Users LIMIT 0,1*//* 支持多个聚合函数 */q.Select(a > new{Count Sql.Count(),LongCount Sql.LongCount(),Sum …

硬件:固态硬盘SSD的基础知识及安装注意事项

固态硬盘就是用固态电子存储芯片阵列而制成的硬盘&#xff0c;相对于机械硬盘&#xff0c;固态硬盘的读写速度更快&#xff0c;但是固态硬盘的缺点是寿命不如机械硬盘。 固态硬盘有写入寿命&#xff0c;平均起来约为3000次P/E&#xff0c;1P/E为硬盘存储上限&#xff0c;相当于…

C# Redis实战(二)

二、Redis服务 在C# Redis实战(一)中我将所有文件拷贝到了D盘redis文件夹下&#xff0c;其中redis-server.exe即为其服务端程序&#xff0c;双击即开始运行&#xff0c;如图可以将此服务设置为windows系统服务&#xff0c;下载Redis服务安装软件&#xff0c;安装即可。安装完成…

matlab仿真超声波测距,超声波测距仪制作-Arduino中文社区 - Powered by Discuz!

本帖最后由 xiebb5688 于 2017-12-4 09:06 编辑虽然学的是机械&#xff0c;可也接触过C语言&#xff0c;MATLAB等程序&#xff0c;每次编程的时候&#xff0c;能够把BUG一个个解决掉&#xff0c;会带来不小的成就感。于是感觉到自己骨子还是挺喜欢代码的。于是也不知何时了解了…

Mac版本Navicat下载

提供navicat安装包 链接&#xff1a;https://pan.baidu.com/s/1mQddUOuaxovVkhNOT9vUJw 密码&#xff1a;tted