首先ExtJS是纯客户端的框架, 使用JavaScript及CSS实现大部分GUI的标准控件, 提供统一的编程接口, 解决了长期困扰开发人员的浏览器兼容性问题.
你提到的sencha框架应该是指的Ext GWT, 你可以理解为一个Jar包, 包装了ExtJs, 可如同GUI编程一样使用java代码编写Web页面, 编译生成html及ExtJs代码. 开发过程相对繁琐, 调试更是麻烦. 唯一的好处就是可以不用学习JavaScript.
相对于Sencha的Ext GWT, Google的GWT更完善一些, 有官方的Eclipse插件及用于调试页面JAVA代码的GWT Code Server, 可以大大提高开发效率. 考虑到Google的技术实力, 怎么也比Sencha的好用些. 而且关于Google GWT的开发资料要更多一些.
如果想使用ExtJs的作为前台展示的话, 还是使用纯客户端框架比较好, 灵活性及开发效率是GWT类框架不能比拟的. 不过对JavaScript技术的要求比较高
前端为什么要使用框架:近年来,因为互联网的崛起,web 业务也越来越复杂和多元化,一个web项目也不是像以前那样写几个网页拼起来,加几个特效 duang 一下就成了。项目复杂了,出现的问题也就多了。
前后端分离
在前后分离概念出现之前,大部分 web 项目都是后端人员又当爹又当妈的,前后端一起搞,导致质量和效率不是很好。而且对个人的发展也有影响,一个人你什么都会,也意味着你什么都不精,毕竟天才还是少数的。这也是社会趋势影响,大公司招聘,一般也都是需要某一方面很有研究的专才。
在互联网的洪流下,以前的那种方式越来越跟不上节奏,所以前后端分离应运而生。
前后端分离后,前端的任务也变得重要起来,web前端开发慢慢趋于规范。
但是在 jQuery 称霸的时代里,并不能满足前端开发人员的需求。也慢慢暴露出了很多不好解决的问题:外部js引用太多,复用性低,开发周期太长,性能低,效率低等等,这些 jQuery 不好解决或者说解决不了的问题,也成为了前端开发的趋势。
所以学习前端是要会框架的,千锋前端的课程,会学习框架,你可以去看看