SlideShare uma empresa Scribd logo
1 de 76
Baixar para ler offline
INTRODUÇÃO
AO JAVASCRIPT
Eduardo Mendes de Oliveira
edumendes@gmail.com
Eduardo Mendes (edumendes@gmail.com)
Sistemas de
2
50's
Software
Os primeiros sistemas começaram
a aparecer no final da década de 40
e mais fortemente no anos 50
Eduardo Mendes (edumendes@gmail.com)3
Apesar de já estarem presentes
há várias décadas, pode-se dizer que
só recentemente começaram a ser
usados por milhões de pessoas
no mundo todo
50's
Software
Sistemas de
Eduardo Mendes (edumendes@gmail.com)4
Profissional

Treinado Hoje
Há alguns anos uma aplicação de
software só era usada por
profissionais treinados
Hoje a maioria das pessoas
interagem diretamente com
uma ou mais aplicaçõess
Eduardo Mendes (edumendes@gmail.com)
“ Este enorme e rápido crescimento
no número de usuários de computadores
não poderia ter acontecido
sem o grande avanço na facilidade de uso

e nas técnicas
de interface que se seguiram”
5
(SMEETS, BONESS e BANKRAS, 2009)
Eduardo Mendes (edumendes@gmail.com)
O que é riqueza?
“A riqueza de um cliente é
determinada pelo

modelo de interação

que o cliente oferece ao usuário"
6
Experiência do usuário
Eduardo Mendes (edumendes@gmail.com)
O que é riqueza?
Um modelo rico de interação oferece
suporte para uma variedade

de métodos de entrada,

que responde intuitivamente

e dentro de um prazo razoável
7
Eduardo Mendes (edumendes@gmail.com)
O que é riqueza?
Interação será tanto melhor 

quanto mais próxima estiver

de uma geração atualizada

de aplicativos desktop
8
Eduardo Mendes (edumendes@gmail.com)
9
Aplicações Mainframe
Aplicações Web RicasAplicações Cliente/Servidor
Aplicações Web
Experiência
do Usuário
Eficiência do Custo
Internet
Cientistas do CERN lançaram
uma proposta para a World Wide Web (HTML)


Facilitou o compartilhamento de documentos de pesquisa
Hipertexto + Internet
1989
Eduardo Mendes (edumendes@gmail.com)
A Internet e a Web
foram se espalhando e
se tornando populares
11
Originalmente foi criada para que as pessoas
pudessem compartilhar informações, publicando documentos,
e fazer referências cruzadas a eles através de hiperlinks
90's
Entretanto a qualidade das aplicações eram baixas
Eduardo Mendes (edumendes@gmail.com)
Eduardo Mendes (edumendes@gmail.com)13
Eduardo Mendes (edumendes@gmail.com)
acessar na web
documentos

gerados dinamicamente
14
conteúdo
dinâmicoSurge a Aplicação Web
Eduardo Mendes (edumendes@gmail.com)
15
Aplicações Mainframe
Aplicações Web RicasAplicações Cliente/Servidor
Aplicações Web
Experiência
do Usuário
Eficiência do Custo
Aplicações Web Síncronas
O modelo síncrono do HTTP inviabilizava uma ideia de cliente rico
GARRET, 2005
Jesse James Garrett
2005 Ajax: A New Approach to Web Applications
http://www.adaptivepath.com/ideas/ajax-new-approach-web-applications/
JavaScript
O modelo síncrono
GARRET, 2005
Eduardo Mendes (edumendes@gmail.com)
Eduardo Mendes (edumendes@gmail.com)21
Eduardo Mendes (edumendes@gmail.com)
2. Questões sobre interface web
22
Eduardo Mendes (edumendes@gmail.com)
2. Questões sobre
interface web
2.1 Modularização e Separação de
interesses
2.2 A web é uma só
2.3 Progressive Enhacement
2.4 Web Design Responsivo
23
Eduardo Mendes (edumendes@gmail.com)
2.1 Modularização
e Separação de Interesses
24
Eduardo Mendes (edumendes@gmail.com)
Modularização
"Melhor maneira de criar

sistemas gerenciáveis”
PARNAS (1972)
25
Eduardo Mendes (edumendes@gmail.com)
Separation Of
Concerns (SoC)
Para tratar a complexidade é
melhor se concentrar em um
assunto de cada vez, para melhorar
a compreensão sobre o sistema e
melhorar sua capacidade de
evolução
(DIJKSTRA, 1974)
26
Eduardo Mendes (edumendes@gmail.com)
03 27
interesses
Descrição
do Conteúdo
Apresentação

do Conteúdo
Controle do

comportamento
deste Conteúdo
Eduardo Mendes (edumendes@gmail.com)28
Descrição
do ConteúdoApresentação

do Conteúdo
Controle do

comportamento
deste Conteúdo
Eduardo Mendes (edumendes@gmail.com)29
O que é JavaScript?
LiveScript
Netscape Navigator 2.0
Linguagem baseada na linguagem JAVA
Eduardo Mendes (edumendes@gmail.com)30
O que é JavaScript?
Não faz parte das plataformas Java
Destinada para o uso em páginas Web (client-side) ou em servidores web (server-side)
Front-end
JavaScript é uma linguagem interpretada.
Eduardo Mendes (edumendes@gmail.com)31
O que posso fazer com JavaScript?
Acesso à elementos de uma página web
Imagens
Elementos de um formulário
Links etc
Manipulados ou mudados via programação
Eduardo Mendes (edumendes@gmail.com)32
O que posso fazer com JavaScript?
Capturar eventos
Click do mouse
Tecla pressionada
Outros
Operações baseadas nas ações do usuário.
Eduardo Mendes (edumendes@gmail.com)33
Como usar JavaScript?
3 maneiras:
Dentro de blocos HTML
<script> ... </script>
Arquivo externo importado pela página
<script language=“javascript” src=“funcoes.js"></script>
Dentro dos elementos HTML sensíveis a eventos
<input type="text" name="nome" value="" onblur="caixaAlta(this)“ />
Eduardo Mendes (edumendes@gmail.com)34
Blocos script
<script language=“javascript”>
... instruções JavaScript ...
</script>
Podem aparecer diversas vezes no código
De preferência dentro das tags <head>
Eduardo Mendes (edumendes@gmail.com)35
Blocos Script
<html>
<head>
<script language=“javascript">
function caixaAlta(obj) {
obj.value = obj.value.toUpperCase();
}
</script>
</head>
<body>
<form name="main" action="#">
Nome:
<input type="text" name="nome" value="“ onblur="caixaAlta(this)“ />
<br /><br />
<input type="reset" name="reset" value="Limpar“ /><br />
</form>
</body>
</html>
Eduardo Mendes (edumendes@gmail.com)36
Arquivo Js para ser importado
funcoes.js
function soma(a, b) {
return a + b;
}
function multiplicacao(a, b) {
return a * b;
}
Eduardo Mendes (edumendes@gmail.com)37
Importando um arquivo
Código de importação deve vir no <head>
Atributo SRC no descritor <script>
<html>
<head>
<script language=“javascript” src=“funcoes.js"></script>
</head>
<body>
....
<script>
resultado = soma(10, 30);
document.write("<p>A soma de 5 e 6 é " + resultado + “</p>”);
</script>
Eduardo Mendes (edumendes@gmail.com)38
Em Elementos HTML
Atributos para captura de eventos disparados
Arrasto de um mouse
Clique de um botão
Quando ocorre um evento
Um procedimento de tratamento do evento é chamado
Eduardo Mendes (edumendes@gmail.com)39
Em Elementos HTML
Atributos de eventos
Sempre começam com o prefixo “ON”
onblur, onerror, onfocus, onchange, onclick, onkeydown, onkeypress, onkeyup...
Valores recebidos por esses atributos
Código JavaScript
Eduardo Mendes (edumendes@gmail.com)40
Em Elementos HTML
<form>
<input type="button“
value=“Aperte aqui“
onclick="alert(‘Botão Pressionado')“>
</form>
<a href="javascript:alert(‘Link acionado!’)"> link </a>
Eduardo Mendes (edumendes@gmail.com)
Funções
41
Eduardo Mendes (edumendes@gmail.com)
Funções
42
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
Está na memória assim que
o programa carrega
Eduardo Mendes (edumendes@gmail.com)
Funções
43
construindo funções em tempo de execução
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
Está na memória assim que
o programa carrega
var soma =
Eduardo Mendes (edumendes@gmail.com)
Funções
44
construindo funções em tempo de execução
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
Está na memória assim que
o programa carrega
var soma = function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
A função foi atribuída
à variável soma
Eduardo Mendes (edumendes@gmail.com)
Funções
45
construindo funções em tempo de execução
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
Está na memória assim que
o programa carrega
var soma = function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
É preciso de um ponto e
vírgula no final da sentença
Eduardo Mendes (edumendes@gmail.com)
Funções
46
construindo funções em tempo de execução
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
Está na memória assim que
o programa carrega
var soma = function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
Agora a função carrega
apenas quando este código
for alcançado
Eduardo Mendes (edumendes@gmail.com)
Funções
47
construindo funções em tempo de execução
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
Está na memória assim que
o programa carrega
var soma = function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
Agora a função carrega
apenas quando este código
for alcançado
soma(3,4);
25
Eduardo Mendes (edumendes@gmail.com)
Funções
48
construindo funções em tempo de execução
function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
}
A variável precisou de parênteses e ponto e vírgula
var soma = function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
O nome da função é opcional,
já que estamos usando uma
variável que já possui um
nome
soma(3,4);
25
Eduardo Mendes (edumendes@gmail.com)
Funções Anônimas
49
não precisam ser nomeadas já que possuem uma variável
var soma = function somaDosQuadrados(x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
Funções Anônimas
Eduardo Mendes (edumendes@gmail.com)
Funções Anônimas
50
não precisam ser nomeadas já que possuem uma variável
var soma = function (x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
Funções Anônimas
Eduardo Mendes (edumendes@gmail.com)
Funções Anônimas
51
não precisam ser nomeadas já que possuem uma variável
var soma = function (x, y){
return Math.pow(x,2) + Math.pow(y,2);
};
Funções Anônimas
Sem nome
soma(3,4);
25
Ainda precisa de parênteses e ponto e vírgula
Eduardo Mendes (edumendes@gmail.com)
Curiosidade
52
var soma = function (x, y){
return x + y;
}
console.log(soma);
Eduardo Mendes (edumendes@gmail.com)
Curiosidade
53
var soma = function (x, y){
return x + y;
}
console.log(soma);
Eduardo Mendes (edumendes@gmail.com)
1.1 Funções como
parâmetros
54
Eduardo Mendes (edumendes@gmail.com)
Funções como parâmetros
55
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
uma variável que armazena uma função pode ser passada para outras funções
Eduardo Mendes (edumendes@gmail.com)
Funções como parâmetros
56
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
A variável mensagemFinal
é passada como parâmetro
para uma função existente
uma variável que armazena uma função pode ser passada para outras funções
Eduardo Mendes (edumendes@gmail.com)
Funções como parâmetros
57
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
A variável mensagemFinal
é passada como parâmetro
para uma função existente
uma variável que armazena uma função pode ser passada para outras funções
function encerrarJogo(mensagem) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
Funções como parâmetros
58
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
uma variável que armazena uma função pode ser passada para outras funções
function encerrarJogo(mensagem) {
...
mensagem();
...
}
function encerrarJogo(mensagem) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
Funções como parâmetros
59
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
uma variável que armazena uma função pode ser passada para outras funções
function encerrarJogo(mensagem) {
...
mensagem();
...
}
function encerrarJogo( ) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
function encerrarJogo(mensagemFinal) {
...
mensagem();
...
}
Funções como parâmetros
60
uma variável que armazena uma função pode ser passada para outras funções
function encerrarJogo(mensagem) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
function encerrarJogo(mensagemFinal) {
...
mensagemFinal();
...
}
Funções como parâmetros
61
uma variável que armazena uma função pode ser passada para outras funções
function encerrarJogo(mensagem) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
function encerrarJogo(mensagemFinal) {
...
mensagemFinal();
...
}
Funções como parâmetros
62
uma variável que armazena uma função pode ser passada para outras funções
function encerrarJogo(mensagem) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
var mensagemFinal = function() {
alert("Fim de Jogo! Obrigado por participar!");
}
...
encerrarJogo(mensagemFinal);
function encerrarJogo(mensagemFinal) {
...
mensagemFinal();
...
}
E se houvesse várias mensagens?
63
É possível ter flexibilidade com essa estrutura e escolher uma mensagem específica
function encerrarJogo(mensagem) {
...
mensagem();
...
}
Eduardo Mendes (edumendes@gmail.com)
function encerrarJogo(mensagem) {
mensagem();
}
var mensagemFinal;
if (vencedor) {
mensagemFinal = function() {
alert("Você venceu! Batata frita!");
};
} else {
mensagemFinal = function() {
alert("Que pena! Tente mais uma vez!");
};
}
encerrarJogo(mensagemFinal);
E se houvesse várias mensagens?
64
É possível ter flexibilidade com essa estrutura e escolher uma mensagem específica
var vencedor = false;
Eduardo Mendes (edumendes@gmail.com)
function encerrarJogo(mensagem) {
mensagem();
}
var mensagemFinal;
if (vencedor) {
mensagemFinal = function() {
alert("Você venceu! Batata frita!");
};
} else {
mensagemFinal = function() {
alert("Que pena! Tente mais uma vez!");
};
}
encerrarJogo(mensagemFinal);
E se houvesse várias mensagens?
65
É possível ter flexibilidade com essa estrutura e escolher uma mensagem específica
var vencedor = true;
Eduardo Mendes (edumendes@gmail.com)
Utilizando funções arrays e map
66
var numeros = [2, 4, 5, 6, 7, 8, 9];
uma variável que armazena uma função pode ser passada para outras funções
var resultados = numeros.map( );- outra função -
o método map recebe uma
função e retorna um array
processado pela função
2 4 5 6 7 8 9
outro valor outro valor outro valor outro valor outro valor outro valor outro valor
- outra função -
Eduardo Mendes (edumendes@gmail.com)
Utilizando funções arrays e map
67
var numeros = [2, 4, 5, 6, 7, 8, 9];
Map funciona com um laço que executa sobre cada índice do array
var resultados = numbers.map( );- outra função -
var resultados = [];
for (var i = 0; i < numeros.length; i++) {
resultados[i] = algumaFuncao(numeros[i]);
}
o método map encapsula este
processamento e o resume
em uma linha de código
Eduardo Mendes (edumendes@gmail.com)
Utilizando funções arrays e map
68
var numeros = [2, 4, 5, 6, 7, 8, 9];
Map funciona com um laço que executa sobre cada índice do array
var resultados = numeros.map(function(celula) {
return celula * 2;
}
);
2 4 5 6 7 8 9
4 8 10 12 14 16 18
- função -
Eduardo Mendes (edumendes@gmail.com)
JavaScript: Objetos
69
Eduardo Mendes (edumendes@gmail.com)
Objetos em
JavaScript
Uma entidade independente com
propriedades e tipo
como em outras linguagens as
propriedades são acessadas pela
notação do ponto
70
variavel
Objeto
idade=10
variavelDoObjeto.nomeDaPropriedade o.idade
Eduardo Mendes (edumendes@gmail.com)
Criando objetos
71
var carro = new Object();
carro.fabricante = "KIA";
carro.modelo = "Picanto";
carro.ano = 2012;
carro["fabricante"] = "Volks";
carro["modelo"] = "Gol";
carro["ano"] = 2013;
pode ser utilizado como
um array associativo
Eduardo Mendes (edumendes@gmail.com)
Objetos

Literais
72
var moto = {cor: "vermelha", rodas: 4, cilindros: 4};
Eduardo Mendes (edumendes@gmail.com)
Função

Construtora
73
function Carro(fabricante, modelo, ano) {
this.fabricante = fabricante;
this.modelo = modelo;
this.ano = ano;
}
var outroCarro =
new Carro("Hyundai", "Tucson", 2009);
var aqueleCarro =
new Carro("Ford", "Fiesta", 2014);
Eduardo Mendes (edumendes@gmail.com)
Métodos
74
var moto = {cor: "vermelha", rodas: 4, cilindros: 4};
Como foi visto
os objetos são formados por
propriedades
Eduardo Mendes (edumendes@gmail.com)
Métodos
75
variavelDoObjeto.nomeDoMetodo =
nome_funcao;
São funções associadas a um objeto…
ou é uma propriedade de um objeto

que é uma função
um método é uma função atribuída

a uma propriedade do objeto
var meuObjeto = {
meuMetodo: function(params) {
// algum comportamento
}
};
Eduardo Mendes (edumendes@gmail.com)76
Métodos
function Moto(cor, rodas, cilindros) {
this.cor = cor;
this.rodas = rodas;
this.cilindros = cilindros;
}
function exibirDados() {
var resultado =
"Dados da moto: cor - " + this.cor
+ ", rodas: " + this.rodas
+ ", cilindros: " + this.cilindros;
alert(resultado);
}
this.exibirDados = exibirDados;

Mais conteúdo relacionado

Mais procurados

Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptRodrigo Branas
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introduçãoelliando dias
 
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
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01 Léo Dias
 
Aula 02 - Escolha caso
Aula 02 - Escolha casoAula 02 - Escolha caso
Aula 02 - Escolha casoEder Samaniego
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScriptBruno Catão
 
Boas práticas técnica para um código limpo (Clean Code)
Boas práticas técnica para um código limpo (Clean Code)Boas práticas técnica para um código limpo (Clean Code)
Boas práticas técnica para um código limpo (Clean Code)Rodrigo Kono
 
01 Introdução à programação web
01 Introdução à programação web01 Introdução à programação web
01 Introdução à programação webCentro Paula Souza
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaDaniel Brandão
 

Mais procurados (20)

Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScript
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introdução
 
Javascript aula 01 - visão geral
Javascript   aula 01 - visão geralJavascript   aula 01 - visão geral
Javascript aula 01 - visão geral
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Introdução CSS
Introdução CSSIntrodução CSS
Introdução CSS
 
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
 
JAVA - Herança
JAVA - HerançaJAVA - Herança
JAVA - Herança
 
Interfaces e polimorfismo
Interfaces e polimorfismoInterfaces e polimorfismo
Interfaces e polimorfismo
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Java script aula 07 - eventos
Java script   aula 07 - eventosJava script   aula 07 - eventos
Java script aula 07 - eventos
 
Aula 02 - Escolha caso
Aula 02 - Escolha casoAula 02 - Escolha caso
Aula 02 - Escolha caso
 
Curso de Node JS Básico
Curso de Node JS BásicoCurso de Node JS Básico
Curso de Node JS Básico
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScript
 
POO - 17 - Interfaces
POO - 17 - InterfacesPOO - 17 - Interfaces
POO - 17 - Interfaces
 
Boas práticas técnica para um código limpo (Clean Code)
Boas práticas técnica para um código limpo (Clean Code)Boas práticas técnica para um código limpo (Clean Code)
Boas práticas técnica para um código limpo (Clean Code)
 
Programacao para Web I Plano de Ensinodoc
Programacao para Web I Plano de EnsinodocProgramacao para Web I Plano de Ensinodoc
Programacao para Web I Plano de Ensinodoc
 
01 Introdução à programação web
01 Introdução à programação web01 Introdução à programação web
01 Introdução à programação web
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem Java
 

Destaque (20)

GWT revista espirito
GWT revista espiritoGWT revista espirito
GWT revista espirito
 
Adote OpenJDK
Adote OpenJDKAdote OpenJDK
Adote OpenJDK
 
Abstração do banco de dados com PHP Doctrine
Abstração do banco de dados com PHP DoctrineAbstração do banco de dados com PHP Doctrine
Abstração do banco de dados com PHP Doctrine
 
Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo Java
 
Fundamentos de Java
Fundamentos de Java Fundamentos de Java
Fundamentos de Java
 
Web Semântica e bancos de dados NoSQL
Web Semântica e bancos de dados NoSQLWeb Semântica e bancos de dados NoSQL
Web Semântica e bancos de dados NoSQL
 
Fundamentos de java herbert schildt
Fundamentos de java   herbert schildtFundamentos de java   herbert schildt
Fundamentos de java herbert schildt
 
Java - Aprenda rápido
Java - Aprenda rápidoJava - Aprenda rápido
Java - Aprenda rápido
 
Java para Leigos
Java para LeigosJava para Leigos
Java para Leigos
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
 
Persistência com JPA usando o NetBeans 7
Persistência com JPA usando o NetBeans 7Persistência com JPA usando o NetBeans 7
Persistência com JPA usando o NetBeans 7
 
Jquery
JqueryJquery
Jquery
 
Academia java intensivo
Academia java intensivoAcademia java intensivo
Academia java intensivo
 
Java Web 4 - Servlets e JSP 2
Java Web 4 - Servlets e JSP 2Java Web 4 - Servlets e JSP 2
Java Web 4 - Servlets e JSP 2
 
The Power of Collaboration to Build Your Own Startup
The Power of Collaboration to Build Your Own StartupThe Power of Collaboration to Build Your Own Startup
The Power of Collaboration to Build Your Own Startup
 
TDD - Prática com RSpec
TDD - Prática com RSpecTDD - Prática com RSpec
TDD - Prática com RSpec
 
RSpec com doubles
RSpec com doublesRSpec com doubles
RSpec com doubles
 
Desenvolvimento web com PHP parte 3
Desenvolvimento web com PHP parte 3Desenvolvimento web com PHP parte 3
Desenvolvimento web com PHP parte 3
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
Evolucao de software - parte 2
Evolucao de software - parte 2Evolucao de software - parte 2
Evolucao de software - parte 2
 

Semelhante a Introdução ao JavaScript

Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010Alexandre Tarifa
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 
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
 
Evolução das arquiteturas para aplicações Web
Evolução das arquiteturas para aplicações WebEvolução das arquiteturas para aplicações Web
Evolução das arquiteturas para aplicações WebBreno Vitorino
 
Arquitetura para otimização de legado
Arquitetura para otimização de legadoArquitetura para otimização de legado
Arquitetura para otimização de legadoClóvis Wichoski
 
SOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saberSOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saberRui Alexandre
 
Aula01 arquitetura clienteservidor
Aula01 arquitetura clienteservidorAula01 arquitetura clienteservidor
Aula01 arquitetura clienteservidorMarlon CP
 
SOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saberSOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saberRui Alexandre
 
Introdução aos aplicativos tipo canvas
Introdução aos aplicativos tipo canvasIntrodução aos aplicativos tipo canvas
Introdução aos aplicativos tipo canvasGuilherme
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverEduardo Jorge
 

Semelhante a Introdução ao JavaScript (20)

ExtJS-4
ExtJS-4ExtJS-4
ExtJS-4
 
AngularJS - Rotas
AngularJS - RotasAngularJS - Rotas
AngularJS - Rotas
 
Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 
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
 
Comecando tensorflow
Comecando tensorflowComecando tensorflow
Comecando tensorflow
 
Evolução das arquiteturas para aplicações Web
Evolução das arquiteturas para aplicações WebEvolução das arquiteturas para aplicações Web
Evolução das arquiteturas para aplicações Web
 
Aplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com DjangoAplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com Django
 
Introdução Play framework
Introdução Play frameworkIntrodução Play framework
Introdução Play framework
 
Google apps script - Parte - 1
Google apps script - Parte - 1Google apps script - Parte - 1
Google apps script - Parte - 1
 
Arquitetura para otimização de legado
Arquitetura para otimização de legadoArquitetura para otimização de legado
Arquitetura para otimização de legado
 
SOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saberSOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2021-2022: Tudo o que precisa de saber
 
Aula01 arquitetura clienteservidor
Aula01 arquitetura clienteservidorAula01 arquitetura clienteservidor
Aula01 arquitetura clienteservidor
 
Arquitetura de sistemas web
Arquitetura de sistemas webArquitetura de sistemas web
Arquitetura de sistemas web
 
SOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saberSOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saber
SOLIDWORKS e 3DEXPERIENCE Educacional 2022-2023: Tudo o que precisa de saber
 
Jquery 2
Jquery 2Jquery 2
Jquery 2
 
Introdução aos aplicativos tipo canvas
Introdução aos aplicativos tipo canvasIntrodução aos aplicativos tipo canvas
Introdução aos aplicativos tipo canvas
 
Joomla
JoomlaJoomla
Joomla
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Mini curso de c#.net
Mini curso de c#.netMini curso de c#.net
Mini curso de c#.net
 

Mais de Eduardo Mendes

Angular JS - Fundamentos
Angular JS - FundamentosAngular JS - Fundamentos
Angular JS - FundamentosEduardo Mendes
 
Singleton - Padrão de Projeto
Singleton - Padrão de ProjetoSingleton - Padrão de Projeto
Singleton - Padrão de ProjetoEduardo Mendes
 
Introdução à Internet, Http e HTML
Introdução à Internet, Http e HTMLIntrodução à Internet, Http e HTML
Introdução à Internet, Http e HTMLEduardo Mendes
 
Estimativas de Esforço - Engenharia de Software
Estimativas de Esforço - Engenharia de SoftwareEstimativas de Esforço - Engenharia de Software
Estimativas de Esforço - Engenharia de SoftwareEduardo Mendes
 
Java web 6 JSP Expression Language Taglib parte 2
Java web 6 JSP Expression Language Taglib parte 2Java web 6 JSP Expression Language Taglib parte 2
Java web 6 JSP Expression Language Taglib parte 2Eduardo Mendes
 
Validações no Ruby on Rails
Validações no Ruby on Rails Validações no Ruby on Rails
Validações no Ruby on Rails Eduardo Mendes
 
Padroes Template-Method (Método Gabarito)
Padroes Template-Method (Método Gabarito)Padroes Template-Method (Método Gabarito)
Padroes Template-Method (Método Gabarito)Eduardo Mendes
 
PHP básico para iniciantes
PHP básico para iniciantesPHP básico para iniciantes
PHP básico para iniciantesEduardo Mendes
 
PHP e MySQL para iniciantes
PHP e MySQL para iniciantesPHP e MySQL para iniciantes
PHP e MySQL para iniciantesEduardo Mendes
 
Introdução a Padrões de Projeto
Introdução a Padrões de ProjetoIntrodução a Padrões de Projeto
Introdução a Padrões de ProjetoEduardo Mendes
 
Strategy - Padrões de Projeto
Strategy - Padrões de ProjetoStrategy - Padrões de Projeto
Strategy - Padrões de ProjetoEduardo Mendes
 

Mais de Eduardo Mendes (20)

Angular JS - Fundamentos
Angular JS - FundamentosAngular JS - Fundamentos
Angular JS - Fundamentos
 
Singleton - Padrão de Projeto
Singleton - Padrão de ProjetoSingleton - Padrão de Projeto
Singleton - Padrão de Projeto
 
Layout Fluido
Layout FluidoLayout Fluido
Layout Fluido
 
Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
Html - Aula 4
Html - Aula 4Html - Aula 4
Html - Aula 4
 
Html - Aula 3
Html - Aula 3Html - Aula 3
Html - Aula 3
 
Introdução à Internet, Http e HTML
Introdução à Internet, Http e HTMLIntrodução à Internet, Http e HTML
Introdução à Internet, Http e HTML
 
Estimativas de Esforço - Engenharia de Software
Estimativas de Esforço - Engenharia de SoftwareEstimativas de Esforço - Engenharia de Software
Estimativas de Esforço - Engenharia de Software
 
Java web 6 JSP Expression Language Taglib parte 2
Java web 6 JSP Expression Language Taglib parte 2Java web 6 JSP Expression Language Taglib parte 2
Java web 6 JSP Expression Language Taglib parte 2
 
Validações no Ruby on Rails
Validações no Ruby on Rails Validações no Ruby on Rails
Validações no Ruby on Rails
 
Padrão Iterator
Padrão IteratorPadrão Iterator
Padrão Iterator
 
Padroes Template-Method (Método Gabarito)
Padroes Template-Method (Método Gabarito)Padroes Template-Method (Método Gabarito)
Padroes Template-Method (Método Gabarito)
 
Padrão Command
Padrão CommandPadrão Command
Padrão Command
 
Padrão Fachada
Padrão FachadaPadrão Fachada
Padrão Fachada
 
Padrão Adapter
Padrão AdapterPadrão Adapter
Padrão Adapter
 
Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
PHP básico para iniciantes
PHP básico para iniciantesPHP básico para iniciantes
PHP básico para iniciantes
 
PHP e MySQL para iniciantes
PHP e MySQL para iniciantesPHP e MySQL para iniciantes
PHP e MySQL para iniciantes
 
Introdução a Padrões de Projeto
Introdução a Padrões de ProjetoIntrodução a Padrões de Projeto
Introdução a Padrões de Projeto
 
Strategy - Padrões de Projeto
Strategy - Padrões de ProjetoStrategy - Padrões de Projeto
Strategy - Padrões de Projeto
 

Introdução ao JavaScript