Extjs学习笔记

Web程序的革命

CGI----基于传统服务器端模式

Java Applet----基于本地虚拟机的运行模式

Flash----基于浏览器插件的运行模式

Web Start----在线安装模式

AJAX----基于浏览器的运行模式

RIA----基于Flex、Sliverlight桌面程序系统

选择Ajax理由

        AJAX虽然不是最新的WEB开发技术,但是是最后一个支持浏览器的WEB开发技术,因为无论是Sliverlight,还是Flex其原理已经不再需要浏览器支持了,而浏览器技术发展到现在,不可能在短期内放弃。

        AJAX大都用javascript,javascript在经历近十年发展,已经拥有庞大的应用队伍,其继续发展的可能性是肯定存在的。

EXTJS属于AJAX技术

基于javascript语言

基于java swing 的MVC架构

支持组件化、模块化设计

提供完善的本的话数据源的支持

完善与服务端的交互机制

是最有可能拥有大规模可视化集成开发环境的AJAX技术

EXTJS的面向对象程序设计

EXTJS在面向对象所出的努力

    支持命名空间

           定义:对于类的组织定义方式。代码举例:

Ext.namespace("Ext.dojochina");

java代码对照:

package Ext.dojochina

    支持类实例属性

定义:对于一个实力的特征描述。代码举例:

Ext.applly(Ext.dojochina.Person.prototype,{name:"毛毛"});

java代码对照:

private String name = "毛毛";

public void setName(String name){this.name = name}

public String getName(){return this.name}

    支持实例方法

定义:一个对象所能具有的功能与动作。代码示例:

print:function(){

alert(String.format("姓名:{0},性别:{1}",this.name,this.sex));

}

java对照:

public void print(){

System.out.printf("姓名:%s,性别:%s,this.name,this.sex");

}

    支持类静态方法

Ext.dojochina.Person.print=function(_name, _sex){

var _person = new Ext.dojochina.Person();

_person.name = _name;

_person.sex = _sex;

_person.print();

}

    支持构造方法

定义:在初始化一个对象的同时执行一个方法。代码示例:

Ext.dojochina.Person = function(_cfg){

Ext.apply(this, _cfg);

}

    支持类继承

定义:对于类的一种扩展性。代码示例:

Ext.extend(Ext.dojochina.Student,Ext.dojochina.Person,{job:"学生"});

    支持类实例方法重写

定义:子类继承父类是对其已经存在的方法进行重新定。代码示例:

Ext.extend(Ext.dojichina.Teacher,Ext.dojochina.Person,{print:function(){

alert(String.format("{0}是一位{1}老师",this.name,this.sex));

}});

    支持命名空间别名

定义:对命名空间起别名:代码示例:

PN = Ext.namespace;

    支持类别名

定义:对于类的别称。代码示例:

PN = Ext.dojochina.Person;

    支持事件列队

定义:对于外界影响的反应,在EXTJS还支持事件列队模式。由Ext.util.Observable类支持

Ext.namespace("Ext.dojochina");

Ext.dojochina.Person = function(){

this.addEvents(

"namechange",

"sexchange"

);

};

Ext.extend(Ext.dojochina.Person,Ext.util.Observable,{

name:"",

sex:"",

setNames:function(_names){

if(this.name != _names){

this.fireEvent("namechange",this,this.name,_name);

this.name = _name;

}

},

srtSex:function(_sex){

if(this.sex != _sex){

this.fireEvent("sexchange",this,this.sex,_sex);

this.sex = _sex;

}

}

});

 EXTJS得令集中面向对象设计体现

GWT-EXT为java程序员编写EXTJS的应用提供了可能

EXTTLD为jsp程序员的标签化部署EXTJS提供了可能

EXTSharp为C#程序员编写EXTJS的应用提供了可能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值