Boas práticas de programação dentro do AMADIS

Da AMADIS

Revisão das 17h34min de 21 de Junho de 2006 por Juliano (discussão | contribs)
(dif) ← Revisão anterior | Revisão actual (dif) | Revisão seguinte → (dif)
Peca esboço.gif

'Este artigo é somente um esboço para um artigo maior.
'Quer ajudar o AMADIS? Acrescente alguma informação!

  • Siga os padrões
  • Documentação
  • Separação entre MVC
  • como construir uma classe

Índice

Introdução

Escopo e objetivo

Motivação

Ao longo do vários projetos que financiaram ou contribuíram no desenvolvimento do AMADIS, vários programadores e designers participaram da equipe. Muitos deles eram jovens estudantes de computação em sua primeira bolsa como programador. Essa inexperiência muitas vezes gerava o uso de práticas não-recomendáveis na programação, o que gerava problemas futuros no sistema. O novo desenvolvedor, também não tem a experiência necessária para entender a necessidade de certas práticas de programação como o desenvolvimento em camadas, a documentação ou o tratamento de exceções.

Tratando-se o LEC de um laboratório de pesquisa, tem mais sentido auxiliar formar esses programadores no uso de boas técnicas de programação do que simplesmente procurar um novo sujeito. A formação faz parte do papel da universiade.

Além disso, quando se trabalha com múltiplos desenvolvedores é necessário se estabelecer uma série de regras e práticas comuns aquela comunidade. O sistema não pode se constituir como um bricolagem de trechos de código, ele deve ser coeso.

Uso de sistemas de Versionamento

  • CVS e Subversion


Desenvolvimento

  • Progressive enhancement , graceful degradation
  • mantenha a simplicidade

Como construir uma classe

Erros e exceções

  • Quando realizando uma query

<codehighlight language=php> <? try {

   $this->cProjects = $_SESSION['user']->getLastProjectsComments();
   $this->cDiary = $_SESSION['user']->getLastDiaryComments();

} catch(CMDBQueryError $e) {

   $this->exception = $e;

} </codehighlight>

no __toString;

<codehighlight language=php> if(!empty($this->exception)) {

   parent::add(new AMErrorReport($this->exception));
   return parent::__toString();

} </codehighlight>

Ferramentas pessoais
Parceiros
















SourceForge.net Logo

Supported by Cenqua