SlideShare uma empresa Scribd logo
1 de 17
O QUE É SER
PROGRAMADOR?
“Problema é a diferença entre a situação atual e a
situação desejada”

Mário Guedes
Consultor em desenvolvimento
mario.guedes@arrayof.com.br
QUAL O SEU OBJETIVO EM SER UM
PROGRAMADOR?

• “Você deixa de usar o computador e passa
a controlá-lo”
mario.guedes@arrayof.com.br
1) ESPECIFIQUE O PROBLEMA E O
ENTENDA COMPLETAMENTE

mario.guedes@arrayof.com.br
2) TORNE EXPLICITAS AS REGRAS QUE
ESTÃO IMPLÍCITAS

mario.guedes@arrayof.com.br
3) ELIMINE OS DETALHES SUPÉRFLUOS

mario.guedes@arrayof.com.br
4) ENTRE NO PROBLEMA

mario.guedes@arrayof.com.br
5) USE TODAS AS INFORMAÇÕES
POSSÍVEIS

mario.guedes@arrayof.com.br
6) DECOMPONHA O PROBLEMA

http://tudogostoso.uol.com.br/receita/951-bolo-de-chocolate-molhadinho.html
mario.guedes@arrayof.com.br
7) TRABALHE PARA TRÁS

mario.guedes@arrayof.com.br
ALGORITMO
• Sequência finita de instruções bem definidas e não ambíguas.
Não necessariamente um programa de computador.

http://pt.wikipedia.org/wiki/Algoritmo

mario.guedes@arrayof.com.br
REFATORAÇÃO
• Podemos sempre fazer melhor. Sempre!

mario.guedes@arrayof.com.br
TESTES

http://ciadiener.blogspot.com/2010/07/hora-de-lamber-forma.html

mario.guedes@arrayof.com.br
USE FLUXOGRAMA
Início

Decisão

A

A

SubProcesso

Processo

Fim

mario.guedes@arrayof.com.br
PROCESSAMENTO SEQUENCIAL

Buy SmartDraw!- purchased copies print this
document without a watermark .
Visit www.smartdraw.com or call 1-800-768-3729.

mario.guedes@arrayof.com.br
PROCESSAMENTO CONDICIONAL

Buy SmartDraw!- purchased copies print this
document without a watermark .
Visit www.smartdraw.com or call 1-800-768-3729.

mario.guedes@arrayof.com.br
PROCESSAMENTO COM REPETIÇÃO

Buy SmartDraw!- purchased copies print this
document without a watermark .
Visit www.smartdraw.com or call 1-800-768-3729.

mario.guedes@arrayof.com.br


mario.guedes@arrayof.com.br

Mais conteúdo relacionado

Semelhante a O que é ser programador?

555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
periclyslamonier
 

Semelhante a O que é ser programador? (13)

Proposta de orçamento para rede_gazeta
Proposta de orçamento para rede_gazetaProposta de orçamento para rede_gazeta
Proposta de orçamento para rede_gazeta
 
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
 
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
555028179-09-Manutencao-Configuracao-E-Redes (1).pdf
 
Estrategia. windows 7
Estrategia. windows 7Estrategia. windows 7
Estrategia. windows 7
 
Mitos do Desenvolvimento de Software
Mitos do Desenvolvimento de SoftwareMitos do Desenvolvimento de Software
Mitos do Desenvolvimento de Software
 
Refinando Código Legado
Refinando Código LegadoRefinando Código Legado
Refinando Código Legado
 
OKR - Objetivos e Resultados Chave
OKR - Objetivos e Resultados ChaveOKR - Objetivos e Resultados Chave
OKR - Objetivos e Resultados Chave
 
Scrum
ScrumScrum
Scrum
 
Como minimizar incertezas ao construir o roadmap do produto - TDC 2018
Como minimizar incertezas ao construir o roadmap do produto - TDC 2018Como minimizar incertezas ao construir o roadmap do produto - TDC 2018
Como minimizar incertezas ao construir o roadmap do produto - TDC 2018
 
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um frameworkPHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
 
App studio - Criando e Publicando
App studio - Criando e PublicandoApp studio - Criando e Publicando
App studio - Criando e Publicando
 
TDC2018FLN | Trilha Gestão de Produtos - Como minimizar incertezas ao constru...
TDC2018FLN | Trilha Gestão de Produtos - Como minimizar incertezas ao constru...TDC2018FLN | Trilha Gestão de Produtos - Como minimizar incertezas ao constru...
TDC2018FLN | Trilha Gestão de Produtos - Como minimizar incertezas ao constru...
 
Engenharia de Software Dia-a-Dia
Engenharia de Software Dia-a-DiaEngenharia de Software Dia-a-Dia
Engenharia de Software Dia-a-Dia
 

Mais de Mario Guedes

Mais de Mario Guedes (20)

O que é e como devo usar o REDIS? - 1o Mobile REST Summit
O que é e como devo usar o REDIS? - 1o Mobile REST SummitO que é e como devo usar o REDIS? - 1o Mobile REST Summit
O que é e como devo usar o REDIS? - 1o Mobile REST Summit
 
Fazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISFazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDIS
 
Integrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumIntegrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da Ethereum
 
Entendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTEntendendo HTTP para entender o REST
Entendendo HTTP para entender o REST
 
Expressão Regular - Cookbook
Expressão Regular - CookbookExpressão Regular - Cookbook
Expressão Regular - Cookbook
 
Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google Maps
 
Foco no app, viva o serverless!
Foco no app, viva o serverless!Foco no app, viva o serverless!
Foco no app, viva o serverless!
 
Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google Maps
 
Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!
 
Escalabilidade com Redis
Escalabilidade com Redis Escalabilidade com Redis
Escalabilidade com Redis
 
Escalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisEscalando o backend com NGINX e Redis
Escalando o backend com NGINX e Redis
 
Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!
 
Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?
 
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiTDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
 
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?
 
BOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaBOT: Conversando com o seu sistema
BOT: Conversando com o seu sistema
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
 
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosExtreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
 

Último

Último (6)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

O que é ser programador?