Frameworks de Desenvolvimento

Aqui está o quarto artigo sobre as abstrações da computação, sob a perspectiva do desenvolvimento de sistemas.

As linguagens de desenvolvimento atendem as necessidades para construção de aplicações desde sistemas operacionais e jogos até complexos sistemas corporativos. Mas o poder delas tem o custo de aumentar a capacitação do desenvolvedor para que consiga explorar todos os recursos que oferecem.

Alguém que precise construir uma típica aplicação LoB necessita trabalhar com diferentes aspectos do sistema: ler e gravar dados, trabalhar com esses dados e construir formas do usuário interagir com ele. Para realizar esses aspectos, que são parte da arquitetura do sistema, uma linguagem como Java disponibiliza APIs (Application Program Interfaces) que são conjuntos de instruções para realizar tarefas específicas como manipular arquivos, enviar dados, etc.

Ter um grande número de APIs dá flexibilidade, o que seria um benefício pois aumenta as chances de  atender por completo os requisitos necessários para as aplicações. Mas há um risco de se ter uma falta de padronização, tornando mais complexa a manutenção do código. Outro ponto é que pode-se adotar uma codificação que não seja a mais adequada para o cenário de uso da aplicação. Um exemplo é construir uma aplicação web sem se preocupar com a concorrência no uso de recursos, decorrente do acesso simultaneo por vários usuários.

Com frameworks de desenvolvimento, o que se busca é abstrair a complexidade do uso de linguagens de programação (com suas respectivas APIs) em uma forma onde o desenvolvedor não precise lidar com um número muito grande de instruções à sua disposição. Esses frameworks buscam diminuir a quantidade de linhas de código escritas, reduzindo o tempo de codificação e reduzindo a quantidade de instruções que podem falhar.

Desenvolver frameworks é por si só uma tarefa complexa, comparável à de construir sistemas em si. Como eles tem a característica do reuso, que é o aproveitamento deles em diferentes projetos de construção de sistemas, a confiabilidade deles é indispensável porque senão todas as aplicações que utilizaram esses frameworks podem falhar caso tenham algum erro de programação.

A disseminação de uso de códigos baseados em software livre trouxe como benefício o aparecimento de inúmeros frameworks. A colaboração inerente a essa prática de desenvolvimento faz com que centenas ou mesmo milhares de desenvolvedores testem na prática os frameworks e indiquem as melhorias a serem feitas, até mesmo corrigindo os eventuais bugs que descubram.

Há inúmeros exemplos de frameworks que seguem o modelo de software livre, como o Hibernate. Até mesmo para os desenvolvedores que trabalham com a plataforma .NET da Microsoft contam com o Codeplex para usar frameworks prontos para uso em seus projetos.

Comentar

  Country flag

biuquote
  • Comentário
  • Pré-visualização
Loading

Sobre o Autor

Experiência de 25 anos na área de informática, trabalhando com programação orientada a objetos desde 1990, arquitetura cliente-servidor desde 1994, aplicações web desde 1997 e arquitetura distribuída desde 1999. Conhecimento de bancos de dados relacionais, ambientes de desenvolvimento visual, criação de páginas Web, metodologias de desenvolvimento e administração de risco. Realizações em levantamentos de sistemas, avaliação de controles, coordenação de projetos de desenvolvimento, auditoria e consultoria.

Meses