Palestra - Profissão: Desenvolvedor

36
Profissão: Desenvolvedor por Daniel Brandão

Transcript of Palestra - Profissão: Desenvolvedor

Page 1: Palestra - Profissão: Desenvolvedor

Profissão: Desenvolvedor

por Daniel Brandão

Page 2: Palestra - Profissão: Desenvolvedor

Me apresentandoDaniel Brandão

◇ Na Informática desde 2002.◇ Desenvolvedor Web desde 2005◇ Professor pelo SENAI (2011-2014), pela

Faculdade AVEC(2013), pelo IFPB e UNIPÊ (2015)

◇ Graduado em SPI (2008)◇ Especialista em Aplicações Web(2015)

Page 3: Palestra - Profissão: Desenvolvedor

O que veremos?

Breve introdução (senta que lá vem história) Evolução na Programação Programação Orientada a Objetos (POO) Design Patterns (Padrões de Projetos) Frameworks Mercado de Trabalho para Desenvolvedores

Page 4: Palestra - Profissão: Desenvolvedor

Por onde comeceiMeus primeiros passos

1

Page 5: Palestra - Profissão: Desenvolvedor

1998 – Meu primeiro PC2002 – Digitador2003 – Universidade2004 – Estagiário2005 – Programador2009 – Gerente de projetos2011 – Professor

Page 6: Palestra - Profissão: Desenvolvedor

“A arte de programar consiste na arte

de organizar e dominar a complexidade.

Edsger Dijkstra

Page 7: Palestra - Profissão: Desenvolvedor

Primeira Experiência◇ Front-end: HTML e CSS.◇ Criação de sites simples e estáticos◇ Sem complexidades e sem Banco de

dados.

Page 8: Palestra - Profissão: Desenvolvedor

A evolução2

Page 9: Palestra - Profissão: Desenvolvedor

Sistemas◇ Criação de sites Dinâmicos■ Flash■ PHP■ MySQL■ …

Page 10: Palestra - Profissão: Desenvolvedor

“Qualquer um pode escrever um código

que o computador entenda. Bons programadores escrevem códigos que

os humanos entendam.

Martin Fowler

Page 11: Palestra - Profissão: Desenvolvedor

POO2Programação Orientada a Objetos

Page 12: Palestra - Profissão: Desenvolvedor

P.O.O.◇ Programação Orientada a Objetos

■ O que é?■ Porque programar OO?■ Quais as vantagens?

Page 13: Palestra - Profissão: Desenvolvedor

P.O.O.◇ Programação Orientada a Objetos■ O que é?

É um conceito que esta relacionado com a ideia de classificar, organizar e abstrair coisas.

O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam estes dados.

Page 14: Palestra - Profissão: Desenvolvedor

P.O.O.◇ Programação Orientada a Objetos

■ O que é?■ Porque programar OO?■ Quais as vantagens?

Page 15: Palestra - Profissão: Desenvolvedor

P.O.O.◇ Programação Orientada a Objetos■ Porque?

- POO é um padrão de desenvolvimento que é seguido por muitas linguagens, como C#, Java, PHP;

- É mais fácil pensar em objetos do que em funções / procedimentos pois objetos estão mais próximos ao mundo real;

- Se bem programado, torna-se mais prática a manutenção do programa.

Page 16: Palestra - Profissão: Desenvolvedor

P.O.O.◇ Programação Orientada a Objetos

■ O que é?■ Porque programar OO?■ Quais as vantagens?

Page 17: Palestra - Profissão: Desenvolvedor

P.O.O.◇ Programação Orientada a Objetos■ Vantagens?

- Facilidade na manutenção do código;

- Trás vários recursos para produzir componentes independentes intercambiáveis  (encapsulamento, interfaces, polimorfismo, etc);

- Criação de bibliotecas e utilização de bibliotecas próprias da linguagem;

Page 18: Palestra - Profissão: Desenvolvedor

Design Patterns◇ O que é isso?◇ Porque MVC?◇ Modelos utilizados

Page 19: Palestra - Profissão: Desenvolvedor

Design Patterns◇ O que é isso?

- Padrão de projeto de software é uma solução geral reutilizável para um problema que ocorre com frequência dentro de um determinado contexto no projeto de software;

- Normalmente mostram relacionamentos e interações entre classes ou objetos, sem especificar as classes ou objetos da aplicação final que estão envolvidas.

- MVC – Padrão bastante utilizado em linguagens OO

Page 20: Palestra - Profissão: Desenvolvedor

Design Patterns◇ O que é isso?◇ Porque MVC?◇ Modelos utilizados

Page 21: Palestra - Profissão: Desenvolvedor

Design Patterns◇ MVC

- Model-view-controller (MVC), em português modelo-visão-controlador, é um padrão de arquitetura de software (design pattern) que separa a representação de informação da interação do usuário com ele;

- Ele divide basicamente em três partes o projeto, facilitando a manutenção de código e a segurança no acesso aos dados.

Page 22: Palestra - Profissão: Desenvolvedor

Design Patterns◇ MVC

- O modelo (model) consiste nos dados da aplicação, regras de negócios, lógica e funções.

- Uma visão (view) pode ser qualquer saída de representação dos dados, como uma tabela ou um diagrama. É possível ter várias visões do mesmo dado;

- O controlador (controller) faz a mediação da entrada, convertendo-a em comandos para o modelo ou visão. As ideias centrais por trás do MVC são a reusabilidade de código e separação de conceitos.

Page 23: Palestra - Profissão: Desenvolvedor

Design Patterns◇ O que é isso?◇ Porque MVC?◇ Modelos utilizados

Page 24: Palestra - Profissão: Desenvolvedor

Design Patterns◇ Modelos utilizados (Frameworks)

◇ Java

■ Apache Struts■ Click Framework■ JSF■ Spring MVC■ Vraptor■ PrimeFaces

◇ .NET

■ ASP.NET MVC - oficial da Microsoft■ C♯ - oficial da Microsoft

Page 25: Palestra - Profissão: Desenvolvedor

Design Patterns◇ Modelos utilizados (Frameworks)

◇ PHP

■ CakePHP■ CodeIgniter■ Laravel■ Symfony■ Zend Framework

◇ Python

■ Django■ Zope

Page 26: Palestra - Profissão: Desenvolvedor

Design Patterns◇ CMS´s (Content Manager System)

■ CMS é a sigla para Content Management System, ou em bom português, Sistema Gerenciador de Conteúdo. Um CMS tem como objetivo facilitar a criação, edição, publicação e distribuição de informação.

■ Voltado para a Web, são muito utilizados em linguagens como PHP, Python e Ruby.

Page 27: Palestra - Profissão: Desenvolvedor

O que uma empresaEspera de mim?

Page 28: Palestra - Profissão: Desenvolvedor

O que uma empresaEspera de mim?

◇ Atitude◇ Vontade de aprender◇ Proatividade◇ Bom relacionamento em grupo◇ Caixa de ferramentas

Page 29: Palestra - Profissão: Desenvolvedor

FrameworksUsar ou Criar?

◇ Criação◇ Utilização

Page 30: Palestra - Profissão: Desenvolvedor

3. Carreira: Por onde começar?

Page 31: Palestra - Profissão: Desenvolvedor

CarreiraDicas úteis

◇ Não pule etapas◇ Almeje um objetivo◇ Invista em você mesmo◇ Aproveite as oportunidades◇ Não pise nos outros para crescer◇ Compartilhe o conhecimento

Page 32: Palestra - Profissão: Desenvolvedor

Como alçar vôosMais altos?

Page 33: Palestra - Profissão: Desenvolvedor

Ter um bom network

Segredos da carreira de Desenvolvedor

Manter-se atualizado

Nunca achar que sabe

tudo

Page 34: Palestra - Profissão: Desenvolvedor

Perguntas?

Page 35: Palestra - Profissão: Desenvolvedor

Obrigado!Você pode me achar por aqui:

◇ DanielBrandao.com.br◇ Twitter @daniel85br◇ FB.me/danielbrandao.com.br◇ [email protected]

Page 36: Palestra - Profissão: Desenvolvedor

“ "Inovação é o que distingue um líder de um seguidor."

{Steve Jobs}