老程序员从头开始学JQuery的读书笔记

 从事软件设计开发十多个年头了,Delphi、C#、Asp.Net/WinForm、Silverlight/WPF等各种语言或技术,在实际的项目中也都曾使用过,可以算是老程序员了。

  一直都没有认真对待过JQuery,可能当初认为这种Javascript脚本框架很难流行,个人也一直认为BS系统的软件的界面,单只是依赖于这种轻量级的框架是很难追赶上Windows窗体的步伐,无论从开发效率还是最终的用户体验。Ajax在我看来其实也只是个噱头,在没有Ajax这个词的时候,许多开发人员可能已经用原生的Javascript这么做了,只是没有这个名词与框架的概念。加上SilverLight/WPF的推出,让我更不看好这类“假”富客户端技术。

  一晃几年过去了,SilverLight没有想像中那么流行(也许是精通的开发人员不多,致使开发成本过高),倒是Asp.Net MVC渐渐流行起来,在.Net阵营里,微软应该可以说是JQuery的最大推手,试想如果没有Asp.Net Ajax与Asp.Net MVC,那么JQuery在WebForm里岂不是只能Just Query了。

  虽然内心仍认为这种客户端技术不够强大、生命周期也不会还有多长。不过自己参与设计开发的EasyCode.Net代码生成器也要计划将入JQuery,不能只看同事忙着自己使不上劲,所以拿出“活到老、学到老”的态度,当初没重视、现在来认真从头开始下学习JQuery吧。 

1.下载一本好的教程

  百度一下,网站JQuery的PDF教程还是很多的,随便挑了本JQuery基础教程,选择这本书有三个原因:

1.有人肯把它做成高清的,说明质量应该不会太差。

2.老外写的也让人放心一点,毕竟国人专心做技术、写书的太少了。

3.封面看起来比较漂亮,我也不知还有什么其它不错的教程。

 

2.制定一个学习计划 

  老程序员了当然精力有限了,每天公司里也有一定的研发任务要完成,所以学习计划也很简单了:

1.每天花1-2个小时,阅读1-2两章,要求确保全部理解。

2.书上提到的内容要全部自己动手实现,思考在可能在哪些场景应用,并写成日志。

3.阅读完本书时,可以做一个用于展示JQuery所有功能的Demo程序,便于今后使用时的查找。

3.我的第一个JQuery应用

  这本书还是不错的,介绍的很详细,书中的例子也是循序渐进。看完两章,感觉基本知道是怎么一回事了,于是开是自己动手做些小的例子。

  第一个例子很简单,在文档DOM载入完成后,执行JQuery语句,使用$选择器为文档中的所有<p>加上NomalText样式,为class为MyText的<P>加上HightLight样式。

View Code

  需要注意的有两点:

1.JQuery中的$(document).ready是在文档DOM也就是文档结构载入完毕就执行,而不像Html的Onload需要等待所有图像等资源全部载入完毕才执行。

2.例子中使用的是<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript">而不是本地的jquery.js文件,Google的服务器对此进行了优化,从Google的服务器下载通常要快一些,另外许多大型网站也在使用Google提供的类库,所以客户端一般已经有了缓存。如果开发不是基于局域网的应用,可以尽量从Google的服务器引用类库,在实际项目开发中也可以放到母版页及Web.Config中处理是否使用本地的JQuery类库。

4.一些感悟 

  在看完本书的第二章,细细回头看了下其中的相关例子,JQuery学习起来其实并不难,学习JQuery似乎与有无Javascript基础关联并不大。遥想当年,哥们曾苦读了一本1000多页的Javascript大象级著作,也写了个公司一直用到现在的Html编辑器,不过如果不深入研究JQuery的源码,这些基础似乎对于我学习JQuery并没有什么直接的帮助。上手容易可能也是JQuery流行的另一个原因,我现在开始觉得也许有些开发人员会JQuery用的很好,但可能根本不会Javascript。

  JQuery的功能的确非常强大,万能选择符以及所提供的相关通配符与表达式,用原生的Javascript虽然也可以实现,但绝对不可能这么方便、简洁。学习JQuery可以没有Javascript基础,但对Html和CSS的要求还是挺高的。现在早已不是Table布局横行的年代,JQuery/Div+CSS这两项技术看来是WEB开发人员必需熟练掌握的技能了。

 
原文地址:https://www.cnblogs.com/Leo_wl/p/2485017.html