Ambiente de desenvolvimento integrado

O Ambiente de Desenvolvimento Integrado (do inglês Integrated Development Environment, mais conhecido pela sigla IDE) é um programa de computador que reúne características e ferramentas de apoio ao desenvolvimento de software com o objetivo de agilizar este processo;[1][2][3] facilitando a técnica de Desenvolvimento Rápido de Aplicações (do ingles Rapid Application Development - RAD), tornando o programador mais produtivo com os recursos de: edição de código, transformação em executável ​​e, depuração.[3]

Anjuta, uma IDE de C e C++ para o ambiente GNOME.

Características gerais

editar

As características e ferramentas mais comuns encontradas nos IDEs são:

  • Interface Gráfica de Usuário (GUI): a principal diferença entre o IDE e o editor de código, pois o editor não possui a GUI;[3]
  • Editor - edita o código-fonte do programa escrito na(s) linguagem(ns) suportada(s) pela IDE;[3]
  • Destaca a sintaxe da linguagem de programação no editor (syntax color highlighting) e completa o código no editor (auto-completion code);[3]
  • Depurador (debugger)[3] - auxilia no processo de encontrar e corrigir defeitos no código-fonte do programa, na tentativa de aprimorar a qualidade de software;
  • Compilador (compiler)[3] - compila o código-fonte do programa, editado em uma linguagem específica e a transforma em linguagem de máquina;
  • Linker - liga (linka) os vários "pedaços" de código-fonte que estão na linguagem de máquina, em um programa executável, para ser usado no dispositivo computacional, como por exemplo o computador;
  • Modelagem de dados (modeling) - criação do modelo de classes, objetos, interfaces, associações e interações dos artefatos envolvidos no software com o objetivo de solucionar as necessidades-alvo do software final;
  • Geração de código - característica mais explorada em Ferramentas CASE, a geração de código também é encontrada em IDEs, contudo com um escopo mais direcionado a templates de código comumente utilizados para solucionar problemas rotineiros. Todavia, em conjunto com ferramentas de modelagem, a geração pode gerar praticamente todo o código-fonte do programa com base no modelo proposto, tornando muito mais rápido o processo de desenvolvimento e distribuição do software;
  • Distribuição (deploy) - auxilia no processo de criação do instalador do software, ou outra forma de distribuição, seja discos ou via internet;
  • Testes Automatizados (automated tests) - realiza testes no software de forma automatizada, com base em scripts ou programas de testes previamente especificados, gerando um relatório, assim auxiliando na análise do impacto das alterações no código-fonte. Ferramentas deste tipo mais comuns no mercado são chamadas robôs de testes;
  • Refatoração (refactoring) - consiste na melhoria constante do código-fonte do software, seja na construção de código mais otimizado, mais limpo e/ou com melhor entendimento pelos envolvidos no desenvolvimento do software. A refatoração, em conjunto com os testes automatizados, é uma poderosa ferramenta no processo de erradicação de "bugs", tendo em vista que os testes "garantem" o mesmo comportamento externo do software ou da característica sendo reconstruída.
  • Criação de arquivo executável.[3]

Benefícios

editar

Usar uma IDE pode trazer diversos benefícios para as pessoas envolvidas no projeto, como os Stakeholders, programadores, empresas e clientes. O uso de uma IDE adequada pode aumentar a produtividade, diminuindo gastos e aumentando o desempenho.[3] Com ela é possível medir resultados, fazer a verificação e correção de erros e integrar tecnologias.

Exemplos

editar

Referências

  1. Klein dos Santos, Alexandro. «Os IDE's (Ambientes de Desenvolvimento Integrado) como ferramentas de trabalho em informática» (PDF). Universidade Federal de Santa Maria. Consultado em 5 de maio de 2016 
  2. Casavella, Eduardo. «Ambientes Integrados de Desenvolvimento em Linguagem C». Intellectuale. Consultado em 5 de maio de 2016 
  3. a b c d e f g h i «20 Most Popular Python IDEs in 2024: Code Like a Pro». Simplilearn Solutions (em inglês). Consultado em 8 de agosto de 2024 
  Este artigo sobre informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.