最近做了一个小项目,以前觉得我无论如何也做不好前台的界面,不过这次做完了基本自己还是可以看得下去的,当然也经过了不少折磨,写程序就是这样,一个接着一个的解决问题。
由于这个项目比较小,前台的代码写的反而比后台多很多,JavaScript写了不少,要说使用框架,那是自然而然的事情。当你被繁复的JavaScript所折磨,就不得不去考虑代码的复用,模块化,把与业务无关的,只是与操作DOM相关的代码抽象出来。这样去想了之后就试图去把JavaScript代码抽象成为框架,这样不仅在这个项目里面可以复用,很多代码在其他的项目也是可以复用的。既然这些代码是所有项目都可以复用的,那就会有公共的框架。于是上网搜了一下,JS的框架很多,最出名的就是JQuery,而且JQuery正好是符合我的这一思路的,把与业务无光,二只是操作DOM的东西抽象出来,提高开发的效率。在网上随意看了下JQuery的教程,马上就被它吸引,最吸引我的是它的语法非常好懂,思路非常简洁。于是马上运用到了项目里面,非常方便,基本不会造成任何学习的压力。
但是JQuery并不能帮我把前台的界面做的很好看,美观依然是一个难题,如何让一个没有艺术细胞,也没有前台经验的人做出一个美观的界面呢?相信没有人能很快成长为前台的高手,在短期内从一无所知二做到对美观的界面信手拈来。所以这不是一个个人问题,而是个普遍的问题,相信有不少人存在跟我一样的困扰。既然是大家都有的问题,那就会有公共的框架。于是又要求诸网络,发现ExtJS是一个以界面见长的JS框架。上网搜索了一些ExtJS的教程,相对于JQuery而言,ExtJS要话的学习时间要长一下。要去学习它里面有些什么控件,怎么去用,因为要做出富客户端的效果,自然本身也要复杂一些。在网上下载了几个demo,对照着改了一下,花了一些时间,期间遇到过困难,也是诉诸网络,得到了答案。最终把ExtJS应用到了项目里面。这次界面看起来好多了。
总的来说,都是很好的框架,他们的目的不一样,相信上面说的已经很清楚了,按照自己不同的需求去选择不同的框架就是了。另外相比之下JQuery好学的多,可以马上使用。可能这也是它应用非常广泛的原因。ExtJS学习的成本要高一些,出了问题,如果是新手的话,要解决需要多查询花点时间解决。不过如果是熟练的人应该解决起来也不困难,比如理解清楚了它的机制就好了,如果研究了源代码就更容易debug了。
自己也可以开发JS的框架,前提是为了解决某个公共的问题。所以框架都是由那些经常写相关程序的人写出来的,他们被这些繁复的代码所折磨,才会相对代码复用,可扩展性,抽象,于是有了这些框架。想要为了写出框架而写框架是不现实的。除了这些公共的需求,不同的领域也有不同的需求。我们自己还可以开发不同领域的框架,包括JS的框架。比如银行业务的,管理系统的,等等,但是这样的框架相对用途没有公共的JS框架广。