Hoje em dia, estudos afirmam que 80% do valor gasto com sofware é relacionado a manutenção de aplicações. Mas esse tempo pode ser poupado já no inicio do trabalho.
O que é?
Um princípio da engenharia de software, que visa separar preocupações, modularizar aplicação de forma que cada módulo esteja focado em resolver apenas um único problema.
O foco desse conceito é separar preocupações, para resolver uma de cada vez.
Estes conceitos, quando combinados, atingem um objetivo principal que, na maioria das vezes, é um software, uma página da Web ou um hardware.
A Separação de Conceitos normalmente ocorre em softwares de grande porte ou em projetos que são desenvolvidos em mais de uma linguagem de programação.
Para que serve?
- Esse conceito é imprescindível para quem deseja ter uma arquitetura madura;
- Geralmente quando se inicia a saga de um desenvolvedor, foca-se muito em linguagens de programação, algoritmos, banco de dados, enfim, tudo é muito novo. O foco é fazer o código rodando, a tela funcionando e posteriormente, uma vez já agindo profissionalmente, ver o nosso cliente feliz.
- Com o passar do tempo nos deparamos com um tempo maior para dar manutenção, códigos que se repetem, concertos que causam erros, ou seja, começamos a ter pesadelos com um mau design de software. É aqui que entra esse conceito.
- Programadores Web praticam a Separação de Conceitos indiretamente. Para construir uma página, diferentes linguagens são utilizadas, cada uma com um propósito em particular. Geralmente, para esses projetos, são utilizadas 4 linguagens: HTML, CSS, PHP e JavaScript, nas quais poderemos intitulá-las como agentes de “conceitos”.
Quais são os efeitos positivos e negativos?
- Facilidade de organização de tarefas e visualização de resultados;
- Algumas situações podem se tornar mais burocráticas;
- Maior organização das atividades.
Qual o exemplo prático?
** Seguindo a ideia de programação web, a separação de conceitos que ocorre nesse caso indiretamente é:**
Iniciamos com a divisão de pastas, começando com o HTML, que é utilizado para estruturar e formatar o conteúdo de uma página, como a inserção de tabelas e marcação de sessões (título, cabeçalho e corpo). A linguagem CSS, por sua vez, edita a apresentação do conteúdo gerado pela linguagem HTML, fornecendo estilos baseados em identificadores (id) e classes (class) dos componentes da página. O back-end (“retaguarda”) de uma página, responsável por manipular informações do banco de dados e executar operações de tratamento e envio de informações são feitas pela linguagem PHP. E, por fim, o JavaScript é empregado para executar scripts do lado do cliente, comportando-se de forma assíncrona para alterar a exibição do conteúdo sem comunicação com o servidor.
Links de apoio:
Top comments (0)