IPT Logotipo do IPT

Ano Letivo: 2020/21

Informática e Tecnologias Multimédia

Programação Orientada por Objetos

<< voltar ao Plano Curricular

Publicação em Diário da República: Despacho n.º 9184/2020 - 25/09/2020

6 ECTS; 2º Ano, 1º Semestre, 42,0 PL + 28,0 TP + 5,0 OT , Cód. 814312.

Docente(s)
- Fernando Sérgio Hortas Rodrigues (1)(2)

(1) Docente Responsável
(2) Docente que lecciona

Pré-requisitos
Considera-se importante que os alunos detenham os conhecimentos transmitidos na unidade curricular de Programação e Algoritmia.

Objetivos
1. Adquirir conhecimentos sobre o paradigma da orientação por objetos, tais como hereditariedade, abstração, encapsulamento e polimorfismo.
2. Adquirir conhecimentos sobre linguagem de prog. C# e da Framework .NET.
3. Adquirir conhecimentos sobre utilização do ADO.NET para acesso a bases de dados.

Programa
1. Conceitos gerais
1.1. Introdução à .NET e à framework .NET
1.2. Exploração do ambiente de trabalho Visual Studio .NET
1.3. Criação de um Projeto de uma Aplicação Windows

2. Fundamentos da linguagem C#
2.1. Perceber os fundamentos da linguagem C#
2.2. Os vários tipos predefinidos do C#
2.3. Variáveis, Constantes e Enumerados
2.4. Arrays unidimensionais, multidimensionais e Jagged Arrays
2.5. Conversões implícitas e explícitas
2.6. Expressões e Operadores
2.7. Instruções Condicionais
2.8. Instruções Iterativas

3. Criar Objetos em C#
3.1. Value Types e Reference Types
3.2. Boxing e Unboxing
3.3. Classes e Objetos
3.3.1. Sintaxe e Semântica
3.3.2. Definição de Classes
3.3.3. Criação e Inicialização de Objetos
3.4. Namespaces
3.5. Access Modifiers (Scope)
3.6. Métodos
3.6.1. Sintaxe e Semântica
3.6.2. Parâmetros, variáveis locais e scope
3.6.3. Passagem de parâmetros por valor e por referência
3.6.4. Overloading
3.7. Construtores
3.7.1. Sintaxe e Semântica
3.7.2. Overload de Construtores
3.7.3. Inicialização de Construtores
3.8. Inicialização de Classes
3.9. Variáveis readonly
3.10. Membros de Classe Estáticos

4. Técnicas de Programação Orientadas a Objetos em C#
4.1. Programação Estruturada vs. Orientada por Objetos
4.2. Encapsulamento
4.3. Propriedades e Propriedades Automáticas
4.4. Hereditariedade
4.4.1. Classes Derivadas
4.4.2. Acesso a Construtores da Classe Base
4.4.3. Classes Seladas
4.4.4. Métodos Virtuais
4.4.5. Classes Abstratas
4.4.6. Propriedades Abstratas
4.5. Polimorfismo

5. Programar em C#
5.1. Instrução foreach
5.2. Indexação de Objetos (Indexers/Propriedades Indexadas)
5.3. Interfaces
5.4. Operadores is e as
5.5. Coleções
5.5.1. Implementação de Tipos Enumeráveis
5.5.1.1. A interface IEnumerable
5.5.1.2. Implementação explícita de IEnumerator
5.5.1.3. Iteradores Yield
5.5.1.4. Iteradores Nomeados (Named Iterators)
5.5.2. ArrayList
5.5.3. Queue
5.5.4. Stack
5.5.5. Hash Table
5.6. Exceções (Exception Handling)
5.7. Eventos e Delegações (Delegates and Events)

6. Implementação de Aplicações Baseadas em .NET, em C#
6.1. A Biblioteca de Classes da .NET Framework
6.2. Sobreposição de Métodos (Overriding Methods) na biblioteca System.Object
6.3. Formatação de Cadeias de Caracteres e Números
6.4. Streams e ficheiros

7. ADO.NET
7.1. ADO.NET Data providers
7.2. Disconnected layer do ADO.NET
7.3. DataSets
7.4. Ligação de Objetos DataTable à Interface do Utilizador DataGrid
7.5. Data Adapters
7.6. Geração de código automático com o DataSet Designer
7.7. Desacoplamento do código gerado automaticamente, da camada de apresentação (interface do utilizador)
7.8. Projetos do tipo Class Library
7.9. Utilização dos Strongly typed types gerados automaticamente

8. C# Avançado
8.1. Genéricos
8.2. Tipos anónimos
8.3. Métodos Anónimos
8.4. Lambdas

Metodologia de avaliação
Metodologias de avaliação
Avaliação em Época de Frequência:
- Teste escrito (40%)
- Trabalho Prático (60%).

Avaliação em Época Normal de Exame:
- Nota do Teste em época de frequência ou nota de Exame escrito (40%)
- Trabalho Prático (60%).

Avaliação em Época de Recurso:
- Exame escrito (40%)
- Trabalho Prático (60%).

Bibliografia
- Figueira, H. e Marques, P. (2011). C# 4.0. : FCA
- Perkins, B. e Vibe Hammer, J. e D. Reid, J. (2015). Beginning C# 6 Programming with Visual Studio 2015. : Wrox
- Troelsen, A. (2007). Pro C# 2008 and the .NET 3.5 Platform. : Apress

Método de Ensino
Aulas teóricas expositivas para apresentação dos conteúdos programáticos. Aulas práticas laboratoriais para resolução de problemas e consolidação de conhecimentos utilizando o computador.

Software utilizado nas aulas
Visual Studio
MS Sql Server

 

 

 


<< voltar ao Plano Curricular
NP4552
Financiamento
KreativEu
erasmus
catedra
b-on
portugal2020
centro2020
compete2020
crusoe
fct
feder
fse
poch
portugal2030
poseur
prr
santander
republica
UE next generation
Centro 2030
Lisboa 2020
Compete 2030
co-financiado