Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Aluna: Mariana Rodrigues de Souza 
Matrícula: 1200103854 
 
 
 
Curso de Ciência da Computação 
 
 
 
 
ATIVIDADE DE DESENVOLVIMENTO FULLSTACK 
 
 
 
 
 
 
 
 
 
 
 
Rio de Janeiro 
Outubro de 2025 
Fundamentos da Infraestrutura Técnica no Desenvolvimento 
Fullstack 
O desenvolvimento fullstack vai muito além da simples integração entre front-end e 
back-end. Ele exige uma base sólida de infraestrutura técnica, capaz de unificar tecnologias, 
padronizar ambientes e garantir a comunicação fluida entre as diferentes camadas da 
aplicação. Quando uma equipe de desenvolvimento, especialmente em startups ou times 
pequenos, negligencia essa base, surgem problemas recorrentes, como conflitos de versão, 
falhas de integração e dificuldade de escalar o sistema. Por isso, a definição de uma 
infraestrutura comum é um passo essencial para o sucesso de qualquer projeto fullstack 
moderno. 
1. Conceito de infraestrutura comum e sua relevância 
A infraestrutura comum pode ser entendida como o conjunto de recursos, ferramentas e 
padrões técnicos que sustentam o desenvolvimento de uma aplicação de ponta a ponta. Ela 
atua como uma ponte entre as camadas da aplicação, permitindo que o front-end e o back-end 
interajam de forma eficiente e padronizada. 
Em termos práticos, essa infraestrutura define como o ambiente de desenvolvimento será 
configurado, quais tecnologias serão utilizadas, quais dependências serão instaladas, e como 
os serviços se comunicarão entre si. Sua principal função é garantir a interoperabilidade, ou 
seja, a capacidade de diferentes módulos, linguagens e ferramentas funcionarem em conjunto 
sem causar incompatibilidades. 
No contexto de uma startup, onde o tempo é curto, os recursos são limitados e a agilidade é 
fundamental, uma infraestrutura comum evita retrabalho e inconsistências. A ausência dessa 
padronização resulta no temido "ambiente Snowflake", onde cada máquina de desenvolvedor 
ou servidor de produção se torna única e difícil de replicar, tornando a depuração de falhas 
um processo custoso e demorado. Uma base técnica sólida permite que novos 
desenvolvedores entendam rapidamente o projeto, reduz o risco de falhas e facilita o deploy 
automatizado do sistema. Além disso, proporciona maior segurança, já que os padrões 
técnicos reduzem vulnerabilidades e garantem que o ambiente de produção espelhe fielmente 
o de desenvolvimento. Em suma, a infraestrutura comum transforma a incerteza da integração 
em um contrato técnico previsível e auditável. 
2. Divisão arquitetônica em camadas 
Um dos pilares da infraestrutura fullstack é a organização da aplicação em camadas 
arquitetônicas. Essa estrutura separa responsabilidades e facilita tanto o desenvolvimento 
quanto a manutenção do sistema. As três principais camadas são: 
● Camada de apresentação (Front-end): É responsável pela interface com o usuário. 
Aqui são utilizadas tecnologias como HTML, CSS e JavaScript, além de frameworks 
modernos como React, Angular ou Vue.js. Essa camada envia requisições ao servidor 
e exibe as respostas de forma interativa e visual. 
● Camada de lógica de aplicação (Back-end): Nessa camada reside a “inteligência” 
do sistema. É onde se processam as regras de negócio, validações e integrações com 
bancos de dados ou APIs externas. Pode ser desenvolvida com linguagens como 
Node.js, Java, Python ou C#, e é responsável por receber as requisições do front-end, 
tratá-las e retornar respostas adequadas. 
● Camada de persistência (Banco de dados): Armazena e gerencia as informações 
utilizadas pelo sistema. Os bancos de dados podem ser relacionais (como MySQL ou 
PostgreSQL) ou não relacionais (como MongoDB), e se comunicam com o back-end 
por meio de consultas e comandos estruturados. 
A comunicação entre a Camada de Apresentação e a Camada de Lógica é invariavelmente 
realizada por meio de APIs (Interface de Programação de Aplicações), sendo as APIs 
RESTful ou GraphQL os padrões de mercado. A definição de um contrato de API claro é um 
elemento não-negociável da infraestrutura comum, garantindo que a evolução de um lado não 
quebre o outro. De forma similar, a Camada de Lógica frequentemente utiliza ferramentas de 
Mapeamento Objeto-Relacional (ORM) para se comunicar com a Camada de Persistência, 
isolando a aplicação da complexidade das consultas SQL diretas. Essa divisão traz benefícios 
como a modularidade, a facilidade de manutenção e o reaproveitamento de código, 
permitindo que cada camada evolua de forma independente. 
3. Práticas essenciais para configuração do ambiente 
Um ambiente de desenvolvimento padronizado é o coração de uma boa infraestrutura 
fullstack. Ele garante que todos os membros da equipe utilizem as mesmas versões de 
linguagens, bibliotecas e configurações, evitando conflitos e comportamentos imprevisíveis. 
As principais práticas para alcançar essa padronização incluem: 
● a) Controle de dependências: Cada projeto possui bibliotecas e pacotes específicos, 
e o gerenciamento adequado dessas dependências é essencial. Ferramentas como npm 
(Node.js), pip (Python) e Maven (Java) permitem registrar todas as dependências no 
projeto (ex: através de arquivos package.json ou requirements.txt), facilitando a 
instalação automática e mantendo o ambiente consistente entre os desenvolvedores. 
● b) Variáveis de ambiente: As variáveis de ambiente armazenam informações 
sensíveis ou específicas de cada ambiente (como senhas, tokens de API e URLs de 
banco de dados). Elas evitam que dados confidenciais fiquem expostos no 
código-fonte e permitem configurar facilmente o sistema para diferentes contextos — 
por exemplo, um banco de dados local no ambiente de desenvolvimento e outro na 
produção. 
● c) Organização de diretórios: Manter uma estrutura de pastas bem definida é 
essencial para a clareza e manutenção do projeto. Geralmente, o código é dividido em 
pastas como /src (código-fonte), /tests (testes automatizados), /public (arquivos 
estáticos), e /config (configurações). Essa padronização facilita a navegação e ajuda 
novos integrantes a entenderem rapidamente a arquitetura do sistema. 
● d) Containers: O uso de containers, como o Docker, revolucionou a forma de 
configurar ambientes. Com containers, é possível empacotar toda a aplicação com 
suas dependências e configurações em uma imagem leve e portátil, garantindo que o 
sistema funcione da mesma forma em qualquer máquina. O Docker não só elimina o 
famoso problema do “funciona no meu computador”, como se torna a espinha dorsal 
de qualquer pipeline de Integração Contínua e Entrega Contínua (CI/CD). Um 
container testado em desenvolvimento é o mesmo artefato que é promovido para 
produção, minimizando o risco de regressões e otimizando a escalabilidade. 
4. O ciclo técnico de requisição e resposta HTTP 
No centro da comunicação entre o front-end e o back-end está o protocolo HTTP (Hypertext 
Transfer Protocol). Ele define o ciclo técnico de requisição e resposta, fundamental para o 
funcionamento das aplicações web. 
Esse ciclo ocorre em etapas simples, mas essenciais: 
1. O cliente (navegador ou aplicação front-end) envia uma requisição HTTP ao servidor, 
utilizando verbos ou métodos que definem a ação pretendida (como GET para buscar 
dados, POST para criar um recurso, PUT/PATCH para atualizar ou DELETE para 
remover). 
2. O servidor (back-end) recebe essa requisição, interpreta o pedido e executa as ações 
necessárias — como consultar o banco de dados, validar dados ou aplicar regras de 
negócio. 
3. Em seguida, o servidor envia uma resposta HTTP de volta ao cliente, contendo um 
código de status (como 200 OK para sucesso, 404 Not Found para erro de recurso ou 
500 Internal Server Error para falha no servidor) e, geralmente, um corpo de resposta 
formatado em JSON (JavaScript Object Notation) para transferência eficiente de 
dados. 
4. Por fim, o cliente interpreta essa resposta e atualiza a interfacede acordo, exibindo as 
informações para o usuário por meio de requisições assíncronas (como AJAX ou 
Fetch API), permitindo a atualização dinâmica e parcial da página sem a necessidade 
de recarregar todo o conteúdo. 
Esse processo é contínuo, rápido e forma a base de toda a comunicação moderna na web, 
exigindo que a infraestrutura garanta a performance e a segurança em cada endpoint (ponto 
de acesso da API). 
5. Conclusão 
A construção de uma aplicação fullstack eficiente não depende apenas de boas práticas de 
código, mas de uma infraestrutura técnica bem planejada. Ela é responsável por unificar 
tecnologias, manter a coerência entre ambientes, padronizar processos e garantir a 
comunicação fluida entre as camadas do sistema. 
Definir uma infraestrutura comum é, portanto, um investimento em organização, segurança e 
produtividade. Em um cenário cada vez mais dinâmico e competitivo, essa base sólida 
permite que equipes — mesmo pequenas, como em uma startup — desenvolvam soluções 
escaláveis, seguras e sustentáveis a longo prazo. 
Assim, o papel da infraestrutura deixa de ser apenas técnico e passa a ser estratégico, 
sustentando toda a lógica e a eficiência do desenvolvimento fullstack. Ao mitigar o risco de 
incompatibilidades e automatizar a entrega de software, a infraestrutura técnica comum 
permite que o time se concentre na inovação e na entrega de valor para o negócio, em vez de 
se perder na gestão de complexidades ambientais. 
 
Referências 
 
MOZILLA. HTTP: HyperText Transfer Protocol. MDN Web Docs. Disponível em: 
https://developer.mozilla.org/pt-BR/docs/Web/HTTP. Acesso em: 30 out. 2025. 
 
ALURA. Full Stack: o que é, o que faz e um Guia desta Profissão. Alura. Disponível em: 
https://www.alura.com.br/artigos/full-stack. Acesso em: 30 out. 2025. 
 
AMAZON WEB SERVICES (AWS). Melhores práticas para desenvolver e implantar 
infraestrutura em nuvem com o CDK AWS. Disponível em: 
https://docs.aws.amazon.com/pt_br/cdk/v2/guide/best-practices.html. Acesso em: 30 out. 
2025. 
 
DOCKER. What is Docker? Get Started. Disponível em: 
. Acesso em: 30 out. 2025. 
 
MICROSOFT AZURE. Best practices for RESTful web API design. Disponível em: 
. Acesso em: 
30 out. 2025. 
 
 
https://developer.mozilla.org/pt-BR/docs/Web/HTTP
https://developer.mozilla.org/pt-BR/docs/Web/HTTP
https://www.alura.com.br/artigos/full-stack
https://www.alura.com.br/artigos/full-stack
https://docs.aws.amazon.com/pt_br/cdk/v2/guide/best-practices.html
https://docs.aws.amazon.com/pt_br/cdk/v2/guide/best-practices.html
	Fundamentos da Infraestrutura Técnica no Desenvolvimento Fullstack 
	1. Conceito de infraestrutura comum e sua relevância 
	2. Divisão arquitetônica em camadas 
	3. Práticas essenciais para configuração do ambiente 
	4. O ciclo técnico de requisição e resposta HTTP 
	5. Conclusão

Mais conteúdos dessa disciplina