jquery如此强大,为什么还要写原生呢?
这是一个伪标题,其实是一篇年终总结。
在这家公司一年多,蛮多收获的。大部分来自自己,小部分来自公司。
做前端开发到现在,我觉得可以分为两部分。
前半部分做项目用原生js,jquery以及各种基于jq的库,用underscore.js做模板引擎,用Require.js做模块化,那时候刚自己前端之路刚起步,自以为会模块化就在内心嘲笑只会jquery的孩子。以会写原生js为傲,在内心嘲笑只会jquery的孩子,真不知道jquery做错了什么。很多同事不是学计算机专业,甚至是刚培训完,和刚培训完后端的队友合作我真的是一个头两个大,当他第三次返回给我错误的数据时,我看了眼数据库的表告诉他把这条数据给我给我查出来。现在想想自己有点搞笑,那会毕业不长时间,总想暗戳戳炫耀自己是正经本科学计算机毕业的,觉得是自己的优势,生怕别人不知道我数据库是考九十分以上的。当然经过岁月的洗礼,到现在我也忘得差不多了,也变得谦虚谨慎。在公司的四方天地里,暗无天日的加班,重复自己的所学。但是还是很有收获,起码我学会运用了以上提到的诸如此类的框架。
后半部分,在我目前的公司。可以说给了我很大的空间,每个前端各负责不同项目,偶尔多人负责一个项目,极少的加班,轻松的工作量。每天上午一般都是学学习,下午投入工作。我开始mvc、mvvm的框架的学习以及应用,这期间学过angular.js、vue.js,学习就要学以致用,由于公司移动端业务偏多,衡量后我开始使用vue写项目,从只作为简单的js库到使用vue-cli搭建项目。非常开心带动同事们一起学习,因为当我开始用vue-cli搭建项目时,其他前端如果不学习vue就没有办法和我写同一个项目,哈哈。当vue的项目累积到一定程度以后,我开始思考怎样和我的同事拉开水平,怎样将vue彻底读懂。我开始仿照饿了么团队的element-ui写基于vue的框架发布到npm。仿照可能不确切,基本属于剽窃element-ui,从功能到源码,对照element-ui功能增加修改功能为我所用,对着每行源码敲自己的代码。有人说你那不叫写框架只是改框架,我承认,但我觉得这是一个过程,因为只有当我读懂别人的源码才会写出更严谨的代码而不是闭门造车。当我剽窃出许许多多的框架,我会开始写属于自己的框架。同时我在学习nodejs,虽然现在会的还不太多,但我觉得学习nodejs是明智的,毕竟是js写的服务端,对理解服务端帮助很大,也对js帮助很大。一直在完善一个自己写的图片爬虫,我觉得一个框架真正的强大不仅仅在于功能,而在于代码的严谨性,可以处理各种异常。
最后用标题的问题结尾,看技术论坛时候,有些人提问jquery如此强大,为什么还要写原生呢?jquery的强大在于他的功能,而原生的强大在于他创造了jquery。
jquery如此强大,为什么还要写原生呢?的更多相关文章
- 去它的h5,我还是用js写原生跨平台app吧
智能手机功能越来越强大,已经在逐渐替代电脑的作用.百度.腾讯.阿里的移动端日活数也在逐步的赶上甚至超越电脑端用户.叫喊着“mobile first”的公司越来越多,App开发者应运而生,且队伍日趋庞大 ...
- 用javascript写原生ajax(笔记)
AJAX 的全名叫做 Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).它最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并 ...
- jquery validate强大的jquery表单验证插件
jquery validate的官方演示和文档地址: 官方网站:http://jqueryvalidation.org/ 官方演示:http://jqueryvalidation.org/files/ ...
- 手写原生ajax
关于手写原生ajax重要不重要,各位道友自己揣摩吧, 本着学习才能进步,分享大家共同受益,自己也在自己博客里写一下 function createXMLHTTPRequest() { //1.创建XM ...
- 仿jQuery的siblings效果的js原生代码
仿jQuery的siblings效果的js原生代码 <previousSibling> 属性返回选定节点的上一个同级节点(在相同树层级中的前一个节点). <nextSibling&g ...
- 好久没写原生的PHP调用数据库代码了分享个
好久没写原生的PHP代码调用数据库了 eader("Content-type: text/html; charset=utf-8"); $time=$symptoms=$attr= ...
- javaScript(js)手写原生任务定时器源码
javaScript(js)手写原生任务定时器 功能介绍 定时器顾名思义就是在某个特定的时间去执行一些任务,现代的应用程序早已不是以前的那些由简单的增删改查拼凑而成的程序了,高复杂性早已是标配,而任务 ...
- jQuery 之父:每天写代码
去年秋天我的支线代码项目 遇到了一些问题,项目进展不足,而且我没法找到一个完成更多代码的方法(在不影响我在Khan Academy方面的工作的前提下). 我主要在周末进行我的支线,当然有时候也在晚上进 ...
- Jquery:强大的选择器<一>
今天回家之后,学习的是Jquery的选择器.选择器作为Jquery的优势之一,确实让我感觉到了它的强大.Jquery选择器分为基本选择器.层次选择器.过滤选择器和表单选择器,下面我一一介绍这四种选择器 ...
随机推荐
- mysql 查询数据库内各表的占用大小
select TABLE_NAME, concat(truncate(data_length/1024/1024,2),' MB') as data_size, concat(truncate(ind ...
- canvas 粒子效果
var canvas = document.createElement('canvas'); var cxt = canvas.getContext('2d'); var W = canvas.wid ...
- Natural Merge Sort(自然归并排序)
This is a Natural Merge Sort program from my textbook. It works, but I don't think it's good. // Nat ...
- python3学习笔记(3)
一.内置函数补充1.callable()检测传递的参数是否可以被调用.def f1() pass可以被调用f2 = 123不可以被调用2.chr()和ord()chr()将ascii码转换成字符,or ...
- 拼写纠错的利器,BK树算法
BK树或者称为Burkhard-Keller树,是一种基于树的数据结构,被设计于快速查找近似字符串匹配,比方说拼写纠错,或模糊查找,当搜索”aeek”时能返回”seek”和”peek”. 本文首先剖析 ...
- 《java.util.concurrent 包源码阅读》13 线程池系列之ThreadPoolExecutor 第三部分
这一部分来说说线程池如何进行状态控制,即线程池的开启和关闭. 先来说说线程池的开启,这部分来看ThreadPoolExecutor构造方法: public ThreadPoolExecutor(int ...
- laravel MethodNotAllowedHttpException错误一个原因
前两天在写api的时候,出现一个之前都没有碰到过的问题,如图 可以说提示信息是很不友好了,然后打开错误日志,发现报了一个MethodNotAllowedHttpException这样的错误,这样错误我 ...
- 简单背包问题(0032)-swust oj
简单背包问题(0032) Time limit(ms): 1000 Memory limit(kb): 65535 Submission: 5657 Accepted: 1714 Accepted 搜 ...
- 11-散列4 Hashing - Hard Version
题目 Sample Input: 11 33 1 13 12 34 38 27 22 32 -1 21 Sample Output: 1 13 12 21 33 34 38 27 22 32 基本思路 ...
- Centos 安装boost库
1.在http://www.boost.org/下载boost安装包boost_1_65_1.tar.gz 2.在Centos上解压tar -zxvf boost_1_65_1.tar.gz后,cd ...