Mudanças entre as edições de "Manual do Desenvolvedor"
De Grupo Acert
Linha 88: | Linha 88: | ||
É recomendação a utilização de alertas no formato “\\TODO: xxxxx” para indicar pontos de atenção dentro do código. A ferramenta Eclipse possui um conjunto de itens de tarefas que é retirado dos itens destes alertas. Opcionalmente no projeto pode-se utilizar neste padrão o formato “\\TODO: (<login>) xxxx” para indicar que uma mensagem é para um integrande da equipe especificado pelo login. | É recomendação a utilização de alertas no formato “\\TODO: xxxxx” para indicar pontos de atenção dentro do código. A ferramenta Eclipse possui um conjunto de itens de tarefas que é retirado dos itens destes alertas. Opcionalmente no projeto pode-se utilizar neste padrão o formato “\\TODO: (<login>) xxxx” para indicar que uma mensagem é para um integrande da equipe especificado pelo login. | ||
+ | |||
+ | == Regras de Nomeação == | ||
+ | |||
+ | 4.1Regra Geral pág. 10 até pag. 11 (5.Declaração) | ||
+ | |||
+ | == Expressões e Sentenças == | ||
+ | |||
+ | Check Style | ||
+ | |||
+ | == Recomendações == | ||
+ | |||
+ | '''Variáveis que alocam objetos utilizando classes de I/O devem ser desalocadas explicitamente''' | ||
+ | |||
+ | Os métodos que utilizam a alocação de variáveis com objetos da classe I/O deve ter a responsabilidade de desalocar estas variáveis. Como regra, as classes que abrirem recursos devem ter a responsabilidade de fecha-los. Também valendo para a alocação. | ||
+ | |||
+ | == Evitar o armazenamento de coleções como variáveis estáticas == | ||
+ | |||
+ | Objetos que representem coleções podem armazenar vários outros objetos, fazendo com que possa ocorrer memory leaks. O armazenamento de objetos em coleções estáticas serão referenciados por essa coleção por todo o ciclo de vida do programa, se estes objetos não forem removidos explicitamente da coleção o coletor de lixo não vai remove-los. | ||
+ | |||
+ | Exemplo | ||
+ | |||
+ | package com.acme.dados; | ||
+ | import java.util.ArrayList; | ||
+ | public class PessoaFisicaHelper { | ||
+ | public static ArrayList colecao = new ArrayList (); // NÃO FAZER | ||
+ | public void add(Pessoa p) { | ||
+ | colecao.add(p); // pessoa nunca mais será liberado | ||
+ | } | ||
+ | |||
+ | NOTA: Se for extremamente necessário este tipo de armazenamento, limitar a quantidade de objetos armazenados. Este tipo de necessidade deve ser avisado e planejado antecipadamente. |