Executando verificação de segurança...
2

No fim, o backend é só fazer CRUD?

Bom... comecei a cursar Engenharia de Software e, por fora, também comecei a fazer alguns cursos de backend.

Até agora, boa parte do que estudei envolve criação de APIs RESTful e operações de CRUD. Surgiu uma dúvida, no fim das contas, esse backend sobre o qual todo mundo fala é basicamente só fazer CRUD?

Carregando publicação patrocinada...
2

Esses cursos básicos só vão ensinar 1001 formas diferentes de fazer CRUD, mesmo. Aprender a fazer CRUD (desde que bem feito) é o suficiente para desenvolver a maioria dos backends por aí. Mas não, isso não é tudo.

A complexidade de um backend varia muito, CRUD é o piso de complexidade: literalmente é o mais simples possível que um backend pode ser. Mas acima do CRUD em diante, tem uma enorme variedade de complexidades.

Eventualmente você aprenderá sobre arquitetura de software e verá que existem arquiteturas muito mais complexas do que a que você aprendeu. O que você aprendeu até agora se chama arquitetura MVC que, de novo, é o piso de complexidade.

Existe uma grande variedade de arquiteturas de software, tanto monolitas quanto distribuídas. E sistemas distribuídos são os mais complexos. Você só aprendeu sobre sistemas monolitos MVC que, de novo, é o piso de complexidade.

Além de arquitetura de software existem também, naturalmente, os critérios de qualidade. Performance, segurança, escalabilidade, manutenibilidade etc. Quando você tem critérios de qualidade à serem atendidos, tudo fica mais complexo.

Obs.: você aprenderá sobre isso quando estudar sobre requisitos funcionais e não funcionais no seu curso.

E backend é como qualquer outro software, então pode ter operações complexas como qualquer outro software. Olha o Google Docs, por exemplo. Ele é uma suíte de escritórios inteira implementada no backend. Olha o backend da AWS ou Google Cloud, por exemplo. São sistemas gerenciando infraestrutura complexa, todo implementado em backend.

Entre outros detalhes. Então não, desenvolvimento backend não é só CRUD. Existe um mundo inteiro além do CRUD. Aprender essas coisas é o que diferencia o fazedor de CRUD do engenheiro de software.

1

Hmmm, obrigado! Esse pensamento surgiu porque tudo que eu estava vendo e aprendendo parecia ser sobre como fazer um CRUD novo. Quando fui tentar ajudar em outros projetos open source, percebi que parecia que tudo que eu estava aprendendo era apenas “mais um CRUD” enão conseguia ajudar em anda outros porojetos kkkkk.

Mas, enfim, valeu pela resposta. Deu para pegar uma perspectiva diferente.

1

Não querendo ser injusto com a galera do frontend, mas seria mais certo dizer que frontend é coletar dados, exibir dados coletados, processados e recuperados, mas isso também seria injusto com eles.

Mas respondendo sua pergunta de forma bem simples, o backend é responsável por todo o funcionamento, processamento, armazenamento, recuperação, comunicação, etc.

Somente com o tempo, muitos projetos e muito trabalho, começamos a separar e distinguir bem o que cada um é, e principalmente a grande importância do backend.

1
1
1

O CRUD é uma das primeiras operações ensinadas ao estudar criação de APIs, mas o desenvolvimento back-end envolve muitos outros desafios. Alguns conceitos importantes que você deve estudar:

  • Integração com banco de dados relacional.
  • Código Limpo.
  • Testes automatizados.
  • Padrões de Arquitetura.
  • WebServers (nginx, apache, etc).
  • Banco de dados não relacionais.
  • Técnicas de integração de sistemas e conceitos básicos de redes.

Só quis citar alguns conceitos, na verdade, o desenvolvedor back-end tem que conhecer o básico de cada um desses conceitos e muitos outros, não significa que ele deve dominar todos, porque cada sistema requer tecnologias diferentes, o desenvolvedor deve saber quais escolher, e se aprofundar nas tecnologias e conceitos adotados.

Para ter uma visão abrangente dos conhecimentos que o desenvolvedor deve obter, sugiro ler Backend Developer Roadmap.

0