Web前端3.0时代,“程序猿”如何“渡劫升仙”

Web前端入行门槛低,很多人在成为前端工程师后很容易进入工作的舒适区,认为该熟悉的业务已熟悉了,然后就是重复用轮子,这样很容易让自己的成长处于原地打转以及低水平重复的状态。

Web前端3.0时代,“程序猿”如何“渡劫升仙”

 

想要不被行业抛弃,就要努力提升自己。下面小编就分享Web前端程序员应该如何进阶提升自己:

一、入门

能够解决一些问题的水平。有一定的基础(比如最常见的HTML标签及其属性、事件、方法;最常见的CSS属性;基础的JavaScript编程能力),能够完成一些简单的Web前端研发需求。

举个例子:删除一字符串中指定的字符。

varstr="www.baidu.com/?page";str=str.replace('?page',"");alert(str);str=str.substring(0,str.indexOf("/"));alert(str);

首先不要苛责代码的对错严谨,毕竟每个程序员都有这样的一个过程;其次,这两段代码在这个实例里没有什么大过错,可能会有瑕疵,但能够解决问题(删除指定的字符),这就是这个级别的特征。

再举个例子:

// 计算系统当前是星期几var str = "";var week = new Date().getDay();if (week == 0) { str = "今天是星期日";} else if (week == 1) { str = "今天是星期一";} else if (week == 2) { str = "今天是星期二";} else if (week == 3) { str = "今天是星期三";} else if (week == 4) { str = "今天是星期四";} else if (week == 5) { str = "今天是星期五";} else if (week == 6) { str = "今天是星期六";}// 或者更好一些var str1 = "今天是星期";var week = new Date().getDay();switch (week) { case 0 : str1 += "日"; break; case 1 : str1 += "一"; break; case 2 : str1 += "二"; break; case 3 : str1 += "三"; break; case 4 : str1 += "四"; break; case 5 : str1 += "五"; break; case 6 : str1 += "六"; break;}alert(str);alert(str1);

入门”阶段是每个程序员的必经之路,只要“入门”,你就上路了。所谓“师傅领进门,修行靠个人”,有了这个“入门”的基础,自己就可以摸索着前进了。

二、进阶之路

将JavaScript、HTML、CSS之类的编码帮助手册里的每个方法/属性都通读几遍!只有将基础打好,以后的路才能走的顺畅。参考这些帮助文档,力争写出无瑕疵的代码。

这些编码文档小编建议不仅是在入门提高期看,在你以后每个阶段破阶的时候都应该看看,最基础的东西往往也是最给力的东西,有时能够给你带来意想不到的收获。

三、登堂

能够正确地解决问题。不管你是通过搜索网络,或者通过改造某些成品代码(jQuery/Dojo/Ext/YUI)案例,只要能够无错地完成需求。

同样以上面的那段“字符串剪裁”代码为例:

var str="www.baidu.com/?page";str=str.replace(/?page/,"");alert(str);

对比“入门级”的代码,不管是从代码量、代码效率、代码优美性、代码思路来说,“登堂”级的这个日期处理代码都要优秀很多。

四、成长之路

这个阶段虽然能够给出正确的解题方案,但是不一定是最优秀的方案。如何才能得到最优秀的方案呢?首先就是积累各种能够解决需求的方案,然后再验证每个方案,在这些方案中选择最好的一种。因此该阶段的进阶之路就是“行万里路,看万卷书”,积累各个需求的各个解决方案。

你可以扎身在专业论坛(蓝色理想、无忧、CSDN)里,通读所有的FAQ及帖子;你可以打开搜索引擎,穷举所有的搜索结果。自己建立测试环境一一验证这些代码:去揣摩每段代码的意图,去比较每段代码之间的差异。这两条路可以让你快速完成原始积累,当你再面对大多数需求时能够说这些问题我以前做过,那你就水到渠成地晋阶了。

五、进阶之路

此阶段进阶之路就是:切勿心浮气躁;你不再被需求牵着走,而是你牵着需求走。注重细节,注意那些当前需求里没有明文给出的细节:代码性能的差异、运行平台(浏览器)的差异、需求的隐性扩展、代码的向后兼容等等。

虽然Web前端并不难,但想要学精学好,并不容易。

转载于:https://www.cnblogs.com/CQqf/p/10782180.html

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

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

相关文章

[html] viewport常见设置都有哪些?

[html] viewport常见设置都有哪些? width: widthdevice-widthinitial-scalemaximum-scaleuser-scalable个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题…

mysql用 fifo 记录日志_MySQL一丢丢知识点的了解

1. MySQL体系结构从概念上讲,数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储器中的数据集合;数据库实例是程序,是位于用户与操作系统之间的一层数据管理软件,用户对数据库数据的任何操作,…

HttpHandler

概述HttpHandler是一个HTTP请求的真正处理中心,也正是在这个HttpHandler容器中,ASP.NET Framework才真正地对客户端请求的服务器页面做出编译和执行,并将处理过后的信息附加在HTTP请求信息流中再次返回到HttpModule中。 IHttpHandler是什么 I…

[html] 为什么HTML5只需要写<!DOCTYPE HTML>就可以?

[html] 为什么HTML5只需要写就可以? 因为 HTML5 与 HTML4 基于的基准不同。HTML4 基于 SGML 因此需要除了 DOCTYPE 外还需要引入 DTD 来告诉浏览器用什么标准进行渲染。DTD 还分为标准模式、严格模式。如果什么都不写,就完全让浏览器自我发挥&#xff0…

小程序云开发搜索功能的实现正则_码code | 如何借助小程序云开发实现小程序支付功能...

转载来源:编程小石头我们在做小程序支付相关的开发时,总会遇到这些难题。小程序调用微信支付时,必须要有自己的服务器,有自己的备案域名,有自己的后台开发。这就导致我们做小程序支付时的成本很大。本节就来教大家如何…

python接口自动化(二十五)--unittest断言——下(详解)

简介 本篇还是回归到我们最初始的话题,想必大家都忘记了,没关系看这里:传送门 没错最初的话题就是登录,由于博客园的登录机制改变了,本篇以我找到的开源免费的登录API为案例,结合 unittest 框架写 2 个用例…

使用C#和Excel进行报表开发(五)-操作单元格边框和颜色 【转】

在用Excel作报表的时候,可能需要操作单元格的边框和填充颜色和纹理等操作,下面的代码说明如何设置选中的单元格的填充纹理和边框try{ThisApplication new Excel.Application();ThisWorkbook ThisApplication.Workbooks.Open("z:\\Book1.xls"…

输入 3 个正数,判断能否构成一个三角形。

package com.my.demo;import java.util.Scanner;public class Triangle {public static void main(String[] args) {System.out.println("请输入三个正整数:");Scanner sc1new Scanner(System.in);int asc1.nextInt();int bsc1.nextInt();int csc1.nextIn…

mysql-bin磁盘满数据库重启不_liunx磁盘空间满了,导致mysql数据库无法启动

如何启动/遏制/重启MySQLA、1、启动圆式1、哄骗 service 启动:service mysqld start2、哄骗 mysqld 脚本启动:/etc/inint.d/mysqld start3、哄骗 safe_mysqld 启动:safe_mysqld&二、遏制1、哄骗 service 启动:service mysqld …

[html] title与h1的区别、b与strong的区别、i与em的区别?

[html] title与h1的区别、b与strong的区别、i与em的区别? title 是 网页标题标签 h1 是文本标签 默认与word的h1相似为最大的标题显示 b 为文本加粗标签 与word的加粗功能相似 strong 为强调语气, 也是为文本加粗 与b标签是有不同 i 标签为斜体 常用于阿…

两个日期的 月差

datediff(DateInterval.Month,date1,date2) 转载于:https://www.cnblogs.com/lhuser/articles/1288289.html

[html] HTML5的文件离线储存怎么使用,工作原理是什么?

[html] HTML5的文件离线储存怎么使用,工作原理是什么? localstorge 利用浏览器的本地存储可以缓存信息 ,在创建数据的时候引入创建好的数据 cookie 好像也可以个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易&…

springboot忽略证书_SpringBoot获取resource下证书失败

1.第一种失败的情况:本来使用Spring的上下文容器获取文件,将证书文件放在resource下,编译后获取文件会出现报错java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: IOException : DerInputStream.getLength():…

看一个国家的国民教育,要看他的公共厕所。 看一个男人的品味,要看他的袜子。 看一个女人是否养尊处优,要看她的手。 看一个人的气血,要看他的头发。 看一个人的心术,要看他的眼神。 看一个人的身价,要…

死锁产生的原因及条件和手写死锁

什么是死锁? 由于两个或者多个线程互相持有对方所需要的资源,导致线程处于等待状态,造成死锁。 为什么会产生死锁(为什么会互相占用对方的资源) 因为系统资源不足。 进程运行推进的顺序不合适。 资源分配不当等。产生死…

[html] iframe框架都有哪些优缺点?

[html] iframe框架都有哪些优缺点? 优点重载页面时不需要重载整个页面,只需要重载页面中的一个框架页技术易于掌握,使用方便,可主要应用于不需搜索引擎来搜索的页面方便制作导航栏缺点会产生很多页面,不容易管理*不容…

mysql 默认page大小_Innodb优化之修改页大小

MySQL在使用innodb引擎的时候页大小默认是16K,这个大小对于很多应用来说太大了,很多在其他数据如ORACLE运行良好的应用迁移到innodb后发现IO压力偏大,MySQL本身没有提供修改页大小的参数,但是我们可以通过修改源码重新编译mysql来…

[导入]C# Tips 2 右键单击listBox时弹出右键菜单并选中单击的行

C#,Listbox,右键,菜单,选中文章来源:http://blog.csdn.net/geyunfei_hit/archive/2008/07/16/2661153.aspx 转载于:https://www.cnblogs.com/geyunfei/archive/2008/10/08/1306335.html

[html] 常见的浏览器内核都有哪些?并介绍下你对内核的理解

[html] 常见的浏览器内核都有哪些?并介绍下你对内核的理解 Webkit Blink Gecko Trident个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

python真的可以减少工作强度_用Python写几行代码,一分钟搞定一天工作量,同事直呼:好家伙!...

前几天有一个读者说最近要整理几千份文件,头都要整秃了,不知道能不能用Python解决,我们来看一下,你也可以思考一下。由于涉及文件私密所以具体内容已做脱敏处理。大概是这样,一个文件夹下有多份会议通知信息(本文以 7 …