SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
e sendo Ágil para Web
[redescobrindo o Desktop]
Plataformas Monolíticas
@cristofersousa
@cristofersousa
Definição
“Todo software que não está orientado
a serviços pode ser descrito como
monolítico embora seja baseado em
objeto e pode ser distribuído.”
by Wikipedia
O uso original do termo monolítico,
descreve enormes aplicações no
quadro principal sem modularidade
utilizável, portanto, resulta em
sistemas insustentáveis e passíveis de
crise no software advindo da má
implementação, anti-patterns e re-uso
impraticável.
Contexto
Olá código, “macarrônico”!
Only in the past I had ?
http://www.infoq.
com/br/news/2014/10/soundc
loud-microservices
Parece que não! ¯_(ツ)_/¯
O que esperamos?
Podemos ter uma aplicação
monolítica muito bem arquitetada e
com código excelente e sistemas
extremamente sustentáveis.
http://goo.gl/hGQ6vS
"O homem pinta com o cérebro
e não com as mãos."
- Michelangelo
Hello, Clipper!
Em engenharia de software, uma
aplicação monolítica descreve uma
única aplicação de software em camadas
no qual a interface de usuário e código de
acesso aos dados são combinados em um
único programa a partir de uma única
plataforma.
This is famous, legacy!
how to change
for the better?
Swing é um widget toolkit para uso
com o Java. Ele é compatível com o
Abstract Window Toolkit (AWT).
System.out.println(“Hi, I’m Java Swing!”);
Development for Desktop
it takes more productivity
Mobile
Wtf man?! Where is Java here?
Google Web Toolkit é um toolkit de
código-fonte aberto permitindo a
desenvolvedores, criar aplicativos com
tecnologia Ajax em linguagem de
programação Java [1]
. GWT suporta
cliente-servidor, desenvolvimento e
debugging em qualquer IDE Java.
Exceto por algumas bibliotecas nativas,
tudo é fonte Java que pode ser
construído em qualquer plataforma com
o GWT incluído Ant.
Programming in Java to convert to JavaScript
Development for “Mobile”
Um dos frameworks mais famosos na
mercado é o Spring MVC. Spring é um
framework que inicialmente não foi
criado para o desenvolvimento web. Na
essência o Spring é um container leve que
visa fornecer serviços para sua aplicação
como por exemplo o gerenciamento de
objetos ou transação.
Grails is a powerful web framework, for the Java platform aimed
at multiplying developers’ productivity thanks to a Convention-over-
Configuration, sensible defaults and opinionated APIs. It integrates
smoothly with the JVM, allowing you to be immediately productive
whilst providing powerful features, including integrated ORM,
Domain-Specific Languages, runtime and compile-time meta-
programming and Asynchronous programming.
careers
vagas@shx.com.br
O PODER DA INFORMAÇÃO
cristofer.sousa@gmail.com | cristofer.sousa.com.br

Weitere ähnliche Inhalte

Was ist angesagt?

Os 12 fatores: uma metodologia para criação de projetos SaaS
Os 12 fatores: uma metodologia para criação de projetos SaaSOs 12 fatores: uma metodologia para criação de projetos SaaS
Os 12 fatores: uma metodologia para criação de projetos SaaSElton Minetto
 
Um framework java script para chamar de seu
Um framework java script para chamar de seuUm framework java script para chamar de seu
Um framework java script para chamar de seuRonaldo Prass
 
Hands-on Cordova / Phonegap - GDG JF
Hands-on Cordova / Phonegap - GDG JFHands-on Cordova / Phonegap - GDG JF
Hands-on Cordova / Phonegap - GDG JFGiordano Bruno Vieira
 
Como trabalhar com angular js
Como trabalhar com angular jsComo trabalhar com angular js
Como trabalhar com angular jsMatheus Lima
 
Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...
Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...
Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...Renato Groff
 
jQuery: Write less, do more
jQuery: Write less, do morejQuery: Write less, do more
jQuery: Write less, do morehfsantos
 
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019Renato Groff
 
Adotando o Wordpress
Adotando o WordpressAdotando o Wordpress
Adotando o WordpressFilipe Boldo
 
Blazor, web assembly e o futuro do browser
Blazor, web assembly e o futuro do browserBlazor, web assembly e o futuro do browser
Blazor, web assembly e o futuro do browserGustavo Bellini Bigardi
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Fabrício Lopes Sanchez
 
Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro ServiçosFernando Ike
 
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGapAplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGapThiago Colares
 
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia GomesRuby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia GomesPotiLivre Sobrenome
 
ASP.NET SignalR + SPA com AngularJS
ASP.NET SignalR + SPA com AngularJSASP.NET SignalR + SPA com AngularJS
ASP.NET SignalR + SPA com AngularJSWaldyr Felix
 

Was ist angesagt? (20)

Os 12 fatores: uma metodologia para criação de projetos SaaS
Os 12 fatores: uma metodologia para criação de projetos SaaSOs 12 fatores: uma metodologia para criação de projetos SaaS
Os 12 fatores: uma metodologia para criação de projetos SaaS
 
Workshop frontend
Workshop   frontendWorkshop   frontend
Workshop frontend
 
Um framework java script para chamar de seu
Um framework java script para chamar de seuUm framework java script para chamar de seu
Um framework java script para chamar de seu
 
Hands-on Cordova / Phonegap - GDG JF
Hands-on Cordova / Phonegap - GDG JFHands-on Cordova / Phonegap - GDG JF
Hands-on Cordova / Phonegap - GDG JF
 
Como trabalhar com angular js
Como trabalhar com angular jsComo trabalhar com angular js
Como trabalhar com angular js
 
Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...
Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...
Automatizando o teste de aplicações Web com Selenium WebDriver e Azure DevOps...
 
jQuery: Write less, do more
jQuery: Write less, do morejQuery: Write less, do more
jQuery: Write less, do more
 
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
 
Adotando o Wordpress
Adotando o WordpressAdotando o Wordpress
Adotando o Wordpress
 
Phonegap
PhonegapPhonegap
Phonegap
 
Blazor, web assembly e o futuro do browser
Blazor, web assembly e o futuro do browserBlazor, web assembly e o futuro do browser
Blazor, web assembly e o futuro do browser
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
 
Workshop - Ionic + firebase
Workshop - Ionic + firebaseWorkshop - Ionic + firebase
Workshop - Ionic + firebase
 
jQuery: Write less, do more
jQuery: Write less, do morejQuery: Write less, do more
jQuery: Write less, do more
 
Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro Serviços
 
Integração e APIs com Mulesoft
Integração e APIs com MulesoftIntegração e APIs com Mulesoft
Integração e APIs com Mulesoft
 
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGapAplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
 
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia GomesRuby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
 
Azure
AzureAzure
Azure
 
ASP.NET SignalR + SPA com AngularJS
ASP.NET SignalR + SPA com AngularJSASP.NET SignalR + SPA com AngularJS
ASP.NET SignalR + SPA com AngularJS
 

Ähnlich wie Plataformas Monolíticas, redescobrindo o Desktop e sendo Ágil para Web.

Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de MicroservicosNorberto Enomoto
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
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
 
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesConstruindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesWilliam S. Rodriguez
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKRyan Padilha
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...iMasters
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixNatanael Fonseca
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetosPaulo Carvalho
 
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...William S. Rodriguez
 
Transformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoTransformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoDarlan Segalin
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHPFlávio Lisboa
 
Marketing digital tecnologia da informação
Marketing digital   tecnologia da informaçãoMarketing digital   tecnologia da informação
Marketing digital tecnologia da informaçãoAna Paula Coelho Barbosa
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos JavaMarcio Marinho
 
Asoso tipos de aplicações móveis (1)
Asoso   tipos de aplicações móveis (1)Asoso   tipos de aplicações móveis (1)
Asoso tipos de aplicações móveis (1)grupouro
 
Asoso tipos de aplicações móveis (1)
Asoso   tipos de aplicações móveis (1)Asoso   tipos de aplicações móveis (1)
Asoso tipos de aplicações móveis (1)grupouro
 
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
 
Microservices - Quebrando gigantes em pequenos
Microservices - Quebrando gigantes em pequenosMicroservices - Quebrando gigantes em pequenos
Microservices - Quebrando gigantes em pequenosVinícius Krolow
 

Ähnlich wie Plataformas Monolíticas, redescobrindo o Desktop e sendo Ágil para Web. (20)

Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de Microservicos
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
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
 
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesConstruindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDK
 
Cursos
CursosCursos
Cursos
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
 
Fundamentos em Containers
Fundamentos em ContainersFundamentos em Containers
Fundamentos em Containers
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud Netflix
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetos
 
Ria
RiaRia
Ria
 
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
 
Transformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoTransformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualização
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHP
 
Marketing digital tecnologia da informação
Marketing digital   tecnologia da informaçãoMarketing digital   tecnologia da informação
Marketing digital tecnologia da informação
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos Java
 
Asoso tipos de aplicações móveis (1)
Asoso   tipos de aplicações móveis (1)Asoso   tipos de aplicações móveis (1)
Asoso tipos de aplicações móveis (1)
 
Asoso tipos de aplicações móveis (1)
Asoso   tipos de aplicações móveis (1)Asoso   tipos de aplicações móveis (1)
Asoso tipos de aplicações móveis (1)
 
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...
 
Microservices - Quebrando gigantes em pequenos
Microservices - Quebrando gigantes em pequenosMicroservices - Quebrando gigantes em pequenos
Microservices - Quebrando gigantes em pequenos
 

Plataformas Monolíticas, redescobrindo o Desktop e sendo Ágil para Web.

  • 1. e sendo Ágil para Web [redescobrindo o Desktop] Plataformas Monolíticas @cristofersousa
  • 3. Definição “Todo software que não está orientado a serviços pode ser descrito como monolítico embora seja baseado em objeto e pode ser distribuído.” by Wikipedia
  • 4. O uso original do termo monolítico, descreve enormes aplicações no quadro principal sem modularidade utilizável, portanto, resulta em sistemas insustentáveis e passíveis de crise no software advindo da má implementação, anti-patterns e re-uso impraticável. Contexto
  • 6. Only in the past I had ?
  • 9. Podemos ter uma aplicação monolítica muito bem arquitetada e com código excelente e sistemas extremamente sustentáveis. http://goo.gl/hGQ6vS
  • 10. "O homem pinta com o cérebro e não com as mãos." - Michelangelo
  • 11. Hello, Clipper! Em engenharia de software, uma aplicação monolítica descreve uma única aplicação de software em camadas no qual a interface de usuário e código de acesso aos dados são combinados em um único programa a partir de uma única plataforma.
  • 12. This is famous, legacy!
  • 13.
  • 14.
  • 15. how to change for the better?
  • 16.
  • 17. Swing é um widget toolkit para uso com o Java. Ele é compatível com o Abstract Window Toolkit (AWT). System.out.println(“Hi, I’m Java Swing!”); Development for Desktop
  • 18.
  • 19. it takes more productivity
  • 20. Mobile Wtf man?! Where is Java here?
  • 21. Google Web Toolkit é um toolkit de código-fonte aberto permitindo a desenvolvedores, criar aplicativos com tecnologia Ajax em linguagem de programação Java [1] . GWT suporta cliente-servidor, desenvolvimento e debugging em qualquer IDE Java. Exceto por algumas bibliotecas nativas, tudo é fonte Java que pode ser construído em qualquer plataforma com o GWT incluído Ant. Programming in Java to convert to JavaScript Development for “Mobile”
  • 22.
  • 23.
  • 24. Um dos frameworks mais famosos na mercado é o Spring MVC. Spring é um framework que inicialmente não foi criado para o desenvolvimento web. Na essência o Spring é um container leve que visa fornecer serviços para sua aplicação como por exemplo o gerenciamento de objetos ou transação.
  • 25.
  • 26. Grails is a powerful web framework, for the Java platform aimed at multiplying developers’ productivity thanks to a Convention-over- Configuration, sensible defaults and opinionated APIs. It integrates smoothly with the JVM, allowing you to be immediately productive whilst providing powerful features, including integrated ORM, Domain-Specific Languages, runtime and compile-time meta- programming and Asynchronous programming.
  • 27.
  • 29.