ExtJS - Jumpstart para o Grupo DevRioClaro

Click here to load reader

  • date post

    09-Jul-2015
  • Category

    Documents

  • view

    131
  • download

    1

Embed Size (px)

description

O membro Daniel da Cunha Bueno irá apresentar o evento sobre ExtJS, que abordará a biblitoeca que é composta por mais de 300 classes, com uma comunidade com mais de 200.000 desenvolvedores ativos, vindo dos mais diversos ambientes de desenvolvimento WEB(ASp.NET,JAVA,PHP,NodeJs,etc...). Essa lib tem como principal foco em sua arquitetura: - Ser familiar e simples de aprender. - Rápida para desenvolvimento, fácil para debugar, e sem sofrimento para implantar. - Bem organizada, extensível e de manutenção simples. JavaScript é uma linguagem orientada a protótipo sem classes. Assim, por natureza, um dos recursos mais poderosos da linguagem é a flexibilidade. Ele pode obter o mesmo trabalho feito por muitas maneiras diferentes, em muitos estilos diferentes e técnicas de codificação. Essa característica, no entanto, trata com o custo de imprevisibilidade. Sem uma estrutura unificada, o código JavaScript pode ser realmente difícil de entender, manter e re-usálo. A Programação baseada em classe, por outro lado, ainda permanece como o modelo mais popular de OOP. Linguagens baseadas em classe geralmente requerem forte digitação, fornecer encapsulamento, e vem com a convenção de codificação padrão. Por geralmente tornando desenvolvedores aderir a um grande conjunto de princípios, o código escrito é mais provável que seja previsível, extensível e escalável ao longo do tempo. No entanto, eles não têm a mesma capacidade dinâmica encontrada em tal linguagem como JavaScript. Cada abordagem tem suas próprias vantagens e desvantagens, mas podemos ter as partes boas de ambos ao mesmo tempo enquanto escondemos as partes ruins? A resposta é sim, através dessa fantástica biblioteca. O evento será GRATUITO e haverá sorteio de BRINDES! Porém, as vagas são limitadas, portanto, faça sua inscrição o quanto antes!!! Por questões de espaço físico, solicitamos que confirme sua presença através do e-mail: [email protected] Este é um evento organizado pela comunidade DevRioClaro, um grupo voluntário e aberto dos desenvolvedores de software de Rio Claro e região. https://www.facebook.com/groups/DevRioClaro

Transcript of ExtJS - Jumpstart para o Grupo DevRioClaro

Ext JS

Ext JSJumpstartPor Daniel da Cunha Bueno / 2014Seja bem vindo(a)!Somos um grupo voluntrio e independente de desenvolvedores de software, com o intuito de disseminar conhecimento e fortalecer a comunidade local

DevRioClaro

devri[email protected] no feito por mquinas,mas por pessoas!Espao fsicoInfra-estrutura dos encontroswww.mappase.com.br

Livro para sorteio no dia do evento!30% de desconto - DevRioClaro30 (vlido at 05/08/2014)

www.novatec.com.br

2 e-Books para sorteio no dia do evento!15% desconto - JUMPSTART(vlido de 18 at 21/07/2014)www.casadocodigo.com.br

Desconto de 40% livro impresso e 10% eBook - V00031(vlido at [while true]) www.lcm.com.br

Sobre Mim{nome: Daniel da Cunha Bueno,idade: 31,email: [email protected],entusiastaWebDesktopApps: true, github: https://github.com/danielcbueno}Mas o que ExtJs ? um framework de aplicaes JavaScript puro que funciona em qualquer Browser, desde do IE6 para at a mais recente verso do Chrome. Ele permite que voc criar as melhores aplicaes multi-plataformas usando nada alm de um Browser, e tem uma API fenomenal.HistriaOriginalmente criada como uma extenso da biblioteca YUI por Jack Slocum, Ext JS inclua interoperabilidade com jQuery e Prototype. Comeando com a verso 1.1. Ext JS 2.0Em 4 de dezembro de 2007 foi lanada a verso 2.0, na qual no mantinha nenhuma compatibilidade com a verso anterior, e vinha com a primeira documentao API (Tambm deixa de depender do YUI,Prototype e jquery).Ainda no lanamento dessa verso, disponibilizado um guia de migrao para a verso atual.Ponto marcante da verso a disponibilidade de interfaces grficas muito prximas as de aplicaes desktop.Ext JS 3.0Em 6 de julho de 2009 lanada a verso 3.0 com suporte a REST e a criao do Ext.Direct (Simular ao SignalR da Microsoft).Essa j a primeira verso que o framework compatvel com a verso anterior.Foram disponibilizados os componentes de grficos em Flash e o componente ListView.Ext JS 4.0Em 26 de Abril de 2011 lanado a verso 4.0 com um sistema de classe inteiramente revisado, com uma nova estrutura de pacote de acesso a dados.Os grficos em Flash so trocados por grficos em SVG.Criada a opo de desenvolver aplicaes na arquitetura MVC (Muito obrigado Sencha!)Ext JS 5.0No ms de maio desse ano (2014) lanado a verso 5.0.O ponto mais marcante dessa verso o suporte mutuo da aplicao para rodar em Browsers tanto de Desktop, quanto e browsers de tablets e smartphones.SenchaEm 15 de Junho de 2010 os mantenedores de JQTouch, RaphaelJS anunciam a criao de uma nova organizao.Nome da organizao Sencha Inc.Conseguem um fundo de investimento inicial para criao da empresa de aproximadamente seis milhes de dlares.O salto de qualidade da verso 3.0 para a verso 4.0 muito elevado.Sencha e Fatos atuais

LicenciamentoAtualmente o ExtJS possui dois tipos de Licenciamento :Licenciamento com cdigo aberto, desde que toda a aplicao seja disponibilizada na internet com o cdigo aberto tambm.Licenciamento com cdigo fechado, que tabulado pela imagem abaixo:

Minhas impresses aps um ano estudando esse framework.Anteriormente eu tinha estudado algumas bibliotecas como Backbone, AngularJS, Marionette, RequireJS.Para que ? Para criar as aplicaes web mais leves para o meu cliente final. Por que ?Porque ele vai reconhecer uma aplicao desenvolvida de um panorama diferente.Modelo tradicional de uma (parte) da aplicao WebUma tela uma pgina, 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.Revisando: O que ocorre no modelo tradicional ?

HTTP RequestO acesso http://www.minhaplicacaotradicional.com.br/inicio.aspx1 Roundtrip2 Roundtrip3 Roundtrip4 RoundtripAcesso ao Banco de dados

E se pudssemos conviver em um cenrio assim ?

HTTP RequestAcesso direto no banco de dados remotoInfelizmente no existe, pois precisamos acessar o banco de dados pelo protocolo HTTP.Mas podemos evitar acesso desnecessrio para cada tela.Foi ai que surgiram as chamadas AJAX.Com acesso apenas aos dados.Sem a necessidade de carregar a pginaE comeamos a ter um dinamismo maior no funcionamento de nossas das pginas.

HTTP RequestEnto surgemBibliotecas javascripts que carregam sua aplicao em poucas requests.Faz com que nossas aplicaes rodem com uma velocidade maior.Template no lado do Client e no mais no servidor.Apenas os JSON so carregadosExemplos de bibliotecas desse tipo

Acesso o link: http://todomvc.com/ para ver mais frameworks similares a essesPorque ExtJS ?API extensa com mais de diversas classes.Remete a uma ideia similar ao do .Net Framework ou ao Java.Fcil de aprender.Rpido para desenvolver.Possibilidade de criar aplicaes robustas.Disponibilizao de estrutura MVC (Model View Controller)Encoraja a adoo de padres de codificao e documentao.Ferramentas auxiliares de bnus que fazem muita diferena para os demais frameworks.

Ferramentas de auxiliares de bnusSencha CMDSencha ArchitectJSDuckTemas nativos que so fceis de customizarEsses itens sero abordados com maior clareza na prxima apresentao do dia 02/08/2014.Mo na massaNo prximos slides irei mostrar como criamos uma classe da maneira convencional javascript.E depois veremos como seria a mesma classe se fosse com ExtJS.Definio de classe convencional

(Para o exemplo foi escrito um cdigo com a ltima verso do ECMA Script 5)Definio de herana convencional

(Para o exemplo foi escrito um cdigo com a ltima verso do ECMA Script 5)Definio de classe em ExtJS

Herana em ExtJS

1 DemoComparao de criao de classes do modo nativo VS ExtJSSistema de Classe ExtJSPermite que a classe possua mtodos estticosPermite nativamente que a classe seja singleton.Mixin (Como se pudssemos dar uma habilidade a uma classe permanentemente, atua na definio da classe.)Override (til para sobreposio de classes j em funcionamento e aplicao de paths de correo)Plugins (Similar ao mixins, mas atua na instncia do objeto)Feature (Similar ao plugins, mas s funciona para um tipo especfico de classe)Exemplo de MixinDefinio

UsoVantagem do uso de Mixin como se pudssemos herdar vrias classes em uma nica classe.Centralizar o desenvolvimento de um conjunto de funcionalidades especficas, assim como facilitar a manuteno da mesma.MVCPossibilidade de desenvolver aplicaes no conceito Model View Controller.Facilita a estrutura e administrao da do crescimento da aplicao.Economia de memria atravs do uso de controllersExemplo de Estrutura

2 DemoDemonstrao de uma aplicao MVC.Dvidas ?Linkshttp://www.sencha.comhttp://extjs.eu/ext-examples/

Para prxima apresentaoAplicao MVC com acesso de dados remoto.Sencha CMDCriao de PackagesBuild de PackagesCriao de repositrio locaisInstalao de PacotesJSDuck

Obrigado!