SlideShare uma empresa Scribd logo
Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br

Desenvolvimento de aplicações
web com AngularJS
Organização

Realização

Apoio












JavaScript e AngularJS
Clean Code com TDD e Refactoring
Academia Programador
Academia Java
Academia WEB
Academia Enterprise
Academia Arquiteto
Linux
Asterisk
OpenSIPS
Oficiais Furukawa

www.voffice.com.br
treinamento@voffice.com.br
“Transformar equipes de desenvolvimento de software”

http://www.agilecode.com.br
Rodrigo Branas
rodrigo.branas@agilecode.com.br
http://www.agilecode.com.br
•
•
•
•

Desenvolvendo Software na Gennera
Criando treinamentos na Agile Code
Escrevendo na Java Magazine e PacktPub
Palestrando sobre desenvolvimento de
software em eventos, universidades e
empresas
Formação Acadêmica

Ciências da Computação – UFSC
Gerenciamento de Projetos - FGV
Certificações

SCJA, SCJP, SCJD, SCWCD, SCBCD, PMP, MCP e CSM
Experiência

Há mais de 12 anos desenvolvendo software na
plataforma Java com as empresas: EDS, HP, NET,
Citibank, GM, Dígitro, Softplan, OnCast, Senai,
VALE, RBS, Unimed, Globalcode, V.Office, Suntech,
WPlex e Gennera.
•
•
•
•
•
•
•
•
•

Há mais de 5 anos liderando pessoas.
Mais de 2000 horas em sala de aula.
Mais de 100 apresentações em eventos.
6 artigos escritos para revistas.
1 livro.
Mais de 500 profissionais treinados.
Criação de 22 palestras.
Criação de 10 treinamentos.
Criação de mais de 3.000 slides.
Insatisfação com a falta de
produtividade!
O que leva uma tecnologia
a ser improdutiva?
Build muito lento
Tecnologia muito complexa
Aprendizado muito difícil
Mistura de conceitos

Onde devo programar cada parte da aplicação?
Como surgiu a web?
Tim Berners-Lee
Criador da Web
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Em 1990, nos laboratórios do CERN e utilizando
um computador NeXTcube, Berners-Lee construiu
o primeiro servidor, o primeiro navegador e as
primeiras páginas que descreviam seu próprio
projeto, chamado WorldWideWeb.
(CERN)
Em 1990, nos laboratórios do CERN e utilizando
um computador NeXTcube, Berners-Lee construiu
o primeiro servidor, o primeiro navegador e as
primeiras páginas que descreviam seu próprio
projeto, chamado WorldWideWeb.
(CERN)
Em 1990, nos laboratórios do CERN e utilizando
um computador NeXTcube, Berners-Lee construiu
o primeiro servidor, o primeiro navegador e as
primeiras páginas que descreviam seu próprio
projeto, chamado WorldWideWeb.
(CERN)
Em 1990, nos laboratórios do CERN e utilizando
um computador NeXTcube, Berners-Lee construiu
o primeiro servidor, o primeiro navegador e as
primeiras páginas que descreviam seu próprio
projeto, chamado WorldWideWeb.
(CERN)
Primeiro website da história!
No princípio era tudo estático
Como fazer para torná-la
mais dinâmica?
Vamos gerar o código HTML
no lado servidor
CGI
Common Gateway Interface
Bem vindos a Web 1.0
Geração de conteúdo HTML
no servidor e pouca interação
Como fazer para torná-la
mais interativa?
JavaScript

Entrando na era da alta interatividade
Bem vindos a Web 2.0
Quando pensamos em JavaScript,
qual é a primeira coisa que surge?
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
O Ministério da Saúde adverte:
O uso excessivo de JavaScript pode
levar o projeto ao caos!
Parece que vai ser necessário
começar a organizar o negócio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Finalmente, chegamos...
Criado por Misko Havery e
Adams Abrons em 2009
Atualmente, o AngularJS é
mantido pela equipe do Google
Totalmente escrito em JavaScript
Isso quer dizer que toda a aplicação
roda browser do cliente?
Vai funcionar em todos os browsers?
Como fica a performance?
E a segurança do código?
O AngularJS tem como objetivo
estender a linguagem HTML
• Água
• Coca-Cola
• Cerveja
1. <ul>
2.
<li>Água</li>
3.
<li>Coca-Cola</li>
4.
<li>Cerveja</li>
5. </ul>
1. <ul>
2.
<li></li>
3. </ul>
1. <ul>
2.
<li ng-repeat="item in items">
3.
</li>
4. </ul>
1. <ul>
2.
<li ng-repeat="item in items">
3.
{{item.description}}
4.
</li>
5. </ul>
Qual é a vantagem em estender
a linguagem HTML?
Tornar a programação mais declarativa,
escrevendo muito menos código
Arquitetura do framework
O que é arquitetura?

Qual é a diferença entre arquitetura e design?
Surgimento do padrão MVC
Model-View-Controller
Trygve Reenskaug

Criou o padrão em 1978 na Xerox (PARC)
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
MVC, MVP, MVVM e MVW
Separação de responsabilidades
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
View

É o que o cliente vê
Controller

Responsável pelo que a View consome
Scope

Faz a mediação entre a View e o Controller
Hello World!
1.
2.
3.
4.
5.
6.
7.
8.

<!doctype html>
<html>
<head>
<title>Hello World</title>
</head>
<body>
</body>
</html>
1.
2.
3.
4.
5.
6.
7.
8.

<!doctype html>
<html ng-app>
<head>
<title>Hello World</title>
</head>
<body>
</body>
</html>
1.
2.
3.
4.
5.
6.
7.
8.
9.

<!doctype html>
<html ng-app>
<head>
<title>Hello World</title>
<script src='angular.js'></script>
</head>
<body>
</body>
</html>
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.

<!doctype html>
<html ng-app>
<head>
<title>Hello World</title>
<script src='angular.js'></script>
<script>
function HelloWorldCtrl($scope) {
$scope.message = 'Hello World!';
}
</script>
</head>
<body>
</body>
</html>
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.

<!doctype html>
<html ng-app>
<head>
<title>Hello World</title>
<script src='angular.js'></script>
<script>
function HelloWorldCtrl($scope) {
$scope.message = 'Hello World!';
}
</script>
</head>
<body ng-controller="HelloWorldCtrl">
</body>
</html>
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.

<!doctype html>
<html ng-app>
<head>
<title>Hello World</title>
<script src='angular.js'></script>
<script>
function HelloWorldCtrl($scope) {
$scope.message = 'Hello World!';
}
</script>
</head>
<body ng-controller="HelloWorldCtrl">
{{message}}
</body>
</html>
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
AngularJS Hands-On

Por dentro das principais características do
framework!
Quais são os concorrentes do
AngularJS?
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
http://sporto.github.io/blog/2013/04/12/comparison-angular-backbone-can-ember
Quem está usando AngularJS?
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Perguntas?
Treinamento de
Desenvolvimento web com JavaScript e AngularJS
Aprenda a construir aplicações web interativas e fáceis de utilizar,
com uma arquitetura modular, robusta e flexível e uma
produtividade que vai superar as suas expectativas!

treinamento@voffice.com.br
Turmas
08/03 (sábados) em Indaial
24/03 (seg. e qua.) em Florianópolis
05/04 (sábados) em Florianópolis
15/04 (ter. e qui.) em Florianópolis

Vagas Encerradas
Vagas Encerradas
Inscrições Abertas
Inscrições Abertas
Treinamento de Clean Code
Desenvolva suas habilidades na arte da programação e aprenda a
construir aplicações de alta qualidade por meio de Técnicas de
Refactoring, Orientação a Objetos, Test-Driven Development e
Automação do Ambiente de Desenvolvimento!

treinamento@voffice.com.br
Turmas
16/04 (seg. e qua.) em Florianópolis

Inscrições Abertas
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC
Obrigado!
rodrigo.branas@gmail.com
http://www.agilecode.com.br

www.slideshare.net/rodrigobranas

Mais conteúdo relacionado

PPTX
Introdução ao AngularJS!
PDF
Material Design simples e rapido com AngularJS
PPTX
Introdução ao AngularJS
PDF
AngularJS - Just Digital
PPTX
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
PPTX
A evolução do AngularJS
PDF
ANGULARJS: UM FRAMEWORK PARA FACILITAR SUA VIDA
PPTX
Apresentação angular js
Introdução ao AngularJS!
Material Design simples e rapido com AngularJS
Introdução ao AngularJS
AngularJS - Just Digital
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
A evolução do AngularJS
ANGULARJS: UM FRAMEWORK PARA FACILITAR SUA VIDA
Apresentação angular js

Mais procurados (20)

PPTX
Introdução ao desenvolvimento de aplicações web
PDF
Angular js
PPTX
Selenium - WebDriver
PDF
O futuro dos WebApps com AngularJS 2.0
PPTX
Apresentação AngularJS - Angular UI
PDF
AngularJS Abraçando o MVC Client-Side
PDF
Curso AngularJS - Parte 1
PPTX
Test-Driven Development com JavaScript, Jasmine Karma
PPTX
Domain-Driven Design
PPTX
Criando aplicações Single-Page com AngularJS
PPTX
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoT
PPTX
Introdução ao desenvolvimento front end usando bootstrap e angular js
PDF
Performance com AngularJS
PDF
Java Web Fácil com VRaptor
PPTX
Criando Filtros com AngularJS
PPTX
HTTP, JSON, REST e AJAX com AngularJS
PPTX
Scope AngularJS
PDF
React - Biblioteca Javascript para criação de UI
PPTX
Desenvolviemento web com ASP.Net e MVC
PPTX
Introdução ao desenvolvimento de aplicações web
Angular js
Selenium - WebDriver
O futuro dos WebApps com AngularJS 2.0
Apresentação AngularJS - Angular UI
AngularJS Abraçando o MVC Client-Side
Curso AngularJS - Parte 1
Test-Driven Development com JavaScript, Jasmine Karma
Domain-Driven Design
Criando aplicações Single-Page com AngularJS
Desenvolvimento de Aplicações Web AngularJS no Contexto da IoT
Introdução ao desenvolvimento front end usando bootstrap e angular js
Performance com AngularJS
Java Web Fácil com VRaptor
Criando Filtros com AngularJS
HTTP, JSON, REST e AJAX com AngularJS
Scope AngularJS
React - Biblioteca Javascript para criação de UI
Desenvolviemento web com ASP.Net e MVC
Anúncio

Destaque (20)

PDF
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
PDF
Desenvolvimento Front end (AngularJS e Bootstrap)
PPTX
Utilizando diretivas com AngularJS
PPTX
Desvendando a linguagem JavaScript
PPTX
Construindo Diretivas com AngularJS
PPTX
Aplicando filtros com AngularJS
PPTX
Criando serviços com AngularJS
PDF
TDC 2014 - Arquitetura front-end com AngularJS
PDF
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
PPTX
Desenvolvendo APPs Com Angular.JS + Cordova
PDF
HTTP Interceptors com AngularJS
PPTX
JavaScript - Expressões Regulares
PPT
Minicurso de JavaScript (Portuguese)
PDF
Introdução a JavaScript
PPTX
Porque eu deveria utilizar Agile
PDF
E-trânsito cidadão - IPVA em suas mãos
PDF
Node.js - #4 - Timers - Rodrigo Branas
PDF
Node.js - #3 - Global Objects - Rodrigo Branas
PDF
Angular js
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Desenvolvimento Front end (AngularJS e Bootstrap)
Utilizando diretivas com AngularJS
Desvendando a linguagem JavaScript
Construindo Diretivas com AngularJS
Aplicando filtros com AngularJS
Criando serviços com AngularJS
TDC 2014 - Arquitetura front-end com AngularJS
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Desenvolvendo APPs Com Angular.JS + Cordova
HTTP Interceptors com AngularJS
JavaScript - Expressões Regulares
Minicurso de JavaScript (Portuguese)
Introdução a JavaScript
Porque eu deveria utilizar Agile
E-trânsito cidadão - IPVA em suas mãos
Node.js - #4 - Timers - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo Branas
Angular js
Anúncio

Semelhante a Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC (20)

PPTX
ASP.NET 5, MVC 6 e além
PPTX
ASP.NET vNext no .NET Architects Days 2014
PDF
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
PDF
Tcc leonildo wagner reestruturação de website utilizando padrões w3 c 26-04...
PDF
Apresentação CEJS - Do nada para a nuvem
PDF
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
PPTX
PPTX
Introdução sobre desenvolvimento web
PPTX
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
PPTX
ASP .NET MVC - Você esta pronto para a pílula vermelha?
ODP
Palestra SFD etec Netbeans e Java 3D
PPTX
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
PPTX
Desenvolvimento web - conceitos, tecnologia e tendências.
PPTX
Introdução ao desenvolvimento da web.pptx
PPTX
T@rget trust asp.net avançado
PDF
PDF
01 - Introdução a programação para internet v1.1
ODP
Apresentação Minas - Desenvolvendo Sites
PPT
ASP.Net MVC no VS 2010
PPT
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
ASP.NET 5, MVC 6 e além
ASP.NET vNext no .NET Architects Days 2014
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
Tcc leonildo wagner reestruturação de website utilizando padrões w3 c 26-04...
Apresentação CEJS - Do nada para a nuvem
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
Introdução sobre desenvolvimento web
ASP.NET Core + Docker Compose: deployment descomplicado com containers - .NET...
ASP .NET MVC - Você esta pronto para a pílula vermelha?
Palestra SFD etec Netbeans e Java 3D
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Desenvolvimento web - conceitos, tecnologia e tendências.
Introdução ao desenvolvimento da web.pptx
T@rget trust asp.net avançado
01 - Introdução a programação para internet v1.1
Apresentação Minas - Desenvolvendo Sites
ASP.Net MVC no VS 2010
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala

Mais de Rodrigo Branas (14)

PDF
Clean Architecture
PDF
Node.js - #6 - Core Modules - net - Rodrigo Branas
PDF
Node.js - #5 - Process - Rodrigo Branas
PDF
Node.js - #1 - Introdução - Rodrigo Branas
PDF
#6 - Git - Desfazendo as coisas
PDF
#1 - Git - Introdução
PDF
#5 - Git - Contribuindo com um repositório remoto
PDF
#4 - Git - Stash
PDF
#3 - Git - Branching e Merging
PDF
#2 - Git - DAG
PPTX
JavaScript - Date
PPTX
Automação de Testes com AngularJS
PPTX
Técnicas de Refactoring
PPTX
Clean Architecture
Node.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #5 - Process - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
#6 - Git - Desfazendo as coisas
#1 - Git - Introdução
#5 - Git - Contribuindo com um repositório remoto
#4 - Git - Stash
#3 - Git - Branching e Merging
#2 - Git - DAG
JavaScript - Date
Automação de Testes com AngularJS
Técnicas de Refactoring

Último (20)

PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PPTX
Émile Durkheim slide elaborado muito bom
PPTX
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
PPTX
Aula sobre banco de dados com firebase db
PPTX
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PPTX
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
PPTX
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Apple Pippin Uma breve introdução. - David Glotz
PPTX
Curso de Java 13 - (JavaEE (JSP e Servlets)).pptx
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Émile Durkheim slide elaborado muito bom
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
Aula sobre banco de dados com firebase db
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
Processos na gestão de transportes, TM100 Col18
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Custos e liquidação no SAP Transportation Management, TM130 Col18
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Apple Pippin Uma breve introdução. - David Glotz
Curso de Java 13 - (JavaEE (JSP e Servlets)).pptx
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx

Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio/ASSESC

Notas do Editor

  • #15: Telégrafo - 1836
  • #17: Telégrafo - 1836