A Refatoração é uma forma disciplinada de reestruturar o código quando pequenas mudanças são feitas nele para melhorar o design. Um aspecto importante de uma refatoração é que ela melhora o design sem mudar a semântica do design; uma refatoração não adiciona nem remove funcionalidade.
A refatoração permite evoluir o código lentamente no tempo, de forma que se tenha uma abordagem iterativa e incremental para a implementação. Alguns tipos de refatoração:
- Refatoração de código. Normalmente conhecida como refatoração, é a refatoração do código fonte programado. Exemplos de refatoração de código: Renomear Métodos, Encapsular Campos, Extrair Classes, Introduzir Afirmações e Especializar Métodos.
- Refatoração de base de dados. Uma refatoração de base de dados é uma simples mudança no esquema da base de dados que melhore seu design mantendo suas semânticas comportamental e informativa. Exemplos de refatoração de base de dados: Renomear Colunas, Dividir Tabelas, Mover um Método para a Base da Dados, Substituir LOB por Tabela, Associar Constraints as Colunas e Usar Fontes Oficiais de Dados.
- Refatoração de interface de usuário (UI). Uma refatoração de interface de usuário é uma simples mudança na interface mantendo sua semântica. Exemplos de refatoração de interface de usuário: Alinhar Campos de Entrada, Aplicar Tamanho Comum aos Botões, Aplicar uma Fonte Comum, Indicar Formato, Reescrever o Texto em Voz Ativa e Aumentar o Contraste das Cores.
Fontes de informação:
http://www.refactoring.com
http://www.agiledata.org/essays/databaseRefactoring.html
Artigo falando sobre refatoração no eclipse:
http://www.devmedia.com.br/artigo-java-magazine-44-refatoracao-no-eclipse/8589
Gabarito Errado
O Eclipse é uma plataforma de desenvolvimento de software livre extensível, baseada em Java. Por si só, é simplesmente uma estrutura e um conjunto de serviços para desenvolvimento de aplicativos de componentes de plug-in. Felizmente, o Eclipse vem com um conjunto padrão de plug-ins, incluindo as amplamente conhecidas Ferramentas de Desenvolvimento Java (JDT).
Embora a maioria dos usuários esteja satisfeita em usar o Eclipse como um ambiente de desenvolvimento integrado (IDE) Java, a plataforma ambiciona mais. O Eclipse também inclui o Plug-in Development Environment (PDE), que é de interesse principalmente daqueles que desejam estender o Eclipse, visto que ele permite desenvolver ferramentas que se integram perfeitamente ao ambiente do Eclipse. Como tudo no Eclipse é plug-in, todos os desenvolvedores de ferramentas têm um campo de ação nivelado para oferecer extensões ao Eclipse e fornecer um IDE unificado e consistente aos usuários.
Essa paridade e consistência não se limitam às ferramentas de desenvolvimento Java. Embora o Eclipse seja escrito na linguagem de programação Java, seu uso não se limita à linguagem Java. Por exemplo, estão disponíveis ou planejados plug-ins que incluem suporte para linguagens de programação como C/C++ e COBOL. A estrutura do Eclipse também pode ser usada como base para outros tipos de aplicativos não relacionados ao desenvolvimento de software, com sistemas de gerenciamento de conteúdo.
Um grande exemplo de aplicativo baseado em Eclipse é o IBM® Rational® Software Architect (veja Recursos), que compõe a base da família de ferramentas de desenvolvimento Java da IBM.
"Retroceder Nunca Render-se Jamais !"
Força e Fé !
Fortuna Audaces Sequitur !