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选择器分为基本选择器.层次选择器.过滤选择器和表单选择器,下面我一一介绍这四种选择器 ...
随机推荐
- SpringBoot错误求解决
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | ...
- Oracle的窗口和自动任务
Oracle数据库自己会例行做一些定时任务,比如会自动进行统计信息收集等作业任务.如果统计信息收集的时间正好赶上业务的高峰期,那就有可能由此引发一系列性能故障. 那么,我们该如何查看这些数据库自动去做 ...
- [flask实践] 解决mysql数据库不支持中文的问题
接上一篇文章,在解决了mysql+flask环境配置问题之后,往数据库存中文字符串会报1366错误,提示不正确的字符.继而发现默认的mysql采用了Latin1字符集,这种编码是不支持中文的. 如果想 ...
- sklearn.neighbors.kneighbors_graph的简单属性介绍
connectivity = kneighbors_graph(data, n_neighbors=7, mode='distance', metric='minkowski', p=2, inclu ...
- CCF-201509-1-数列分段
问题描述 试题编号: 201509-1 试题名称: 数列分段 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个整数数列,数列中连续相同的最长整数序列算成一段,问数列中共 ...
- Postgres是如何管理空值的
创建表test,y字段插入null. test=# create table test(x bigint,y bigint,z text); CREATE TABLE test=# insert in ...
- OpenXml读取word内容(三)
内容和表格内容一起读: word内容: 代码: public static void ReadWordByOpenXml(string path) { using (WordprocessingDoc ...
- 《RabbitMQ Tutorial》译文 第 5 章 主题
原文来自 RabbitMQ 英文官网的教程(5.Topics),其示例代码采用了 .NET C# 语言. In the previous tutorial we improved our loggin ...
- jquery on()动态绑定元素的的点击事件无反应的问题记录
1.jquery使用版本:v2.0 2.重现代码: html <table class="table"> <thead> <tr> <th ...
- 一道题Wrong Answer之后该何去何从?
写程序手不稳是个大毛病,往往会让一份能AC的代码变成99.995%正确,失之毫厘谬以千里,近期十场个人赛非常少有能一次AC的经历,细致想想除了根本逻辑上的错误.大概都是跪在这些细节上: 1.输出格式, ...