博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

从数学的角度来谈谈jquery和XAML

Posted on 2009-08-06 09:00  栖山  阅读(3811)  评论(46编辑  收藏  举报
jQuery是一个非常伟大的作品。第一次看完了jQuery的两本书, 我被震撼住了。
建议看先看jQuery in action 然后再看 john resig自己写的书Pro JavaScript Techniques
前一本是运用的读物,后面一本,讲述了jQuery的设计思想和内在机理(和.net本质论这本书有点类似)。
在我看来,Web开发可以被划分为有jQuery和没有jQuery的时代。
为什么jQuery如此伟大呢?这是因为jQuery充分揭示了html和css的数学之美。这是在长时间的实践中,对Dom本质的了解不断深化的结果
我的感受就是大凡基于数学的软件模型都有长久的生命力,反之则生命周期都很短。软件编程模型实际上是物理和数学的战争。随着硬件技术的发展,数学正在占据上风。
顺便推荐一个叫git的系统, 这是史上最伟大的黑客Linus的作品,里面深刻体现了数学中图论的思想。有了Git,Linux第一次在系统工程学上取得了对Windows的优势。
下面具体谈谈jquery的奇妙数学特性
jQuery的核心就是jQuery对象, 也可以写成$
这个jQuery对象非常神奇。他具有一些神奇的特性。
从一个jQuery对象上切下一块, 就会成为2个$对象
把两个jQuery对象合在一起,就会成为一个新的jQuery对象。
从一个Qquery对象上,这里切一小块,那里切一小块,几块东西揉在一起,又成为一个合法的jQuery对象。
这让我想起了什么呢?我想起了奇妙的几何分形图。
这里给一个链接:http://hi.baidu.com/kreuzgoeson/blog/category/Science%20Rocks
也可以去google搜索,网上有大量的分型图,揭示了数学的惊世之美
分行图又被称为自相似结构图。也就是图的一个局部和整体是相似的。然而这只是分形图的表象, 它的内在基础是分形几何。分形几何和和传统几何的最大区别就是引入分数维。分数维,呵呵,挑战人类抽象思维能力的东东。
我的通俗理解是一个整数维是独立存在,是正交的。而分数维依存于整数维存在。而分数维可以在某个局部产生正交。基于分数维思想,我们就可以设计出类似于jQuery对象这样具有自相似特性的神奇对象。
下面就是道破天机的一句话
CSS是HTML的分数维。
然后谈一下XAML
XAML和HTML的最大区别就是XAML的tag是可以任意扩展的,这样就意味着XAML的结构不是自治的,不具备自相似特性。
说的通俗一点,就是当你引入一个新的tag,你需要去定义它,这是一个非常笨拙的结构。会产生诸如版本问题(比如.net的版本问题),标准问题(谁来定义 tag),这样的结构也不具有自增长特性。也无法定义出一个jQuery对象。
那为什么微软要引入这样笨拙的结构呢?主要是基于Windows捆绑的考虑。XAML描述了Windows/.Net对象。
有网友留言提出,我老是谈数学和哲学,没有技术(其实大多数时候是经验)。正好最近在做CSS重构,有时间我准备写一下我目前使用的一种CSS的风格。希望这能归入”技术“行列。