Disciplina
Programação por Objectos e Bases de Dados
Área
Área Científica de Controlo, Automação e Informática Industrial > Informática Industrial
Activa nos planos curriculares
MEMec 2006 > MEMec 2006 > 2º Ciclo > Opções Gerais > Programação por Objectos e Bases de Dados
Nível
Realização de dois trabalhos consistindo o primeiro na definição e modelação de uma base de dados e no estabelecimento de questões em SQL (60%) e o segundo de questões em C++, para a mesma base de dados, inseridas num ambiente de janelas para Windows. (40%). Realização obrigatória de prova oral para notas acima de 17 valores.
Tipo
Não Estruturante
Regime
Semestral
Carga Horária
1º Semestre
2.0 h/semana
1.0 h/semana
0.5 h/semana
77.0 h/semestre
Objectivos
A disciplina tem por objectivos a introdução à modelação e progra‐mação orientada por objectos e às bases de dados relacionais. Desta forma é feita uma introdução aos principais diagramas definidos no UML (linguagem de modelação normalizada orientada por objectos). A seguir introduz‐se a álgebra relacional e a linguagem SQL para descrever e questionar bases de dados relacionais. Finalmente utilizar‐se‐á a linguagem C++ em aplicações de base de dados após ser revista a estrutura básica da linguagem e estudados os seus aspectos específicos relacionados com objectos.
Programa
INTRODUÇÃO À UNIFIED MODELING LANGUAGE (UML). Diagramas UML: estruturais, comportamentais e de interacção. Diagrama de caso de uso (use‐case). Cenários, actores e casos de uso. Diagrama de classes. Definição de classe. Atributos e métodos. Associações binárias e ternárias. Agregação. Generalização. Associações derivadas e constrangidas. Associações como classes. Introdução aos diagramas de estado e de actividade. INTRODUÇÃO ÀS BASES DE DADOS. Estrutura das bases de dados relacionais. Álgebra relacional. Introdução à linguagem SQL. Estrutura básica da linguagem. Tipo de questões. Modelo Entidade‐Associação (E‐R). Diagramas E‐R. Relação com o UML. A LINGUAGEM DE PROGRAMAÇÃO C++. Revisão dos conceitos básicos de programação. Ponteiros e referências. Vectores e matrizes. Funções. Âmbito de variáveis e funções. Objectos em C++. Atributos e métodos. Sobre‐carregamento de operadores. Construtores de cópia e conversores. Templates para classes. Classes derivadas. Construtores para classes derivadas. Herança de atributos e métodos pelas classes derivadas. Introdução à Standard Template Library (STL).
Metodologia de avaliação
Realização de dois trabalhos consistindo o primeiro na definição e modelação de uma base de dados e no estabelecimento de questões em SQL (60%) e o segundo de questões em C++, para a mesma base de dados, inseridas num ambiente de janelas para Windows. (40%). Realização obrigatória de prova oral para notas acima de 17 valores.
Pré-requisitos
Componente Laboratorial
Princípios Éticos
Componente de Programação e Computação
Componente de Competências Transversais
Bibliografia
Principal
Cópia dos slides usados na disciplina.
Silbserchatz, H. Korth, S. Sudarshan
McGraw‐Hill, 2006 5th edition
Software de apoio: Enterprise Architect (UML), XAMP (mySQL)
Secundária
Programação em C++. Conceitos básicos e algoritmos
P. Rodrigues, P. Pereira, M. Rodrigues