Você está na página 1de 4

Road Map para aprender Back-end

PASSOS:

1. Linguagens de programação: Comece aprendendo uma linguagem de


programação popular para desenvolvimento back-end, como Python,
Java, C#, Ruby ou Node.js (JavaScript). Familiarize-se com os conceitos
básicos da linguagem escolhida, como sintaxe, estruturas de controle e
manipulação de dados.

Dica: Analisar o mercado e entender quais as opções têm


oportunidades de trabalho.

2. Bancos de dados: Aprenda os fundamentos dos bancos de dados


relacionais, como MySQL, PostgreSQL ou Oracle, bem como bancos de
dados não relacionais, como MongoDB ou Redis. Entenda como
projetar, criar e consultar bancos de dados, além de conceitos como
normalização e modelagem de dados.
3. Entender sobre servidores, o que é, os tipos e entender para que eles
servem no contexto de Software. Conceito sobre versionamento de
código e entender os principais comandos. Conceito sobre Base de
dados, quais os tipos (relacional e não relacional), quais as principais
utilizadas no mercado de desenvolvimento.

Dica: começar com a base relacional SQL e NO SQL para base


não relacional (caso esteja começando agora).

4. Back-end não é uma camada isolada ele precisa se comunicar com


outras camadas e com outros sistemas, e por isso se utilizam as API’s
que seria Application Programming Interface (Interface de Programação
de Aplicação).

Dica: O que é uma API: https://www.youtube.com/watch?


v=5ezlxPqaOeY
5. Frameworks e bibliotecas: Explore os frameworks e bibliotecas
populares para desenvolvimento back-end, como Django (Python),
Spring (Java), ASP.NET (C#), Ruby on Rails (Ruby) ou Express.js
(Node.js). Essas ferramentas fornecem estruturas e funcionalidades
para facilitar o desenvolvimento web.
6. Segurança: Adquira conhecimentos sobre práticas de segurança para
proteger aplicativos e dados. Aprenda sobre autenticação, autorização,
gerenciamento de sessões, criptografia e proteção contra-ataques
comuns, como injeção de SQL e Cross-Site Scripting (XSS).
7. Conceitos de rede: Entenda os princípios básicos de redes, como
protocolos HTTP, DNS, TCP/IP, servidores web e roteamento. Isso é
essencial para compreender como os aplicativos se comunicam pela
internet.
8. Controle de versão: Familiarize-se com sistemas de controle de versão,
como Git, para gerenciar eficientemente o código-fonte de seus projetos
e colaborar com outros desenvolvedores.
9. Práticas de desenvolvimento e metodologias: Aprenda boas práticas de
desenvolvimento de software, como testes automatizados,
desenvolvimento orientado a objetos, padrões de projeto e metodologias
ágeis, como Scrum ou Kanban.

Dica: O que é uma API: https://www.youtube.com/watch?


v=5ezlxPqaOeY

Conceitos avançados:
1. Escalabilidade: Quando pensamos
sobre desenvolvimento de Software
atualmente é muito importante prever a
escalabilidade do seu sistema, isso
porque a maioria dos sistemas vão se
aperfeiçoando ao longo do tempo,
sendo de extrema importância ter uma
estrutura flexível (ser escalável), isso
vai envolver uma seria de questões
estruturais e principalmente a
Arquitetura de Software.

2. Segurança: Com a quantidade de informação que é trefegada entre


front-end e back-end, é muito bom se atentar as práticas de segurança,
então aprender sobre certificado, criptografias, como essas informações
sensíveis podem ser trafegadas com segurança.

O que é uma API?

As API’s são fundamentais quando falamos em construção de um


software, permitindo um padrão de comunicação entre as camadas.

A sigla API deriva da expressão inglesa Application Programming


Interface que, traduzida para o português, pode ser compreendida como uma
interface de programação de aplicação. Ou seja, API é um conjunto de normas,
ou um contrato de comunicação.

UI (User Interface) ou interface do usuário, é o ponto de ligação entre o


usuário e o sistema/produto/serviço. Basicamente, o que vemos e realizamos
de ações em algum website, aplicativo, sistema ou computador

Aplicações de API’s: Vamos dizer que você desenvolveu um sistema, um


conversor de vídeo que converte vídeos em vários formatos, suponhamos que
você tenha outro sistema que vai precisar utilizar dessa mesma funcionalidade
de converter os vídeos, então a API vem para facilitar a comunicação do meu
sistema X para que consiga utilizar as mesmas funções do meu sistema Y, e
para isso acontecer precisamos estabelecer um padrão de comunicação entre
sistemas através das API’s.

Nessa interface por exemplo, meu sistema de vídeos vai “falar”, caso
você queira utilizar de minha funcionalidade, você terá que enviar para este
endereço o seu vídeo e em qual formato você deseja convertê-lo, para que eu
o consiga apresentar o vídeo convertido e caso eu não consiga irei lhe
responder com uma mensagem de erro. Assim, estabelecendo um “contrato”,
para que meu outro sistema consiga usufruir das vantagens do meu converso
de vídeo.

Você também pode gostar