Este documento apresenta o grupo voluntário DevRioClaro, que tem o objetivo de disseminar conhecimento sobre desenvolvimento de software. O grupo oferece descontos em livros e eventos para compartilhar conhecimento sobre frameworks como ExtJS.
2. Seja bem vindo(a)!
Somos um grupo voluntário e
independente de desenvolvedores de
software, com o intuito de disseminar
conhecimento e fortalecer a
comunidade local
DevRioClaro devrioclaro@gmail.com
5. Livro para sorteio no dia do evento!
30% de desconto - “DevRioClaro30”
(válido até 05/08/2014)
www.novatec.com.br
6. 2 e-Books para sorteio no dia do evento!
15% desconto - “JUMPSTART”
(válido de 18 até 21/07/2014)
www.casadocodigo.com.br
7. Desconto de 40% livro impresso e 10% eBook - “V00031”
(válido até [while true])
www.lcm.com.br
8. {
nome: ‘Daniel da Cunha Bueno’,
idade: 31,
email: ‘danielcbueno@msn.com’,
entusiastaWebDesktopApps: true,
github: https://github.com/danielcbueno
}
9. É um framework de aplicações JavaScript puro
que funciona em qualquer Browser, desde do IE6
para até a mais recente versão do Chrome.
Ele permite que você criar as melhores aplicações
multi-plataformas usando nada além de um
Browser, e tem uma API fenomenal.
10. » Originalmente criada como uma extensão da
biblioteca YUI por Jack Slocum, Ext JS incluía
interoperabilidade com jQuery e Prototype.
Começando com a versão 1.1.
11. » Em 4 de dezembro de 2007 foi lançada a versão 2.0,
na qual não mantinha nenhuma compatibilidade
com a versão anterior, e vinha com a primeira
documentação API (Também deixa de depender do
YUI,Prototype e jquery).
» Ainda no lançamento dessa versão, é
disponibilizado um guia de migração para a versão
atual.
» Ponto marcante da versão é a disponibilidade de
interfaces gráficas muito próximas as de aplicações
desktop.
12. » Em 6 de julho de 2009 é lançada a versão 3.0
com suporte a REST e a criação do Ext.Direct
(Simular ao SignalR da Microsoft).
» Essa já é a primeira versão que o framework é
compatível com a versão anterior.
» Foram disponibilizados os componentes de
gráficos em Flash e o componente ListView.
13. » Em 26 de Abril de 2011 é lançado a versão 4.0
com um sistema de classe inteiramente
revisado, com uma nova estrutura de pacote de
acesso a dados.
» Os gráficos em Flash são trocados por gráficos
em SVG.
» Criada a opção de desenvolver aplicações na
arquitetura MVC (Muito obrigado Sencha!)
14. » No mês de maio desse ano (2014) é lançado a
versão 5.0.
» O ponto mais marcante dessa versão é o
suporte mutuo da aplicação para rodar em
Browsers tanto de Desktop, quanto e browsers
de tablets e smartphones.
15. » Em 15 de Junho de 2010 os mantenedores de
JQTouch, RaphaelJS anunciam a criação de uma
nova organização.
» Nome da organização é Sencha Inc.
» Conseguem um fundo de investimento inicial
para criação da empresa de aproximadamente
seis milhões de dólares.
» O salto de qualidade da versão 3.0 para a
versão 4.0 é muito elevado.
16.
17. » Atualmente o ExtJS possui dois tipos de
Licenciamento :
˃ Licenciamento com código aberto, desde que toda a aplicação seja
disponibilizada na internet com o código aberto também.
˃ Licenciamento com código fechado, que tabulado pela imagem
abaixo:
18. » Anteriormente eu tinha estudado algumas
bibliotecas como Backbone, AngularJS,
Marionette, RequireJS.
» Para que ?
» Para criar as aplicações web mais leves para o
meu cliente final.
» Por que ?
» Porque ele vai reconhecer uma aplicação
desenvolvida de um panorama diferente.
19. » Uma tela é uma página, seja ela em ASP.NET,
PHP,JAVA,etc que rendereiza um HTML.
» Que provavelmente irá chamar um arquivo CSS.
» Que provavelmente irá chamar um arquivo JavaScript.
» Que provavelmente irá chamar uma ou mais imagens.
20. HTTP Request
O acesso à http://www.minhaplicacaotradicional.com.br/inicio.aspx
1º Roundtrip
2º Roundtrip
3º Roundtrip
4º Roundtrip
Acesso ao Banco de dados
21. HTTP Request
Acesso direto no banco de dados remoto
Infelizmente não existe, pois precisamos acessar o banco de
dados pelo protocolo HTTP.
22. » Foi ai que surgiram as chamadas AJAX.
» Com acesso apenas aos dados.
» Sem a necessidade de carregar a página
» E começamos a ter um dinamismo maior no
funcionamento de nossas das páginas.
HTTP Request
23. » Bibliotecas javascripts que carregam sua
aplicação em poucas requests.
» Faz com que nossas aplicações rodem com uma
velocidade maior.
» Template no lado do Client e não mais no
servidor.
» Apenas os JSON são carregados
24. Acesso o link: http://todomvc.com/ para ver mais frameworks similares a esses
25. » API extensa com mais de diversas classes.
» Remete a uma ideia similar ao do .Net Framework ou ao
Java.
» Fácil de aprender.
» Rápido para desenvolver.
» Possibilidade de criar aplicações robustas.
» Disponibilização de estrutura MVC (Model View
Controller)
» Encoraja a adoção de padrões de codificação e
documentação.
» Ferramentas auxiliares de bônus que fazem muita
diferença para os demais frameworks.
26. » Sencha CMD
» Sencha Architect
» JSDuck
» Temas nativos que são fáceis de customizar
» Esses itens serão abordados com maior clareza
na próxima apresentação do dia 02/08/2014.
27. » No próximos slides irei mostrar como criamos
uma classe da maneira convencional javascript.
» E depois veremos como seria a mesma classe se
fosse com ExtJS.
28. (Para o exemplo foi escrito um código com a última versão do ECMA Script 5)
29. (Para o exemplo foi escrito um código com a última versão do ECMA Script 5)
33. » Permite que a classe possua métodos estáticos
» Permite nativamente que a classe seja singleton.
» Mixin (Como se pudéssemos dar uma habilidade a
uma classe permanentemente, atua na definição da
classe.)
» Override (Útil para sobreposição de classes já em
funcionamento e aplicação de paths de correção)
» Plugins (Similar ao mixins, mas atua na instância do
objeto)
» Feature (Similar ao plugins, mas só funciona para
um tipo específico de classe)
35. » É como se pudéssemos herdar várias classes em
uma única classe.
» Centralizar o desenvolvimento de um conjunto
de funcionalidades específicas, assim como
facilitar a manutenção da mesma.
36. » Possibilidade de desenvolver aplicações no
conceito Model View Controller.
» Facilita a estrutura e administração da do
crescimento da aplicação.
» Economia de memória através do uso de
controllers
41. Aplicação MVC com acesso de dados remoto.
Sencha CMD
Criação de Packages
Build de Packages
Criação de repositório locais
Instalação de Pacotes
JSDuck