SlideShare uma empresa Scribd logo
1 de 15
Renzo Nuccitelli
renzo@nuccitec.com.br
     Twitter: @nuccitec
   Discussão sobre frameworks web

   Mostrar o GAE (nível Hello World)
Execução de
Url como input                    código no
                                   servidor




                  Resultado de
                 processamento
                   (Html, XML,
                     JSON...)
Entrada              Código no
       Url                 Servidor

   Dada uma URL, qual código executar?
   Mapeamento de URL
   Mapear url ao código com arquivo de
    configuração

   Ex: /usuario/form -> mostrar formulário de
    usuario – Ver código

   Iteração: /usuario/msg -> Mostrar msg Ola +
    Nome do Usuario – Mão na Massa!
   Interação exige dois passos:
    1. Criar código a ser executado
    2. Mapear URL

    Arquivo de configuração cresce, dificuldade
     de manutenção também

    Ambos afetam a produtividade
   Definição de Framework:
       Broad overview, outline, or skeleton of interlinked items which
        supports a particular approach to a specific objective,
        and serves as a guide that can be modified as required by
        adding or deleting items. http://www.businessdictionary.com
       Proposta de solução customizável para um problema

   Qual problema um framework web quer resolver?

   Resp: Propor arquitetura para melhorar
    produtividade e manutenção

   Primeiro problema: mapeamento de URLs
Entrada Url              Código no Servidor




                Mapeamento de
                                   Execução de
Entrada Url         Url do
                                     Código
                  Framework
   Capturam todas ou parte das requisições

   Ponto de Entrada é o arquivo de cfg

   Convention over Configuration

   Ex: Vraptor e ZenWarch (Jaba)

   https://bitbucket.org/renzon/zenwarch
    Mão na massa!
   Cuidado com alienação

   Qual a caminho da execução do framework
    até o código de interesse?

   Como é possível interferir nesse caminho? Ex:
    segurança de usuário logado

   Quanto tempo demora para aprender o
    framework?
   Cloud do Google

   Sem precisar instalar BD

   Documentação centralizada, com versão em
    português

   Foi utilizado nesse apresentação
   Deploy Fácil com possibilidade de colocar
    várias versões no ar

   Que tal fazer um deploy de cada versão (Java
    e Python)?
   Discussão sobre frameworks web



   Mostrar o GAE (nível Hello World)
Renzo Nuccitelli
renzo@nuccitec.com.br
     Twitter: @nuccitec
Obrigado pela Atenção
                           Perguntas?




Renzo Nuccitelli (renzo@nuccitec.com.br)

Mais conteúdo relacionado

Mais procurados

Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXjesuinoPower
 
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SPBoas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SPjesuinoPower
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panosLaís Lima
 
Rest web services com Java
Rest web services com JavaRest web services com Java
Rest web services com JavajesuinoPower
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem PráticaEder Magalhães
 
Introdução ao JavaFX
Introdução ao JavaFXIntrodução ao JavaFX
Introdução ao JavaFXjesuinoPower
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJSGiovanni Bassi
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...MVP ShowCast
 
Conhecendo o Nodejs
Conhecendo o NodejsConhecendo o Nodejs
Conhecendo o NodejsCaio Cutrim
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panosLaís Lima
 
Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017Renato Groff
 
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geralRenato Groff
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascriptLaís Lima
 
9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometemFernando Henriques
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasRodrigo Branas
 
ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017Renato Groff
 
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017Renato Groff
 
Criar um sistema com asp net
Criar um sistema com asp netCriar um sistema com asp net
Criar um sistema com asp netAnderson Wernek
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front endDouglas Matoso
 

Mais procurados (20)

Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFX
 
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SPBoas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panos
 
Rest web services com Java
Rest web services com JavaRest web services com Java
Rest web services com Java
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem Prática
 
Introdução ao JavaFX
Introdução ao JavaFXIntrodução ao JavaFX
Introdução ao JavaFX
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
 
Conhecendo o Nodejs
Conhecendo o NodejsConhecendo o Nodejs
Conhecendo o Nodejs
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panos
 
Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017
 
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascript
 
9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
 
ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017ASP.NET Core 2.0 - Reply - Outubro/2017
ASP.NET Core 2.0 - Reply - Outubro/2017
 
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
ASP.NET Core 2.0 - .NET São Paulo - Outubro-2017
 
Node js - Javascript Server Side
Node js - Javascript Server SideNode js - Javascript Server Side
Node js - Javascript Server Side
 
Criar um sistema com asp net
Criar um sistema com asp netCriar um sistema com asp net
Criar um sistema com asp net
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front end
 

Semelhante a Jugvale

Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHPFlávio Lisboa
 
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...Renato Groffe
 
Academia do Arquiteto - Implantando A.L.M. em uma semana!
Academia do Arquiteto - Implantando A.L.M. em uma semana!Academia do Arquiteto - Implantando A.L.M. em uma semana!
Academia do Arquiteto - Implantando A.L.M. em uma semana!Globalcode
 
Minicurso de Cakephp
Minicurso de CakephpMinicurso de Cakephp
Minicurso de CakephpCauan Cabral
 
Aplicações Profissionais para Internet com Zend Framework
Aplicações Profissionais para Internet com Zend FrameworkAplicações Profissionais para Internet com Zend Framework
Aplicações Profissionais para Internet com Zend FrameworkFlávio Lisboa
 
Web Tools Pt B R
Web Tools Pt  B RWeb Tools Pt  B R
Web Tools Pt B Rguestb9d145
 
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoEstratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoComunidade NetPonto
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Rodrigo Branas
 
Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1michellobo
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterEric Silva
 
Dokuwiki e a superimportancia da documentacao na TI
Dokuwiki e a superimportancia da documentacao na TIDokuwiki e a superimportancia da documentacao na TI
Dokuwiki e a superimportancia da documentacao na TImarioaxavier7
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 
Entendendo Frameworks web com Python
Entendendo Frameworks web com PythonEntendendo Frameworks web com Python
Entendendo Frameworks web com PythonLuiz Aldabalde
 
Entendendo Framework Web com Python
Entendendo Framework Web com PythonEntendendo Framework Web com Python
Entendendo Framework Web com PythonPythOnRio
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010Norton Guimarães
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...BrunoSouza617
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1César Augusto Pessôa
 

Semelhante a Jugvale (20)

Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHP
 
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
 
Academia do Arquiteto - Implantando A.L.M. em uma semana!
Academia do Arquiteto - Implantando A.L.M. em uma semana!Academia do Arquiteto - Implantando A.L.M. em uma semana!
Academia do Arquiteto - Implantando A.L.M. em uma semana!
 
Minicurso de Cakephp
Minicurso de CakephpMinicurso de Cakephp
Minicurso de Cakephp
 
Aplicações Profissionais para Internet com Zend Framework
Aplicações Profissionais para Internet com Zend FrameworkAplicações Profissionais para Internet com Zend Framework
Aplicações Profissionais para Internet com Zend Framework
 
Web Tools Pt B R
Web Tools Pt  B RWeb Tools Pt  B R
Web Tools Pt B R
 
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoEstratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de Versão
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
 
Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniter
 
Dokuwiki e a superimportancia da documentacao na TI
Dokuwiki e a superimportancia da documentacao na TIDokuwiki e a superimportancia da documentacao na TI
Dokuwiki e a superimportancia da documentacao na TI
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 
Entendendo Frameworks web com Python
Entendendo Frameworks web com PythonEntendendo Frameworks web com Python
Entendendo Frameworks web com Python
 
Entendendo Framework Web com Python
Entendendo Framework Web com PythonEntendendo Framework Web com Python
Entendendo Framework Web com Python
 
Continuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na NuvemContinuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na Nuvem
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010
 
XHTML e CSS
XHTML e CSSXHTML e CSS
XHTML e CSS
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
Symfony Live - São Paulo 2019 - Como construir uma API em um passo com API Pl...
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1
 

Mais de Renzo Nuccitelli

Apresentação do projeto Python Birds
Apresentação do projeto Python BirdsApresentação do projeto Python Birds
Apresentação do projeto Python BirdsRenzo Nuccitelli
 
Confissões de um arquiteto de software
Confissões de um arquiteto de softwareConfissões de um arquiteto de software
Confissões de um arquiteto de softwareRenzo Nuccitelli
 
Angular js desenvolvimento de frontend zen - python nordeste
Angular js   desenvolvimento de frontend zen - python nordesteAngular js   desenvolvimento de frontend zen - python nordeste
Angular js desenvolvimento de frontend zen - python nordesteRenzo Nuccitelli
 
Python Brasil[9] - Entrega Contínua
Python Brasil[9] - Entrega Contínua Python Brasil[9] - Entrega Contínua
Python Brasil[9] - Entrega Contínua Renzo Nuccitelli
 
Google App Engine, Python e Startups - Rupy 2012
Google App Engine, Python e Startups - Rupy 2012Google App Engine, Python e Startups - Rupy 2012
Google App Engine, Python e Startups - Rupy 2012Renzo Nuccitelli
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Renzo Nuccitelli
 

Mais de Renzo Nuccitelli (11)

Programando a felicidade
Programando a felicidadeProgramando a felicidade
Programando a felicidade
 
Virtualenv e Pip
Virtualenv e PipVirtualenv e Pip
Virtualenv e Pip
 
Apresentação do projeto Python Birds
Apresentação do projeto Python BirdsApresentação do projeto Python Birds
Apresentação do projeto Python Birds
 
Testes automáticos
Testes automáticosTestes automáticos
Testes automáticos
 
Confissões de um arquiteto de software
Confissões de um arquiteto de softwareConfissões de um arquiteto de software
Confissões de um arquiteto de software
 
Angular js desenvolvimento de frontend zen - python nordeste
Angular js   desenvolvimento de frontend zen - python nordesteAngular js   desenvolvimento de frontend zen - python nordeste
Angular js desenvolvimento de frontend zen - python nordeste
 
Virtualenv e Pip
Virtualenv e PipVirtualenv e Pip
Virtualenv e Pip
 
Python Brasil[9] - Entrega Contínua
Python Brasil[9] - Entrega Contínua Python Brasil[9] - Entrega Contínua
Python Brasil[9] - Entrega Contínua
 
Google App Engine, Python e Startups - Rupy 2012
Google App Engine, Python e Startups - Rupy 2012Google App Engine, Python e Startups - Rupy 2012
Google App Engine, Python e Startups - Rupy 2012
 
Pycon Brasil
Pycon BrasilPycon Brasil
Pycon Brasil
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE
 

Jugvale

  • 2. Discussão sobre frameworks web  Mostrar o GAE (nível Hello World)
  • 3. Execução de Url como input código no servidor Resultado de processamento (Html, XML, JSON...)
  • 4. Entrada Código no Url Servidor  Dada uma URL, qual código executar?  Mapeamento de URL
  • 5. Mapear url ao código com arquivo de configuração  Ex: /usuario/form -> mostrar formulário de usuario – Ver código  Iteração: /usuario/msg -> Mostrar msg Ola + Nome do Usuario – Mão na Massa!
  • 6. Interação exige dois passos: 1. Criar código a ser executado 2. Mapear URL  Arquivo de configuração cresce, dificuldade de manutenção também  Ambos afetam a produtividade
  • 7. Definição de Framework:  Broad overview, outline, or skeleton of interlinked items which supports a particular approach to a specific objective, and serves as a guide that can be modified as required by adding or deleting items. http://www.businessdictionary.com  Proposta de solução customizável para um problema  Qual problema um framework web quer resolver?  Resp: Propor arquitetura para melhorar produtividade e manutenção  Primeiro problema: mapeamento de URLs
  • 8. Entrada Url Código no Servidor Mapeamento de Execução de Entrada Url Url do Código Framework
  • 9. Capturam todas ou parte das requisições  Ponto de Entrada é o arquivo de cfg  Convention over Configuration  Ex: Vraptor e ZenWarch (Jaba)  https://bitbucket.org/renzon/zenwarch Mão na massa!
  • 10. Cuidado com alienação  Qual a caminho da execução do framework até o código de interesse?  Como é possível interferir nesse caminho? Ex: segurança de usuário logado  Quanto tempo demora para aprender o framework?
  • 11. Cloud do Google  Sem precisar instalar BD  Documentação centralizada, com versão em português  Foi utilizado nesse apresentação
  • 12. Deploy Fácil com possibilidade de colocar várias versões no ar  Que tal fazer um deploy de cada versão (Java e Python)?
  • 13. Discussão sobre frameworks web  Mostrar o GAE (nível Hello World)
  • 15. Obrigado pela Atenção Perguntas? Renzo Nuccitelli (renzo@nuccitec.com.br)