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)
A informação adicional compartilhada foi que o treinamento não foi simplesmente divertido, o que foi agradável.
Covenant - Vodacom
Curso - Groovy Programming
Máquina Traduzida
Bons exemplos, foco no material mais útil
Piotr Sowinski - Intel Technology Poland
Curso - Object Oriented Programming with C++
Máquina Traduzida