SlideShare una empresa de Scribd logo
1 de 69
Descargar para leer sin conexión
"Ouvi falar de Rust…"
Mas como eu faço um site?
1 . 1
Olá pessoal!
2 . 1
Vou contar como eu conheci Rust
2 . 2
E os problemas que a linguagem me ajudou a
resolver
2 . 3
Em 2015
3 . 1
Comecei a me envolver com o deploy das
aplicações do meu projeto
3 . 2
NPM + Python + Java + Closure Compiler + SCons
+ RVM…
3 . 3
Eu queria uma maneira simples de executar
aplicações
3 . 4
Objetivo
1 arquivo binário e cross-plataforma
3 . 5
As opções
4 . 1
"Pra escrever binário tem que ser C?"
4 . 2
Rust foi uma das opções na minha busca por
alternativas
4 . 3
"Mas o que é Rust?"
4 . 4
Rust
Rust é uma linguagem de programação de
sistemas que roda incrivelmente rápido, previne
falhas de segmentação, e garante segurança
entre threads.
5 . 1
O que me chamou atenção para seguir
aprendendo:
Imutável por padrão
Não tem null ou unde ned
Gera binários
Cross-plataforma
Ideal para programar em baixo nível
Linguagem com investimento da Mozilla
5 . 2
"Deveria me preocupar por
ser baixo nível?"
Quantos falhas podem acontecer em um
programa de baixo nível?
6 . 1
Bu erOver ow, Segmentation Fault, Use After
Free…
6 . 2
Rust tem um sistema de tipos que previne
diversos erros de gerenciamento de memória,
em tempo de compilação
6 . 3
Gerenciamento de memória sem Garbage
Collector
6 . 4
Agora eu consigo fazer isso:
7 . 1
E no nal da apresentação você também
7 . 2
Quem já ouviu falar de Rust?
8 . 1
Ah, e esse é o mascote, Ferris
(E dá pra um pra você)costurar
8 . 2
Agora, como faço um site?
8 . 3
Primeiro passo: Instalando as
ferramentas
Siga as instruções no site do Rustup
9 . 1
Esse é o gerenciador de versões do Rust
Vai instalar todas as ferramentas
Suporta Linux, Mac e Windows
Ajuda a manter tudo atualizado
9 . 2
Teremos instalado no nal:
rustup: o gerenciador de versões
cargo: o gerenciador de projetos e de dependências
rustc: o compilador
rustdoc: o gerador de documentação
rust-gdb e rust-lldb: debuggers
9 . 3
Criando nosso projeto
$ cargo new --bin meu-site-em-rust
10 . 1
$ cargo run
Compiling meu-site-em-rust v0.1.0
Finished dev [unoptimized + debuginfo] target(s) in 1.54 secs
Running `target/debug/meu-site-em-rust`
Hello, world!
10 . 2
Vamos criar uma primeira
página
Vamos criar um arquivo em src/index.html
com seguinte conteúdo
11 . 1
<!doctype html>
<html>
<head>
<meta charset=utf-8>
<title>Olá TDC SP 2017</title>
</head>
<body>
<h1>Olá mundo</h1>
<marquee>Olá TDC</marquee>
</body>
</html>
11 . 2
Adicionando um framework
web
Vamos usar o framework para nos ajudarNickel
12 . 1
Adicione a dependencia no arquivo Cargo.toml
[dependencies]
nickel = "0.10.0"
12 . 2
Alterando nosso arquivo
Agora vamos ver um pouco de Rust, aos poucos.
Vamos abrir o arquivo src/main.rs.
13 . 1
Primeiro, importamos e incluimos algumas
referências do framework web.
#[macro_use]
extern crate nickel;
use nickel::{Nickel, HttpRouter};
13 . 2
Incluímos todo o conteúdo do nosso arquivo
HTML em uma constante.
const INDEX: &str = include_str!("index.html");
13 . 3
Criamos um novo servidor Nickel.
let mut server = Nickel::new();
server.get("/", middleware!(INDEX));
13 . 4
Con guramos a porta a partir da variável de
ambiente PORT. Vamos usar a porta 3000 de
fallback.
let port = std::env::var("PORT").unwrap_or("3000".into());
let url = format!("0.0.0.0:{port}", port = port);
13 . 5
Iniciamos o nosso servidor, com uma mensagem
caso haja erros.
println!("On {}", url);
server.listen(url)
.expect("Não conseguimos iniciar o servidor");
13 . 6
No nal teremos isso:
#[macro_use]
extern crate nickel;
use nickel::{Nickel, HttpRouter};
const INDEX: &str = include_str!("index.html");
fn main() {
let mut server = Nickel::new();
server.get("/", middleware!(INDEX));
let port = std::env::var("PORT").unwrap_or("3000".into());
let url = format!("0.0.0.0:{port}", port = port);
println!("On {}", url);
server.listen(url)
.expect("Não conseguimos iniciar o servidor");
}
13 . 7
Agora podemos criar o nosso
executável
$ cargo build --release
14 . 1
E executar:
$ ./target/release/meu-site-em-rust
On 0.0.0.0:3000
Listening on http://0.0.0.0:3000
Ctrl-C to shutdown server
14 . 2
TA-DA!
14 . 3
Parabéns!
Você tem um site em Rust.
15 . 1
E tudo em um só binário!
15 . 2
E tem demo no Heroku!
https://ouvi-falar-de-rust.herokuapp.com/
15 . 3
"Uma pergunta…"
16 . 1
É fácil aprender Rust?
Eu passei semanas batendo a cabeça em
conceitos que eram novos para mim.
16 . 2
Tenho um background vindo do alto nível
(Ruby/Java/JavaScript)
Tive que aprender sobre stack vs heap, referências vs
ponteiros
O conceito de lifetime e borrow demoraram pra entrar
na minha cabeça
16 . 3
Rust trouxe novos conceitos para minha caixa de
ferramentas.
E eu tenho me divertido muito!
16 . 4
A comunidade é muito aberta e me ajudou
bastante.
Muitas pessoas estão disponíveis para ajudar no
, no e até no .#rust-beginners fórum #rust-br
16 . 5
Como eu coloco meu site no Heroku?
Eu usei esse .buildpack
16 . 6
Só existe o Nickel para web?
Já existem vários frameworks, mas ainda é um
ecosistema em desenvolvimento.
16 . 7
Uma boa lista está disponível no site Are We
Web Yet?
16 . 8
Se você estiver buscando algo mais
experimental:
Con ra o , que usa uma sintax mais
sucinta…
Rocket
16 . 9
Mas depende de funcionalidades do compilador
ainda em desenvolvimento.
16 . 10
Preciso usar rustup?
É o método mais recomendado pela
comunidade
É a maneira mais fácil de manter tudo atualizado
Rust tem uma versão nova a cada 6 semanas
Fica mais fácil de acompanhar as novas funcionalidades
16 . 11
Rust está disponível nos gerenciadores de
pacotes dos sistemas operacionais também, mas
pode demorar um pouco mais para receber
atualizações.
16 . 12
Como conecto em um banco?
O pode ajudar nisso.Diesel
16 . 13
Já existem empresas usando Rust?
Sim. Inclusive o Firefox do seu computador já
tem partes em Rust.
Algumas empresas: Dropbox, Chef, Tilde, Sentry,
CoreOS, Mozilla e tem mais .na lista do site
16 . 14
Só dá pra usar Rust para a web?
Não, dá pra usar para muitas outras lugares!
16 . 15
(Se eu fosse falar todos os exemplos, seria uma
outra apresentação inteira)
16 . 16
Dois fortes* espaços para aplicar a linguagem:
Ferramentas de suporte (CLIs, build, processadores de
texto, etc)
Extensões de linguagens (Gems, npm, python extensions,
FFI)
*IMHO
16 . 17
, , , ,
, , ,
, …
Machine Learning Ruby Python Haskell
Node.js WebAssembly Container Network
Platform Embedded
16 . 18
Espero que tenham gostado
de Rust
Bruno Tavares - @bltavares
17 . 1
Links
https://github.com/bltavares/meu-site-em-rust
Imagens do Ferris
http://edunham.net/2016/04/11/plushie_rustacean_pattern.html
https://rustup.rs/
https://github.com/nickel-org/nickel.rs
https://ouvi-falar-de-rust.herokuapp.com/
https://riot.im/app/#/room/#mozilla_#rust-beginners:matrix.org
https://users.rust-lang.org/
https://riot.im/app/#/room/#mozilla_#rust-br:matrix.org
https://github.com/emk/heroku-buildpack-rust
http://www.arewewebyet.org/
https://rocket.rs/
https://diesel.rs/
https://www.rust-lang.org/en-US/friends.html
http://www.arewelearningyet.com/
https://usehelix.com/
https://github.com/mitsuhiko/snaek
https://github.com/mgattozzi/curryrs
https://www.neon-bindings.com/
https://hackernoon.com/compiling-rust-to-webassembly-guide-411066a69fde
https://blogs.oracle.com/developers/building-a-container-runtime-in-rust
https://tokio.rs/
https://github.com/rust-embedded
17 . 2

Más contenido relacionado

La actualidad más candente

Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
Giovanni Bassi
 

La actualidad más candente (20)

Docker para maiores
Docker para maioresDocker para maiores
Docker para maiores
 
TDC2017 | POA Trilha Programacao Funicional - (Nunca) Ouvi falar de Rust... m...
TDC2017 | POA Trilha Programacao Funicional - (Nunca) Ouvi falar de Rust... m...TDC2017 | POA Trilha Programacao Funicional - (Nunca) Ouvi falar de Rust... m...
TDC2017 | POA Trilha Programacao Funicional - (Nunca) Ouvi falar de Rust... m...
 
Iniciando com django
Iniciando com djangoIniciando com django
Iniciando com django
 
Docker Para Maiores - GDG Cabreúva
Docker Para Maiores - GDG CabreúvaDocker Para Maiores - GDG Cabreúva
Docker Para Maiores - GDG Cabreúva
 
Nagios+ubuntu16
Nagios+ubuntu16Nagios+ubuntu16
Nagios+ubuntu16
 
Vagrant & Docker: carregue seus ambientes no bolso
Vagrant & Docker: carregue seus ambientes no bolsoVagrant & Docker: carregue seus ambientes no bolso
Vagrant & Docker: carregue seus ambientes no bolso
 
Conhecendo o Nodejs
Conhecendo o NodejsConhecendo o Nodejs
Conhecendo o Nodejs
 
OpenSolaris a Céu Aberto
OpenSolaris a Céu AbertoOpenSolaris a Céu Aberto
OpenSolaris a Céu Aberto
 
Estudo de caso - Uso Docker no Desenvolvimento
Estudo de caso - Uso Docker no DesenvolvimentoEstudo de caso - Uso Docker no Desenvolvimento
Estudo de caso - Uso Docker no Desenvolvimento
 
Iniciando com docker
Iniciando com dockerIniciando com docker
Iniciando com docker
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
 
Consegi 2011: Puppet
Consegi 2011: PuppetConsegi 2011: Puppet
Consegi 2011: Puppet
 
Trabalhando em ambientes php com docker
Trabalhando em ambientes php com dockerTrabalhando em ambientes php com docker
Trabalhando em ambientes php com docker
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida real
 
Php além do LAMP
Php além do LAMPPhp além do LAMP
Php além do LAMP
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 
Docker volumes
Docker volumesDocker volumes
Docker volumes
 
Primeiros passos com o Docker
Primeiros passos com o DockerPrimeiros passos com o Docker
Primeiros passos com o Docker
 
Conceitos Basicos e Docker - Java Noroeste
Conceitos Basicos e Docker - Java NoroesteConceitos Basicos e Docker - Java Noroeste
Conceitos Basicos e Docker - Java Noroeste
 
Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimento
 

Similar a TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had a SRE team at - Ouvi falar de rust.. Mas como faço um site?

Programação em Shell Script
Programação em Shell ScriptProgramação em Shell Script
Programação em Shell Script
Reinaldo Lima
 

Similar a TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had a SRE team at - Ouvi falar de rust.. Mas como faço um site? (20)

Cygwin
CygwinCygwin
Cygwin
 
Node.js, Uma breve introdução
Node.js, Uma breve introduçãoNode.js, Uma breve introdução
Node.js, Uma breve introdução
 
Programação em Shell Script
Programação em Shell ScriptProgramação em Shell Script
Programação em Shell Script
 
Robot Operating System - Iniciação a Robótica
Robot Operating System - Iniciação a RobóticaRobot Operating System - Iniciação a Robótica
Robot Operating System - Iniciação a Robótica
 
Mercurianos - .Net na Prática - Da instalação até o debug da nossa API em um ...
Mercurianos - .Net na Prática - Da instalação até o debug da nossa API em um ...Mercurianos - .Net na Prática - Da instalação até o debug da nossa API em um ...
Mercurianos - .Net na Prática - Da instalação até o debug da nossa API em um ...
 
Debug de cabo a rabo
Debug de cabo a raboDebug de cabo a rabo
Debug de cabo a rabo
 
Ambiente de desenvolvimento com docker e ruby on rails
Ambiente de desenvolvimento com  docker e ruby on railsAmbiente de desenvolvimento com  docker e ruby on rails
Ambiente de desenvolvimento com docker e ruby on rails
 
Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis
 
Python CGI
Python CGIPython CGI
Python CGI
 
12 factor app. Melhor com Docker
12 factor app. Melhor com Docker12 factor app. Melhor com Docker
12 factor app. Melhor com Docker
 
Criando Webservice REST com NodeJS, NoSQL & Docker
Criando Webservice REST com NodeJS, NoSQL & DockerCriando Webservice REST com NodeJS, NoSQL & Docker
Criando Webservice REST com NodeJS, NoSQL & Docker
 
PaaS - OpenShift como plataforma pública
PaaS - OpenShift como plataforma públicaPaaS - OpenShift como plataforma pública
PaaS - OpenShift como plataforma pública
 
[LatinoWare 2012] Mini Curso PHP 5.4 + MongoDB
[LatinoWare 2012] Mini Curso PHP 5.4 + MongoDB[LatinoWare 2012] Mini Curso PHP 5.4 + MongoDB
[LatinoWare 2012] Mini Curso PHP 5.4 + MongoDB
 
Controlador de Domínio Open Source
Controlador de Domínio Open SourceControlador de Domínio Open Source
Controlador de Domínio Open Source
 
Containers com docker #CPRecife4
Containers com docker #CPRecife4Containers com docker #CPRecife4
Containers com docker #CPRecife4
 
Mini-curso RubyOnRails CESOL
Mini-curso RubyOnRails CESOLMini-curso RubyOnRails CESOL
Mini-curso RubyOnRails CESOL
 
Iptables layer7
Iptables layer7Iptables layer7
Iptables layer7
 
Automação de tarefas com grunt
Automação de tarefas com gruntAutomação de tarefas com grunt
Automação de tarefas com grunt
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de uso
 
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout  Tempo Real Eventos - Nodejs - Os Primeiros PassosHangout  Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
 

Más de tdc-globalcode

Más de tdc-globalcode (20)

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devices
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocus
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golang
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
 

Último

Expansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XVExpansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XV
lenapinto
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
tatianehilda
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
RogrioGonalves41
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 

Último (20)

Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
Expansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XVExpansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XV
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptxPlano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Camadas da terra -Litosfera conteúdo 6º ano
Camadas da terra -Litosfera  conteúdo 6º anoCamadas da terra -Litosfera  conteúdo 6º ano
Camadas da terra -Litosfera conteúdo 6º ano
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretação
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 

TDC2017 | São Paulo - Trilha Programação Funcional How we figured out we had a SRE team at - Ouvi falar de rust.. Mas como faço um site?