SlideShare uma empresa Scribd logo
1 de 63
Baixar para ler offline
O PODER DO
JAVASCRIPT
Jack Morton affiliate
Gabriel Ferreira
Analista Desenvolvedor
HISTÓRIA
1992
CMM
1992
CMM
C--
1995
Brendan Eich
mocha
LiveScript
1995
1995
LiveScript
1995
LiveScript
1995
LiveScript
JavaScript
1995
LiveScript
JavaScript
nada ver com Java
atualmente
● Linguagem multi paradigma
○ Orientada a Eventos
○ Orientada a Objetos (sintética)
○ Procedural
○ Imperativa
○ Funcional
introdução
● Tipagem Dinâmica
introdução
● Tipos
introdução
● Todo mundo tem JavaScript instalado
+
F12
+
F12
PRONTO!
FRONT-END(client side)
Client Side
● Validação de Formulários
● Manipulação do DOM
● Gerenciamento de Eventos
● Interações com usuário
● Principal Responsável pela UX
● Validação de Formulários
● Manipulação do DOM (Document Object Model)
● Gerenciamento de Eventos
● Interações com usuário
● Principal Responsável pela UX
● Principal Responsável pela UX
Algumas Tecnologias
Front-end
AngularJS
jQuery
React
Gulp Ember
resumindo
● front-end (lado do cliente)
BACK-END(server side)
https://nodejs.org/en/
Server Side
● Liberado ao público em 2009
● Criado a partir do motor V8 utilizado no Google
Chrome
● Conexões simultâneas
Quem usa NodeJS?
resumindo
● front-end (lado do cliente)
● back-end (lado do servidor)
ANDROID
E
TAMBÉM
iOS
ISSO NÃO
É POSSÍVEL
ISSO NÃO
É POSSÍVEL
REACT NATIVE
https://facebook.github.io/react-native/
1 código
2
APLICAÇÕES
render: function() {
return <View>Eai Fatec!</View>
}
Quem usa React Native?
resumindo
● front-end (lado do cliente)
● back-end (lado do servidor)
● mobile
DESKTOP
Cases de Sucesso
Atom Slack VSCode
ELECTRON JS
https://electronjs.org/
resumindo
● front-end (lado do cliente)
● back-end (lado do servidor)
● mobile
● desktop
BANCO DE DADOS
Relacionais Não Relacionais
(NoSQL)
● MySQL
● PostgreSQL
● SQL Server
1. Armazenam dados em forma de
tabelas (linhas e colunas);
2. As tabelas se relacionam entre si;
3. SQL (linguagem de consulta)
● MongoDB (orientado a documentos)
1. Diferente forma de armazenamento;
2. As tabelas não se relacionam entre si;
JSON
(JavaScript Object Notation)
É um modelo para armazenamento e transmissão de informações no
formato texto.
● Leitura mais simples
● Analisador (parsing) mais fácil
● Velocidade maior na execução e transporte de dados
● Arquivo com tamanho reduzido
https://www.devmedia.com.br/o-que-e-json/23166
resumindo
● front-end (lado do cliente)
● back-end (lado do servidor)
● mobile
● desktop
● banco de dados
CONCLUSÃO
STACK FULL JS
Web App
Mobile App
DB
Server
...
Web App
Mobile App
DB
Server
jQuery
React
Angular
Vanilla
...
Web App
Mobile App
DB
Server
jQuery
React
Angular
Vanilla
React Native
...
Web App
Mobile App
DB
Server
jQuery
React
Angular
Vanilla
React Native
NodeJs
...
Web App
Mobile App
DB
Server
jQuery
React
Angular
Vanilla
React Native
NodeJs
JSON
...
Web App
Mobile App
DB
Server
jQuery
React
Angular
Vanilla
React Native
NodeJs
JSON
...
GitHub
● https://github.com/frontendbr/me-contrata
● https://github.com/frontendbr/vagas
● https://github.com/lerrua/remote-jobs-brazil
● https://github.com/LFeh/frontend-challenges/
E MUITO MAIS!
Obrigado!
E-mail
gabriel@lightup.com.br
GitHub
https://github.com/gabrielferreiraa
LinkedIn
https://www.linkedin.com/in/gabrielferreira/
Link Apresentação
https://bit.ly/2GttaWn

Mais conteúdo relacionado

Mais procurados

Como tratar múltiplos JSONps com o mesmo callback name? - FloripaJS
Como tratar múltiplos JSONps com o mesmo callback name? - FloripaJSComo tratar múltiplos JSONps com o mesmo callback name? - FloripaJS
Como tratar múltiplos JSONps com o mesmo callback name? - FloripaJSVinicius Kiatkoski Neves
 
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
 
Vuejs
VuejsVuejs
Vuejsceife
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front endDouglas Matoso
 
Code Igniter - O Framework php mais fácil e ágil
Code Igniter - O Framework php mais fácil e ágilCode Igniter - O Framework php mais fácil e ágil
Code Igniter - O Framework php mais fácil e ágilRafael Pinheiro
 
CodeIgniter 4 - Introdução
CodeIgniter 4 - IntroduçãoCodeIgniter 4 - Introdução
CodeIgniter 4 - IntroduçãoRafael Pinheiro
 
Iniciando com Ruby on Rails - Luiz Fernando Pimenta
Iniciando com Ruby on Rails - Luiz Fernando PimentaIniciando com Ruby on Rails - Luiz Fernando Pimenta
Iniciando com Ruby on Rails - Luiz Fernando Pimentamichel adriano medeiros
 
Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018
Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018
Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018Renato Groff
 
Frameworks: uma mão na roda para o desenvolvimento
Frameworks: uma mão na roda para o desenvolvimentoFrameworks: uma mão na roda para o desenvolvimento
Frameworks: uma mão na roda para o desenvolvimentoIago Santos Leão
 
Vraptor Overview
Vraptor OverviewVraptor Overview
Vraptor Overviewdtelaroli
 
Curso Programação Web com Ruby on Rails - Aula 01
Curso Programação Web com Ruby on Rails - Aula 01Curso Programação Web com Ruby on Rails - Aula 01
Curso Programação Web com Ruby on Rails - Aula 01Renato Sousa
 
Boas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful APIBoas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful APIFernando Camargo
 
Construindo um Servidor Web com GO
Construindo um Servidor Web com GOConstruindo um Servidor Web com GO
Construindo um Servidor Web com GOBeto Muniz
 
Desenvolvimento web com groovy e grails.
Desenvolvimento web com groovy e grails.Desenvolvimento web com groovy e grails.
Desenvolvimento web com groovy e grails.Bryan Ollivie
 
Criando websites a jato com Django
Criando websites a jato com DjangoCriando websites a jato com Django
Criando websites a jato com DjangoMarcos Petry
 
Quasar Framework - Uma visão Geral
Quasar Framework - Uma visão GeralQuasar Framework - Uma visão Geral
Quasar Framework - Uma visão GeralPatrick Monteiro
 
Desenvolvimento web ágil com Django
Desenvolvimento web ágil com DjangoDesenvolvimento web ágil com Django
Desenvolvimento web ágil com DjangoIgor Sobreira
 

Mais procurados (20)

Como tratar múltiplos JSONps com o mesmo callback name? - FloripaJS
Como tratar múltiplos JSONps com o mesmo callback name? - FloripaJSComo tratar múltiplos JSONps com o mesmo callback name? - FloripaJS
Como tratar múltiplos JSONps com o mesmo callback name? - FloripaJS
 
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
 
Vuejs
VuejsVuejs
Vuejs
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front end
 
Code Igniter - O Framework php mais fácil e ágil
Code Igniter - O Framework php mais fácil e ágilCode Igniter - O Framework php mais fácil e ágil
Code Igniter - O Framework php mais fácil e ágil
 
CodeIgniter 4 - Introdução
CodeIgniter 4 - IntroduçãoCodeIgniter 4 - Introdução
CodeIgniter 4 - Introdução
 
Aula01-JavaScript
Aula01-JavaScriptAula01-JavaScript
Aula01-JavaScript
 
Iniciando com Ruby on Rails - Luiz Fernando Pimenta
Iniciando com Ruby on Rails - Luiz Fernando PimentaIniciando com Ruby on Rails - Luiz Fernando Pimenta
Iniciando com Ruby on Rails - Luiz Fernando Pimenta
 
Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018
Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018
Testando Aplicações Web com Selenium WebDriver - .NET SP - Novembro-2018
 
Frameworks: uma mão na roda para o desenvolvimento
Frameworks: uma mão na roda para o desenvolvimentoFrameworks: uma mão na roda para o desenvolvimento
Frameworks: uma mão na roda para o desenvolvimento
 
Vraptor Overview
Vraptor OverviewVraptor Overview
Vraptor Overview
 
Curso Programação Web com Ruby on Rails - Aula 01
Curso Programação Web com Ruby on Rails - Aula 01Curso Programação Web com Ruby on Rails - Aula 01
Curso Programação Web com Ruby on Rails - Aula 01
 
Boas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful APIBoas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful API
 
Construindo um Servidor Web com GO
Construindo um Servidor Web com GOConstruindo um Servidor Web com GO
Construindo um Servidor Web com GO
 
Aula09 - Java Script
Aula09 - Java ScriptAula09 - Java Script
Aula09 - Java Script
 
Desenvolvimento web com groovy e grails.
Desenvolvimento web com groovy e grails.Desenvolvimento web com groovy e grails.
Desenvolvimento web com groovy e grails.
 
Criando websites a jato com Django
Criando websites a jato com DjangoCriando websites a jato com Django
Criando websites a jato com Django
 
Blazor #SnetTalks3
Blazor  #SnetTalks3Blazor  #SnetTalks3
Blazor #SnetTalks3
 
Quasar Framework - Uma visão Geral
Quasar Framework - Uma visão GeralQuasar Framework - Uma visão Geral
Quasar Framework - Uma visão Geral
 
Desenvolvimento web ágil com Django
Desenvolvimento web ágil com DjangoDesenvolvimento web ágil com Django
Desenvolvimento web ágil com Django
 

Semelhante a O Poder do JavaScript

Dafiti Tech Conference - PHP Levado a Sério
Dafiti Tech Conference - PHP Levado a SérioDafiti Tech Conference - PHP Levado a Sério
Dafiti Tech Conference - PHP Levado a SérioEvaldo Junior
 
Ciclo de Vida de um Produtos de Software
Ciclo de Vida de um Produtos de SoftwareCiclo de Vida de um Produtos de Software
Ciclo de Vida de um Produtos de SoftwareRafaelScheidt1
 
Lightning Talk: Webdev who?
Lightning Talk: Webdev who?Lightning Talk: Webdev who?
Lightning Talk: Webdev who?Leandro Nunes
 
GWT - de iniciante a especialista
GWT - de iniciante a especialistaGWT - de iniciante a especialista
GWT - de iniciante a especialistaDanilo Reinert
 
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...tdc-globalcode
 
Web/Mobile tendências 2015
Web/Mobile tendências 2015Web/Mobile tendências 2015
Web/Mobile tendências 2015Rangel Torrezan
 
Day to day vue or react (2)
Day to day  vue or react  (2)Day to day  vue or react  (2)
Day to day vue or react (2)Hebert Silva
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoEduardo Bohrer
 
Jenkins + DCS / Dafiti Conference 2014
Jenkins + DCS / Dafiti Conference 2014Jenkins + DCS / Dafiti Conference 2014
Jenkins + DCS / Dafiti Conference 2014Rodrigo Moyle
 
PHP - o que as empresas estão esperando de nós?
PHP - o que as empresas estão esperando de nós?PHP - o que as empresas estão esperando de nós?
PHP - o que as empresas estão esperando de nós?Pedro Mázala
 
Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...
Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...
Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...Renato Groff
 
Desafios Reais de uma Arquitetura Emergente
Desafios Reais de uma Arquitetura EmergenteDesafios Reais de uma Arquitetura Emergente
Desafios Reais de uma Arquitetura EmergenteRaphael Molesim
 
Desafios reais de uma arquitetura emergente
Desafios reais de uma arquitetura emergenteDesafios reais de uma arquitetura emergente
Desafios reais de uma arquitetura emergenteRafa Noronha
 

Semelhante a O Poder do JavaScript (20)

Dafiti Tech Conference - PHP Levado a Sério
Dafiti Tech Conference - PHP Levado a SérioDafiti Tech Conference - PHP Levado a Sério
Dafiti Tech Conference - PHP Levado a Sério
 
Ciclo de Vida de um Produtos de Software
Ciclo de Vida de um Produtos de SoftwareCiclo de Vida de um Produtos de Software
Ciclo de Vida de um Produtos de Software
 
Javascript para adultos
Javascript para adultosJavascript para adultos
Javascript para adultos
 
Lightning Talk: Webdev who?
Lightning Talk: Webdev who?Lightning Talk: Webdev who?
Lightning Talk: Webdev who?
 
GWT - de iniciante a especialista
GWT - de iniciante a especialistaGWT - de iniciante a especialista
GWT - de iniciante a especialista
 
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
 
Linear Engineering
Linear EngineeringLinear Engineering
Linear Engineering
 
Web/Mobile tendências 2015
Web/Mobile tendências 2015Web/Mobile tendências 2015
Web/Mobile tendências 2015
 
Day to day vue or react (2)
Day to day  vue or react  (2)Day to day  vue or react  (2)
Day to day vue or react (2)
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
 
Meetup vue.js
Meetup vue.jsMeetup vue.js
Meetup vue.js
 
Jenkins + DCS / Dafiti Conference 2014
Jenkins + DCS / Dafiti Conference 2014Jenkins + DCS / Dafiti Conference 2014
Jenkins + DCS / Dafiti Conference 2014
 
PHP - o que as empresas estão esperando de nós?
PHP - o que as empresas estão esperando de nós?PHP - o que as empresas estão esperando de nós?
PHP - o que as empresas estão esperando de nós?
 
Typescript
TypescriptTypescript
Typescript
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 
Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...
Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...
Indo além dos testes de classes com BDD (Behavior-Driven Development) - DevOp...
 
PHP: Como não programar em POG
PHP: Como não programar em POGPHP: Como não programar em POG
PHP: Como não programar em POG
 
Desafios Reais de uma Arquitetura Emergente
Desafios Reais de uma Arquitetura EmergenteDesafios Reais de uma Arquitetura Emergente
Desafios Reais de uma Arquitetura Emergente
 
Desafios reais de uma arquitetura emergente
Desafios reais de uma arquitetura emergenteDesafios reais de uma arquitetura emergente
Desafios reais de uma arquitetura emergente
 
Teste de software
Teste de softwareTeste de software
Teste de software
 

O Poder do JavaScript