SlideShare uma empresa Scribd logo
Desafios no desenvolvimento de
 uma aplicação real com Flex




       João Augusto Zaratine <zaratine@gmail.com>
                 blog.joaoaugusto.com.br
                      @joaozaratine
                        Julho/2010
Eu
        Flex desde 2007

Informant <www.informant.com.br>

NOUS <www.noussoftware.com>

     blog.joaoaugusto.com.br

          @joaozaratine
A APLICAÇÃO
http://vimeo.com/13278187
           Texto
DESAFIO #1
Criando textos de verdade
O que queríamos...
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
O que tínhamos...
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
✓Alinhamento
✓Tamanhos            ๏Imagens
✓sublinhado
 Negrito, itálico,
                     x Colunas
                     x Tabelas
✓Marcadores          x Embed
✓Cores               x Ctrl+V do Word
✓Links
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
✓Alinhamento
✓Tamanhos            ✓Colunas
✓sublinhado
 Negrito, itálico,
                     ๏Imagens
                     x Tabelas
✓Marcadores          x Embed
✓Cores               x Ctrl+V do Word
✓Links
É quase impossível usar
         o TLF
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
“O CKEditor é o que
precisamos... Isso não é
       Flex, é?”
“Já sei, vamos fazer um
          popup”
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Bom, agora só falta
 exibir o texto....
DESAFIO #2
Exibindo conteúdo HTML
Tentativa #1
   htmlText
✓ <a>            ✓ <u>
✓ <b>            x <div>
✓ <br>           x <table>, <th>, <tr>, <td>
✓ <font>         x <object>, <embed>
✓ <img>          x <em>
✓ <i>            x <form>
✓ <li>           x <input>
✓ <p>            x <h1>, <h2>, <h3>, <h4>...
✓ <textformat>   x Etc e tal
Tentativas #2 #3
  #4 #5 #6...
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
DENG
DENG
   IFrame 1
DENG
           IFrame 1
IFrame 2
DENG
           IFrame 1
IFrame 2
               IFrame 3
DENG
           IFrame 1
IFrame 2
               IFrame 3
 IFrame 4
DENG
IFrame 5     IFrame 1
  IFrame 2
                 IFrame 3
    IFrame 4
DENG
                        IFrame 6
IFrame 5     IFrame 1
  IFrame 2
                 IFrame 3
    IFrame 4
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Qual é o melhor lugar para
      exibir HTML?
Qual é o melhor lugar para
      exibir HTML?

Talvez numa página HTML?
Largura:100%




                             Altura: 100%
Aplicação Flex Tradicional


       Flex ScrollBars
Largura:100%




                    Altura definida pela conteúdo
 NOUS (Flex)

Browser ScrollBar

     HTML
Browser
Página HTML




                                                                          NOUS (Flex)



Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam vitae elit placerat justo sollicitudin posuere. Sed pulvinar velit eu elit pellentesque tristique. Nam consectetur
dui eu elit consectetur eget tincidunt massa vestibulum. Vivamus nisi libero, pretium et aliquet ut, ultrices ac purus. Etiam nibh dui, faucibus ut venenatis ut, accumsan a augue.

                                                          Conteúdo HTML
Sed feugiat nisi sed ipsum bibendum imperdiet. Etiam lobortis vulputate metus ac interdum. Morbi porta semper vestibulum. Pellentesque lobortis quam non diam sagittis vitae
rhoncus tortor viverra. Nam ut ultricies urna.
Área que mostra conteúdo apareceu?
   ADDED_TO_STAGE ou SHOW




ExternalInterface.call(mostraDivECarreg
          aConteudoPorAjax)
Área que mostra conteúdo desapareceu?
   REMOVED_TO_STAGE ou HIDE




ExternalInterface.call(escondeDivEApaga
             SeuConteudo)
DESAFIO #3
Eternal Loading....
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
AÇÃO #1
Recompactar todas as imagens
AÇÃO #2
Remover todos Embed das
        imagens
    (a não ser que elas apareçam na primeira tela)
AÇÃO #3
 Criar mais Modules e não
carregá-los com a aplicação
“Mas agora quando eu entro no
 módulo administração a tela
    demora pra aparecer”
Depois que a aplicação é carregada e aparece na
 tela, carregamos todos os módulos sem que o
                  usuário saiba
“Mas essa aplicação ainda demora
        muito pra abrir”
AÇÃO #4
Login antes de carregar a
        aplicação
Pessoas consideram uma aplicação
     rápida por duas razões:
1) Ou elas são rápidas de verdade
               ou...
2) Ou elas dão a impressão de
       serem rápidas
Passo #1
Exterminar a tela de login do Flex
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Passo #2
Criar uma nova tela de login em HTML
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Passo #3
Colocar a nova tela de login em cima da tela
de loading do Flex
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC
DESAFIO #4
Performance
90% dos problemas de performance estavam no back-end
ANTES



select t from Topic t
DEPOIS


select t.name,
       t.description,
       t.date
       from Topic t
ANTES

public class Package
{
	 	 public var id:Number;
     public var status:String;
	 	 public var packageBarcode:String;
	 	 public var orderItem:OrderItem;
}
OrderItem tem:

• Order
  •Shipment
   •Terminal
  •OrderItem[]
•Product
DEPOIS
public   class Package
{
	 	      public   var   id:Number;
	 	      public   var   orderId:Number;
	 	      public   var   orderItemId:Number;
	 	      public   var   status:String;
	 	      public   var   packageBarcode:String;
	 	      public   var   postalBarcode:String;
	 	      public   var   shipWay:String;
	 	      public   var   productName:String;
	 	      public   var   reference:String;
	 	      public   var   date:Date;
	 	      public   var   name:String;
	 	      public   var   address:String;
	 	      public   var   number:String;
	 	      public   var   city:String;
	 	      public   var   country:String;
	 	      public   var   postalCode:String;
	 	      public   var   neighborhood:String;
	 	      public   var   phone:String;
}
ANTES
	   <mx:Box>
	   	 <mx:Canvas>
	   	 	 <mx:HBox>
	   	 	 	 <mx:Canvas>
	   	 	 	 	 <mx:VBox>
	   	 	 	 	 	 <mx:Label text="Hello"/>
	   	 	 	 	 </mx:VBox>
	   	 	 	 </mx:Canvas>
	   	 	 </mx:HBox>
	   	 </mx:Canvas>
	   </mx:Box>
DEPOIS


<mx:Canvas>
	 <mx:Label text="Hello"/>
</mx:Canvas>
ANTES


model.user.name = "Joao"
model.user.abstract = ""
model.user.birthdate = new Date(1988, 04, 26)
model.user.administrator = true
DEPOIS


var user:User = model.user
user.name = "Joao"
user.abstract = ""
user.birthdate = new Date(1988, 04, 26)
user.administrator = true
Dúvidas?
Obrigado!

Mais conteúdo relacionado

PDF
HTML5 Básico: Formulários (aula 2)
PDF
Instruccoes Inserir Apresentacoes Pt
PPTX
Minicurso Iniciando no Mundo Front-End - Dia 03 - SASPI {5}
PPT
Começando com o Html
PDF
Introdução ao Web Design: Aula 5 - HTML (part. 1)
PPT
Css no webdesign
PPT
Email mkt e html: Introdução
PPT
COMO FAZER E-MAIL MARKETING EM HTML
HTML5 Básico: Formulários (aula 2)
Instruccoes Inserir Apresentacoes Pt
Minicurso Iniciando no Mundo Front-End - Dia 03 - SASPI {5}
Começando com o Html
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Css no webdesign
Email mkt e html: Introdução
COMO FAZER E-MAIL MARKETING EM HTML

Destaque (7)

PDF
Deckofcapabilities
PDF
Lunch Science: Glycemic Effects as a Credence Quality
PPTX
Htp Prospect Webinar
PPTX
PDF
Empreender Na Crise
PDF
empreendedorismo e inovação em época de crise
ODP
Presentación r
Deckofcapabilities
Lunch Science: Glycemic Effects as a Credence Quality
Htp Prospect Webinar
Empreender Na Crise
empreendedorismo e inovação em época de crise
Presentación r
Anúncio

Semelhante a Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC (20)

KEY
Best pratices para desenvolvimento mobile
PDF
Ajax para quem_ouviu_falar
PDF
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
PDF
Programação Android Avançada - Acesso Web em Aplicações Android
PPT
Webdesign revisãao 2018-02
PPT
Webdesign Revisão 2019-01
PPTX
Nova web - DNAD 2012
PDF
Arquitetura Web Desacoplada - FCI/Mackenzie
PPTX
Introdução ao desenvolvimento de aplicações web
PDF
RIA e Flex - Dando formas à Inovação
PDF
Evento Front End SP - Arquitetura de Front
PDF
Cobol Web com Net Express 5.1 - Parte 3
PPT
Revisão Webdesign
PPTX
Desenvolvimento web com tecnologias microsoft
PPT
introdução a ajax
PPTX
Conhecendo o ASP .NET 4.5
PDF
Cobol Web com Net Express 3.1/4.0/5.x - Parte 2
PDF
PHPZEIRO: Adote um framework
PDF
Ajax em java
PPTX
Desenvolvimento Web com ASP.NET 4
Best pratices para desenvolvimento mobile
Ajax para quem_ouviu_falar
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
Programação Android Avançada - Acesso Web em Aplicações Android
Webdesign revisãao 2018-02
Webdesign Revisão 2019-01
Nova web - DNAD 2012
Arquitetura Web Desacoplada - FCI/Mackenzie
Introdução ao desenvolvimento de aplicações web
RIA e Flex - Dando formas à Inovação
Evento Front End SP - Arquitetura de Front
Cobol Web com Net Express 5.1 - Parte 3
Revisão Webdesign
Desenvolvimento web com tecnologias microsoft
introdução a ajax
Conhecendo o ASP .NET 4.5
Cobol Web com Net Express 3.1/4.0/5.x - Parte 2
PHPZEIRO: Adote um framework
Ajax em java
Desenvolvimento Web com ASP.NET 4
Anúncio

Mais de João Zaratine (7)

PDF
Case ContaAzul - Final Desafio Brasil SC
PDF
Lições Aprendidas na Criação de um Negócio de Escala
PDF
Semana da Informática UNIVILLE - Flex Messaging
PPTX
Felipe Crescencio - Flex e Java com BlazeDS @ FUGSC
PPTX
Felipe Crescencio - Flex e Java com BlazeDS @ FUGSC
KEY
Arian Pasquali - Introdução ao Flex @ FUGSC
PDF
Flex + Grails @ Flexmania2010
Case ContaAzul - Final Desafio Brasil SC
Lições Aprendidas na Criação de um Negócio de Escala
Semana da Informática UNIVILLE - Flex Messaging
Felipe Crescencio - Flex e Java com BlazeDS @ FUGSC
Felipe Crescencio - Flex e Java com BlazeDS @ FUGSC
Arian Pasquali - Introdução ao Flex @ FUGSC
Flex + Grails @ Flexmania2010

Último (19)

PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Aula 18 - Manipulacao De Arquivos python
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Apple Pippin Uma breve introdução. - David Glotz
COBITxITIL-Entenda as diferença em uso governança TI
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Processos na gestão de transportes, TM100 Col18
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Aula 18 - Manipulacao De Arquivos python
Aula04-Academia Heri- Tecnologia Geral 2025
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Custos e liquidação no SAP Transportation Management, TM130 Col18
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...

Desafios no desenvolvimento de uma aplicação real com Flex @ FUGSC