Programa do Curso
A necessidade de uma programação orientada para os objectos
-
Uma tentativa de refletir o mundo real na programação
-
As origens e a evolução da programação orientada para objectos
-
A abordagem da programação orientada para objectos Programowanie obiektowe em termos dos princípios KISS e DRY
Classes e objectos
-
Ideias e entidades na filosofia de Platão
-
O papel das classes
-
Implementação de classes através de objectos
-
Classes, propriedades e métodos estáticos
Convenções de nomeação e codificação
-
Nomeação de classes
-
Nomeação de propriedades e métodos
-
Nomeação de pacotes e pastas
-
Outras convenções
Estrutura das classes
-
Propriedades/campos como descrição do estado do objeto
-
Acessores
-
Métodos como implementação de funcionalidades
Modelação e representação gráfica de classes
- Análise de requisitos
- Modelação da estrutura e das relações entre classes
- Descrição de objectos de negócio
- Diagramas EER
- Diagrama de classes UML
Paradigmas de programação orientados para os objectos
-
Conceito de paradigma
-
Hermetização
-
Abstração
-
Herança
-
Polimorfismo
Conceção e implementação da camada de abstração
-
Classes abstractas
-
Interfaces
-
Traços
-
Cláusulas aninhadas
-
Classes genéricas
Criação de objectos
-
Formas de criação de objectos
-
O papel do construtor
-
Padrão de fábrica
Relações entre classes
-
Agregação
-
Composição
-
Decomposição de dependências - Desacoplamento
-
Injeção de dependência, contentores DIC
-
Padrão de mediador
Organização do código
-
Conceção de código reutilizável
-
Estrutura de pastas
-
Namespaces, pacotes, módulos
[e desempenho
-
Reserva de memória para objectos
-
Coletor de lixo
-
Eliminação explícita de objectos, destruidores
-
Trabalhar com referências
Mecanismo de reflexão
-
Área de aplicação da reflexão
-
Obtenção de informações sobre classes e objectos
-
A importância da reflexão na documentação e nos testes de software
Tratamento de erros
-
Modelos possíveis de tratamento de erros
-
Modelo de tratamento de erros orientado a objectos
-
Papel das excepções e da classe Exception, lançamento e captura de excepções
-
Bloco Try-catch-final, aninhamento de um bloco
Antipadrões de programação orientada para os objectos
-
Excesso de responsabilidade das classes, padrão de delegação
-
Dependências fortes
-
Singleton e potenciais problemas
-
Modelo de domínio anémico
-
Outros antipadrões
Requisitos
Os formandos devem ter conhecimentos básicos de programação.
Declaração de Clientes (2)
The extra information that was shared, the training was not straightforward groovy, which was nice.
Covenant - Vodacom
Curso - Groovy Programming
Bons exemplos, foco no material mais útil
Piotr Sowinski - Intel Technology Poland
Curso - Object Oriented Programming with C++
Máquina Traduzida