SlideShare uma empresa Scribd logo
Aprimorando
    sua App com
      Ext JS 4

Loiane Groner
Loiane Quem?
palestrante = {
  nome: ‘Loiane Groner’,
  trabalha: ‘Sr Software Engineer’,
  onde: ‘@Citibank - São Paulo’,
  usaExtDesde: 2009,
  twitter: ‘@loiane’,
  escreve: ‘http://loiane.com’,
  escreveEN: ‘http://loianegroner.com’
}
Mãos ao alto!

   Conhece JQuery?

   Conhece Ext JS?

Já trabalhou com Ext JS?
Mas o que
é esse tal
de Ext JS?
http://sencha.com
1milhão de desenvolvedores

RIA JS Framework

Melhores componentes UI
do mercado
Puro HTML/Javascript
Com Ext JS
             HOT!
TDC 2011 - Ext JS 4
Cross Browser
         Funciona até
          no IEca 6!




         Não precisa
              ficar
         esquentando
           a cabeça!
XML
  ou
JSON
Fácil
Integração
Pode integrar código!




     E outros....
Orientado a
      Objetos
Ext.define
('MyApp.CustomerPanel', {
    extend: 'Ext.panel.Panel',
    // etc.
});
Carregamento
     Dinâmico
Ext.Loader.setConfig({
    enabled: true
});

Ext.Loader.setPath('Ext.ux', '../ux');

Ext.require([
    'Ext.grid.*',
    'Ext.data.*',
    'Ext.ux.RowExpander',
]);
Data Package
   Field                Reader
Validation    Model
                        Writer
Association   Proxy

              Store
     Sorter            Grouper
              Filter
Model Fields

Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: [
        {name: 'id', type: 'int'},
        {name: 'name', type: 'string'}
    ]
});
Model Validations

Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: ['id', 'name', 'email', 'height'],
 
    validations: [
        {type: 'presence', field: 'id'},
        {type: 'length', field: 'name', min: 2},
        {type: 'format', field: 'email', matcher: /[a-z]@[a-z].com/}
    ]
});
Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: ['id', 'name'],
                              Model
 
    hasMany: 'Posts'        Association
});
 
Ext.define('Post', {
    extend: 'Ext.data.Model',
    fields: ['id', 'user_id', 'title', 'body'],
 
    belongsTo: 'User',
    hasMany: 'Comments'
});
 
Ext.define('Comment', {
    extend: 'Ext.data.Model',
    fields: ['id', 'post_id', 'name', 'message'],
 
    belongsTo: 'Post'
});
{                        Nested Data: JSON
    id: 1
    name: 'Loiane',
    posts: [
        {
             id    : 12,
             title: 'New features in Ext JS 4',
             body : 'Ext JS 4 is the most...',
             comments: [
                 {
                      id: 123,
                      name: 'Someone',
                      message: 'Great Post!'
                 }
             ]
        }
    ]
}
Dados Associados
//loads User with ID 123 using User's Proxy
User.load(123, {
    success: function(user) {
        console.log("User: " + user.get('name'));
 
        user.posts().each(function(post) {
            console.log("Comments for post: " +
post.get('title'));
 
            post.comments().each(function(comment) {
                 console.log(comment.get('message'));
            });
        });
    }
});
Store
new Ext.data.Store({
    model: 'User',
    proxy: {
        type: 'ajax',
        url : 'users.json',
        reader: 'json'
    },
    autoLoad: true
});
new Ext.data.Store({
    model: 'User',
 
    sorters: ['name', 'id'],
    filters: {
        property: 'name',
        value   : 'Loiane'
    },
    groupers: {
        property : 'age',
        direction: 'ASC'
    }
});
Proxy

   AJAX           REST

Local Storage
 (Memory &      JSON-P
  HTML 5)
Componentes
Grid
Tree
Form + Validação
    Nativa
Data View
Toolbar +
 Buttons
Gerenciador
 de Layout
Acessibilidade
   (ARIA)
Desenhos
Charts
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
TDC 2011 - Ext JS 4
Temas
     CSS 3:
Sass + Compass
Arquitetura MVC
Model




View           Controller
Show me the code!
Código para
         Download


  http://github.com/
loiane/extjs4-tdc2011
Licença




US$ 595 por Dev
Livro:
 Ext JS 4: First Look

    RAW - Julho 2011
  Lançamento: final 2011
http://extjs4book.com
TDC 2011 - Ext JS 4
contato = {
  email: ‘me@loiane.com’,
  blogPtBr: ‘loiane.com’,
  blogIngles: ‘loianegroner.com’,
  twitter: ‘@loiane’,
  github: ‘loiane’
}


Obrigada!

Mais conteúdo relacionado

PDF
Workshop Django
PDF
School of Net Webinar: ExtJS 4
PDF
TDC2013: ExtJS 4: Dicas e Melhores Practicas
PDF
Javaone Brazil 2012: Integrando Ext JS 4 com Java EE
PDF
MobileConf 2015: Desmistificando o Phonegap (Cordova)
PDF
Devcast Brasil: ExtJS 4 e Sencha Touch 2
PDF
TDC2013: Arquitetura de apps com Sencha Touch 2
PDF
QCON SP 2014: 10 dicas de desempenho para apps mobile hibridas
Workshop Django
School of Net Webinar: ExtJS 4
TDC2013: ExtJS 4: Dicas e Melhores Practicas
Javaone Brazil 2012: Integrando Ext JS 4 com Java EE
MobileConf 2015: Desmistificando o Phonegap (Cordova)
Devcast Brasil: ExtJS 4 e Sencha Touch 2
TDC2013: Arquitetura de apps com Sencha Touch 2
QCON SP 2014: 10 dicas de desempenho para apps mobile hibridas

Destaque (20)

PDF
JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3
PDF
JavaOne Brazil 2011: Jax-RS e Ext JS 4
PDF
Ajax de primeira com ExtJS + JSON no seu projeto Spring
PDF
FrontInFloripa 2013: Sencha Touch 2 e Phonegap
PDF
Aprimorando sua Aplicação com Ext JS 4 - BrazilJS
PDF
JavaCE Conference - Ext GWT - GXT 3
PDF
Cafe com Tom - ExtJS 4
PDF
JavaCE Conference 2012: ExtJS 4 + VRaptor
PDF
MNT2014: Mobile Hibrido com Phonegap
PDF
Curso XML - IBM Academic Initiative
PDF
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
PDF
FAESA Computação Móvel: Introducao a Phonegap e Cordova
PDF
DevInCachu 2012 LT: Ext Gwt 3: GXT 3
PDF
FrontInBahia 2014: 10 dicas de desempenho para apps mobile híbridas
PDF
WebBr 2013: Apps Mobile Multiplataforma e OpenSource com Sencha Touch e Phon...
PDF
Justjava 2012: REST Com Jax-RS e ExtJS 4
PDF
QConSP 2012: Sencha Touch 2: Mobile Multiplataforma
PPT
DevInCachu 2012: Desenvolvendo Aplicacoes RIA com ExtJS 4 e Sencha Touch 2
PDF
Linguagil 2012: Desenvolvendo Aplicações RIA com Ext JS 4 e Touch 2
PDF
Conexao Java 2012: Desenvolvendo RIA com Java e Ext GWT (GXT)
JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3
JavaOne Brazil 2011: Jax-RS e Ext JS 4
Ajax de primeira com ExtJS + JSON no seu projeto Spring
FrontInFloripa 2013: Sencha Touch 2 e Phonegap
Aprimorando sua Aplicação com Ext JS 4 - BrazilJS
JavaCE Conference - Ext GWT - GXT 3
Cafe com Tom - ExtJS 4
JavaCE Conference 2012: ExtJS 4 + VRaptor
MNT2014: Mobile Hibrido com Phonegap
Curso XML - IBM Academic Initiative
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
FAESA Computação Móvel: Introducao a Phonegap e Cordova
DevInCachu 2012 LT: Ext Gwt 3: GXT 3
FrontInBahia 2014: 10 dicas de desempenho para apps mobile híbridas
WebBr 2013: Apps Mobile Multiplataforma e OpenSource com Sencha Touch e Phon...
Justjava 2012: REST Com Jax-RS e ExtJS 4
QConSP 2012: Sencha Touch 2: Mobile Multiplataforma
DevInCachu 2012: Desenvolvendo Aplicacoes RIA com ExtJS 4 e Sencha Touch 2
Linguagil 2012: Desenvolvendo Aplicações RIA com Ext JS 4 e Touch 2
Conexao Java 2012: Desenvolvendo RIA com Java e Ext GWT (GXT)
Anúncio

Semelhante a TDC 2011 - Ext JS 4 (20)

PDF
Curso ExtJS 4 - Aula 01 - Introdução
PDF
Play Framework - FLISOL
PDF
JavaScript e JQuery para Webdesigners
PPTX
GraphQL - APIs mais robustas e flexíveis
PPTX
MondoDB
PDF
Apostila_JavaScript_pela_axademia_ardkgfv
PDF
Wicket 2008
PDF
[Curso de ExtJS 4] Aula 44: Apps MVC
PDF
Ext JS 4 em 5 Minutos - QCONSP 2011
PDF
Evento Front End SP - Arquitetura de Front
PPTX
MIRA - Um framework Javascript para construção de interfaces adaptativas em a...
PPT
Introdução ao MongoDB
PDF
Meetup MUG-RS KingHost
PPT
Workshop Elasticsearch - Android Dev Conference 2016
PDF
Backbone.js + Rails - Front-end e back-end conectados
PDF
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
PDF
Novidades do Django 1.2
PPTX
Explorando a API Rest Jira Cloud
PDF
04_Introducao_JavaScript.pdf
PDF
React js
Curso ExtJS 4 - Aula 01 - Introdução
Play Framework - FLISOL
JavaScript e JQuery para Webdesigners
GraphQL - APIs mais robustas e flexíveis
MondoDB
Apostila_JavaScript_pela_axademia_ardkgfv
Wicket 2008
[Curso de ExtJS 4] Aula 44: Apps MVC
Ext JS 4 em 5 Minutos - QCONSP 2011
Evento Front End SP - Arquitetura de Front
MIRA - Um framework Javascript para construção de interfaces adaptativas em a...
Introdução ao MongoDB
Meetup MUG-RS KingHost
Workshop Elasticsearch - Android Dev Conference 2016
Backbone.js + Rails - Front-end e back-end conectados
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
Novidades do Django 1.2
Explorando a API Rest Jira Cloud
04_Introducao_JavaScript.pdf
React js
Anúncio

Último (20)

PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
PPTX
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PPTX
Curso de Java 9 - (Threads) Multitarefas.pptx
PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PPTX
Émile Durkheim slide elaborado muito bom
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
PDF
Apple Pippin Uma breve introdução. - David Glotz
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
COBITxITIL-Entenda as diferença em uso governança TI
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Curso de Java 9 - (Threads) Multitarefas.pptx
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
Émile Durkheim slide elaborado muito bom
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
Apple Pippin Uma breve introdução. - David Glotz
Aula 18 - Manipulacao De Arquivos python
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx

TDC 2011 - Ext JS 4

  • 1. Aprimorando sua App com Ext JS 4 Loiane Groner
  • 2. Loiane Quem? palestrante = { nome: ‘Loiane Groner’, trabalha: ‘Sr Software Engineer’, onde: ‘@Citibank - São Paulo’, usaExtDesde: 2009, twitter: ‘@loiane’, escreve: ‘http://loiane.com’, escreveEN: ‘http://loianegroner.com’ }
  • 3. Mãos ao alto! Conhece JQuery? Conhece Ext JS? Já trabalhou com Ext JS?
  • 4. Mas o que é esse tal de Ext JS?
  • 6. 1milhão de desenvolvedores RIA JS Framework Melhores componentes UI do mercado
  • 8. Com Ext JS HOT!
  • 10. Cross Browser Funciona até no IEca 6! Não precisa ficar esquentando a cabeça!
  • 13. Pode integrar código! E outros....
  • 14. Orientado a Objetos Ext.define ('MyApp.CustomerPanel', { extend: 'Ext.panel.Panel', // etc. });
  • 15. Carregamento Dinâmico Ext.Loader.setConfig({ enabled: true }); Ext.Loader.setPath('Ext.ux', '../ux'); Ext.require([ 'Ext.grid.*', 'Ext.data.*', 'Ext.ux.RowExpander', ]);
  • 16. Data Package Field Reader Validation Model Writer Association Proxy Store Sorter Grouper Filter
  • 17. Model Fields Ext.define('User', { extend: 'Ext.data.Model', fields: [ {name: 'id', type: 'int'}, {name: 'name', type: 'string'} ] });
  • 18. Model Validations Ext.define('User', { extend: 'Ext.data.Model', fields: ['id', 'name', 'email', 'height'],   validations: [ {type: 'presence', field: 'id'}, {type: 'length', field: 'name', min: 2}, {type: 'format', field: 'email', matcher: /[a-z]@[a-z].com/} ] });
  • 19. Ext.define('User', { extend: 'Ext.data.Model', fields: ['id', 'name'], Model   hasMany: 'Posts' Association });   Ext.define('Post', { extend: 'Ext.data.Model', fields: ['id', 'user_id', 'title', 'body'],   belongsTo: 'User', hasMany: 'Comments' });   Ext.define('Comment', { extend: 'Ext.data.Model', fields: ['id', 'post_id', 'name', 'message'],   belongsTo: 'Post' });
  • 20. { Nested Data: JSON id: 1 name: 'Loiane', posts: [ { id : 12, title: 'New features in Ext JS 4', body : 'Ext JS 4 is the most...', comments: [ { id: 123, name: 'Someone', message: 'Great Post!' } ] } ] }
  • 21. Dados Associados //loads User with ID 123 using User's Proxy User.load(123, { success: function(user) { console.log("User: " + user.get('name'));   user.posts().each(function(post) { console.log("Comments for post: " + post.get('title'));   post.comments().each(function(comment) { console.log(comment.get('message')); }); }); } });
  • 22. Store new Ext.data.Store({ model: 'User', proxy: { type: 'ajax', url : 'users.json', reader: 'json' }, autoLoad: true });
  • 23. new Ext.data.Store({ model: 'User',   sorters: ['name', 'id'], filters: { property: 'name', value : 'Loiane' }, groupers: { property : 'age', direction: 'ASC' } });
  • 24. Proxy AJAX REST Local Storage (Memory & JSON-P HTML 5)
  • 26. Grid
  • 27. Tree
  • 32. Acessibilidade (ARIA)
  • 44. Temas CSS 3: Sass + Compass
  • 46. Model View Controller
  • 47. Show me the code!
  • 48. Código para Download http://github.com/ loiane/extjs4-tdc2011
  • 50. Livro: Ext JS 4: First Look RAW - Julho 2011 Lançamento: final 2011 http://extjs4book.com
  • 52. contato = { email: ‘me@loiane.com’, blogPtBr: ‘loiane.com’, blogIngles: ‘loianegroner.com’, twitter: ‘@loiane’, github: ‘loiane’ } Obrigada!