SlideShare a Scribd company logo
1 of 16
使用对象属性重写进行优化 承玉 (yiminghe@gmail.com)
属性重写 ,[object Object]
还能做什么? ,[object Object]
一个实例 ,[object Object]
如果页面窗体太多
使用判断来延迟 ,[object Object]
不完美 ,[object Object]
使用重写来延迟 ,[object Object]
Mess ! ,[object Object]
分离逻辑 ,[object Object]
串联 ,[object Object]
That’s  it ,[object Object]
进阶的原型方法重写 ,[object Object]
原型也是对象 ,[object Object]
总结 ,[object Object],[object Object],[object Object],[object Object]
感谢 ,[object Object],[object Object]

More Related Content

Viewers also liked

UNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTO
UNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTOUNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTO
UNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTOyonipapa
 
Mortalidad por anomalías congénitas en chile
Mortalidad por anomalías congénitas en chileMortalidad por anomalías congénitas en chile
Mortalidad por anomalías congénitas en chileCirugias
 
Trombocitopenia severa como manifestación de un tumor testicular de células g...
Trombocitopenia severa como manifestación de un tumor testicular de células g...Trombocitopenia severa como manifestación de un tumor testicular de células g...
Trombocitopenia severa como manifestación de un tumor testicular de células g...Cirugias
 
Drupal1a
Drupal1aDrupal1a
Drupal1aFESABID
 
Dia da internet segura 8 fev 2011
Dia da internet segura 8 fev 2011Dia da internet segura 8 fev 2011
Dia da internet segura 8 fev 2011Instituto Crescer
 
Porqué debemos autoevaluarnos
Porqué debemos autoevaluarnosPorqué debemos autoevaluarnos
Porqué debemos autoevaluarnosrjvivancob
 
Presentacion de matematica
Presentacion de matematicaPresentacion de matematica
Presentacion de matematicaahslin234
 
Presentacion de-jocote
Presentacion de-jocotePresentacion de-jocote
Presentacion de-jocoteRocio Rosales
 
luisa maria sierra montoya
 luisa maria sierra montoya luisa maria sierra montoya
luisa maria sierra montoyaluisamaria01
 
utilización de las RSS
utilización de las RSSutilización de las RSS
utilización de las RSSmelissaatencia
 

Viewers also liked (19)

UNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTO
UNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTOUNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTO
UNIDAD II HERRAMIENTAS DIGITALES PARA LA GESTION DEL CONOCIMIENTO
 
Mortalidad por anomalías congénitas en chile
Mortalidad por anomalías congénitas en chileMortalidad por anomalías congénitas en chile
Mortalidad por anomalías congénitas en chile
 
Trombocitopenia severa como manifestación de un tumor testicular de células g...
Trombocitopenia severa como manifestación de un tumor testicular de células g...Trombocitopenia severa como manifestación de un tumor testicular de células g...
Trombocitopenia severa como manifestación de un tumor testicular de células g...
 
proyectode solucion
proyectode solucionproyectode solucion
proyectode solucion
 
Ejercicios
Ejercicios Ejercicios
Ejercicios
 
Drupal1a
Drupal1aDrupal1a
Drupal1a
 
Dia da internet segura 8 fev 2011
Dia da internet segura 8 fev 2011Dia da internet segura 8 fev 2011
Dia da internet segura 8 fev 2011
 
Porqué debemos autoevaluarnos
Porqué debemos autoevaluarnosPorqué debemos autoevaluarnos
Porqué debemos autoevaluarnos
 
Presentacion de matematica
Presentacion de matematicaPresentacion de matematica
Presentacion de matematica
 
Classificador de Documentos Naïve Bayes
Classificador de Documentos Naïve BayesClassificador de Documentos Naïve Bayes
Classificador de Documentos Naïve Bayes
 
Presentacion de-jocote
Presentacion de-jocotePresentacion de-jocote
Presentacion de-jocote
 
Website Inteligente
Website InteligenteWebsite Inteligente
Website Inteligente
 
luisa maria sierra montoya
 luisa maria sierra montoya luisa maria sierra montoya
luisa maria sierra montoya
 
Slideshare brecha
Slideshare brechaSlideshare brecha
Slideshare brecha
 
utilización de las RSS
utilización de las RSSutilización de las RSS
utilización de las RSS
 
Care for some Graffiti?
Care for some Graffiti?Care for some Graffiti?
Care for some Graffiti?
 
Geografia
GeografiaGeografia
Geografia
 
automovil
automovilautomovil
automovil
 
Cover Letter
Cover LetterCover Letter
Cover Letter
 

More from yiming he

kissy 1.5 progress
kissy 1.5 progresskissy 1.5 progress
kissy 1.5 progressyiming he
 
kissy at alibaba
kissy at alibabakissy at alibaba
kissy at alibabayiming he
 
kissy modularization part2
kissy modularization part2kissy modularization part2
kissy modularization part2yiming he
 
kissy modularization part1
kissy modularization part1kissy modularization part1
kissy modularization part1yiming he
 
KISSY @ 2013-2
KISSY @ 2013-2KISSY @ 2013-2
KISSY @ 2013-2yiming he
 
KISSY 1.4.0 released
KISSY 1.4.0 releasedKISSY 1.4.0 released
KISSY 1.4.0 releasedyiming he
 
callSuper in kissy
callSuper in kissycallSuper in kissy
callSuper in kissyyiming he
 
KISSY XTemplate
KISSY XTemplateKISSY XTemplate
KISSY XTemplateyiming he
 
Introduction to kissy for adc 2013
Introduction to kissy for adc 2013Introduction to kissy for adc 2013
Introduction to kissy for adc 2013yiming he
 
Kissy component system
Kissy component systemKissy component system
Kissy component systemyiming he
 
KISSY@2013.05
KISSY@2013.05KISSY@2013.05
KISSY@2013.05yiming he
 
kissy@2013.03
kissy@2013.03 kissy@2013.03
kissy@2013.03 yiming he
 
KISSY 1.3-released
KISSY 1.3-releasedKISSY 1.3-released
KISSY 1.3-releasedyiming he
 
Simple kissy1.3
Simple kissy1.3Simple kissy1.3
Simple kissy1.3yiming he
 
Kissy in-progress
Kissy in-progressKissy in-progress
Kissy in-progressyiming he
 
Kissy dpl-practice
Kissy dpl-practiceKissy dpl-practice
Kissy dpl-practiceyiming he
 
编辑器设计2
编辑器设计2编辑器设计2
编辑器设计2yiming he
 
KISSY Editor Design 2
KISSY Editor Design 2KISSY Editor Design 2
KISSY Editor Design 2yiming he
 

More from yiming he (20)

kissy 1.5 progress
kissy 1.5 progresskissy 1.5 progress
kissy 1.5 progress
 
kissy at alibaba
kissy at alibabakissy at alibaba
kissy at alibaba
 
kissy modularization part2
kissy modularization part2kissy modularization part2
kissy modularization part2
 
kissy modularization part1
kissy modularization part1kissy modularization part1
kissy modularization part1
 
KISSY @ 2013-2
KISSY @ 2013-2KISSY @ 2013-2
KISSY @ 2013-2
 
KISSY 1.4.0 released
KISSY 1.4.0 releasedKISSY 1.4.0 released
KISSY 1.4.0 released
 
callSuper in kissy
callSuper in kissycallSuper in kissy
callSuper in kissy
 
KISSY XTemplate
KISSY XTemplateKISSY XTemplate
KISSY XTemplate
 
Introduction to kissy for adc 2013
Introduction to kissy for adc 2013Introduction to kissy for adc 2013
Introduction to kissy for adc 2013
 
Kissy component system
Kissy component systemKissy component system
Kissy component system
 
KISSY@2013.05
KISSY@2013.05KISSY@2013.05
KISSY@2013.05
 
kissy@2013.03
kissy@2013.03 kissy@2013.03
kissy@2013.03
 
kissy@2013
kissy@2013kissy@2013
kissy@2013
 
KISSY 1.3-released
KISSY 1.3-releasedKISSY 1.3-released
KISSY 1.3-released
 
Simple kissy1.3
Simple kissy1.3Simple kissy1.3
Simple kissy1.3
 
Hujs 总结
Hujs 总结Hujs 总结
Hujs 总结
 
Kissy in-progress
Kissy in-progressKissy in-progress
Kissy in-progress
 
Kissy dpl-practice
Kissy dpl-practiceKissy dpl-practice
Kissy dpl-practice
 
编辑器设计2
编辑器设计2编辑器设计2
编辑器设计2
 
KISSY Editor Design 2
KISSY Editor Design 2KISSY Editor Design 2
KISSY Editor Design 2
 

使用对象属性重写进行优化

Editor's Notes

  1. 缺点:产成实例后即生成 div 节点,如果用户用不到(永远不弹出),则白白消耗了宝贵的 dom 操作,下面即照着这个思路进行优化
  2. 静态语言的思路,增加标志 (this.init) 来控制初始化的次数,只有在第一次显示时才进行创建。(这里也可以判断 this.el 的存在与否,道理相同)
  3. 缺点: 1. 不够分离与自动化,每次都得在原函数中进行操作,和原有逻辑混在一起。 2. 增加了内存占用,在实例自身中创建函数,取代了原型链查询,但也同时提升了访问速度。 3. 若用户开始就注册 this.show 到 dom 节点事件,则后面重写无效。
  4. 1. 分离初始化动作 (_prepare) 与实际动作 (_real) ,利用 lazyRun 公共机制串联。 2.lazyRun 在实例生成后立即重写 _prepare 。 调用 _prepare 时,先调用自身,再调用实际操作代码 _real, 最后用 _real 重写自己。 3. 不修改对外接口 show , show 中直接调用 _prepare ,可用它做为事件回调函数。
  5. 还是弹窗,但是常常伴随着遮罩层( mask ),遮罩层是所有 dialog 实例公用,但是如果一开始就创建遮罩层,就显得有点浪费(实例还没生成呢),所有我们常常这样处理:
  6. 这样的话当某个实例第一次执行 show 时会运行 _prepare 而初始化 mask ,随之构造器的原型立即被更改,则以后所有的弹窗实例 show 时都会直接运行构造器原型上被覆盖后的 _prepare 即 _real ,达到了 所有实例共享 mask 的目的。