|
Usuários |
|
114 Usuários Online
|
|
[Artigos]
Dicas para o desenvolvimento de um software – Parte 3 |
Publicado por rboaro : Terça, Dezembro 25, 2012 - 11:23 GMT-3 (640 leituras)
1 Comentário Enviar para um amigo Versão para impressão
|
Este é o terceiro artigo sobre algumas dicas para o desenvolvimento de um software com qualidade e uma boa funcionalidade. Aproveito a oportunidade para agradecer a todos que leram e compartilharam o primeiro e o segundo artigo sobre este assunto. Espero que as dicas neste artigo tragam um pouco mais de conhecimento aos leitores, e mais uma vez, sintam-se à vontade para expressar qualquer opinião sobre este texto.
Padronização de código
Este item é bastante importante quando o projeto é desenvolvido por mais de uma pessoa, ou melhor, por uma equipe de desenvolvimento. Definir uma padronização do código auxilia na legibilidade e na compreensão do que está sendo executado na aplicação. Identar o código nos blocos de condição if-else e nos laços de repetição são uma das práticas que ajudam os desenvolvedores a identificar facilmente a execução de um método. Identação significa “estruturar” as linhas do código em tabulações de acordo com o nível da instrução. A figura abaixo exemplifica um código bem identado utilizando a linguagem C++:

Exemplo de identação de código
Quando há uma grande quantidade de aninhamento de blocos no código-fonte, a identação se torna ainda mais importante para associar o início e o fim de cada bloco aninhado. Algumas ferramentas de desenvolvimento, como o NetBeans e o Visual Studio, possuem o recurso de destacar o aninhamento quando o cursor do mouse é posicionado na chave que abre ou fecha o bloco. Desenvolvedores em Delphi também podem adquirir essa funcionalidade com os addons cnWizards ou GExperts, ambos gratuitos.
As variáveis, classes, métodos e funções também devem possuir nomes sugestivos de acordo com o seu objetivo. Portanto, uma variável com o nome “SomaTotalPedidos” é bem mais fácil de ser identificada do que uma variável chamada “vSTotPed”. O código fica mais legível quando se trabalha com esse tipo de nomenclatura, mesmo que o nome seja ligeiramente maior.
Tratamento de exceções
Por mais que o desenvolvedor faça testes na aplicação antes de publicá-la, é natural que alguns erros ainda possam ocorrer inesperadamente para o usuário. Estes erros são decorrentes de problemas de semântica, gravação de dados inconsistentes, falhas de acesso à memória ou até mesmo eventos inesperados do sistema operacional. No ambiente de programação, os erros são conhecidos tecnicamente como exceções. Uma boa prática de programação exige que exista um tratamento de exceções em todos os pontos mais sensíveis do código. Inserções e atualizações no banco de dados são exemplos de operações que possivelmente podem retornar algum erro para o usuário. A recomendação é envolver este código em um bloco de tratamento de exceção e executar uma função de rollback (desfazer as alterações no banco de dados) caso algum erro seja encontrado. Ao utilizar tratamento de exceções, também é possível criar mensagens mais sólidas para reportar a exceção ao usuário. Dessa forma, faz mais sentido exibir a mensagem “Ocorreu um erro. Tente novamente.” ao invés de “An error occurred. Access violation at address 004068EC”. Estes tipos de mensagens em inglês técnico geralmente são desconhecidas para o usuário e não trazem nenhum tipo de informação para auxiliá-lo.
Atualização do sistema
A cada atualização do sistema, normalmente é necessário substituir o executável no computador do cliente, rodar scripts SQL e alterar parâmetros de configuração. Sendo assim, é preciso ir até o cliente e fazer todo o processo manualmente no computador local. Para evitar a viagem, uma alternativa é realizar a atualização remotamente através de softwares como o TeamViewer, LogMeIn ou VNC. O problema surge quando há dezenas ou até centenas de computadores para serem atualizados. Se a atualização for feita em um computador por vez, pode demorar dias para terminar a atualização em todos as máquinas.
Portanto, ao invés de realizar a atualização manualmente, crie um módulo exclusivo para automatizar este processo. O objetivo é permitir que o próprio sistema verifique novas versões, baixe o arquivo de atualização e realize todo o processo automaticamente, sem a intervenção do usuário. Observe que a atualização automática está presente na maioria dos softwares atuais, como navegadores e antivírus. Este tipo de módulo não é simples de ser desenvolvido, mas é plenamente funcional e reduz o trabalho de atualizar vários computadores simultaneamente.

Exemplo de tela de atualização
Programação Orientada a Objetos
No mundo da programação, a maioria dos métodos e componentes são modelados em classes para organizar e facilitar a reutilização de código e a manipulação de objetos. A princípio, trabalhar com classes e objetos pode ser relativamente complexo, mas sem dúvida garante um maior controle de tudo o que acontece dentro da aplicação. Através da Programação Orientada a Objetos (POO), é possível reaproveitar ou reduzir várias linhas de código por meio de técnicas como abstração, herança e polimorfismo. Além disso, definir a visibilidade dos atributos de uma classe e criar métodos privados para manipulação de valores permitem que a estrutura interna da aplicação não seja exposta a nível de usuário. Há muito o que se falar sobre Programação Orientada a Objetos, visto que o seu conceito é bem abrangente e funcional diante do ponto de vista da Engenharia de Software.

Principais elementos da P.O.O.
Durante a fase de projeto, a Programação Orientada a Objetos é amplamente praticada por projetistas e analistas de sistemas através da linguagem UML para modelagem de dados. O Diagrama de Classes, por exemplo, fornece uma grande quantidade de informações detalhadas para simplificar a modelagem das classes e das tabelas do banco de dados. Em conclusão, pode-se dizer que a utilização da POO evita que o sistema sofra constantes alterações e adaptações após a implantação, reduzindo o tempo de desenvolvimento e minimizando os erros de implementação.
Muito obrigado mais uma vez pela leitura!
Link Original do Artigo:
http://www.subrotina.com.br/dicas-para-o-desenvolvimento-de-um-software-com-qualidade-parte-iii/
|
|
Comentários | |
| | Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos. |
|
|
Edição 112 |
|
|
50 Programas Fontes |
|
|
Produtos |
|
|