DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos Apresentação Computação e Programação (CP) 2013/2014 Aula 1
Objetivos Ficar a saber: funcionamento da unidade curricular (UC) Computação e Programação (CP 2013/2014); objetivos da UC; conceitos iniciais. 30-12-2013 Francisco Regateiro 2
Índice Informação Útil Objetivos da UC Conceitos Iniciais 30-12-2013 Francisco Regateiro 3
Informação Útil Página da cadeira Trabalho autónomo (fora das aulas) Acesso ao MATLAB através do IST Horário para esclarecimento de dúvidas Bibliografia Avaliação 30-12-2013 Francisco Regateiro 4
Objetivos da UC Compreender a importância dos algoritmos e dos programas de computador para a resolução de problemas em engenharia. Programar utilizando o MATLAB. Conceber, codificar e testar programas. Utilizar a abordagem do topo para a base (top-down) através da decomposição funcional. Definir classes de objetos como técnica de modularização por abstração de dados. Conhecer alguns algoritmos (procura e ordenação). 30-12-2013 Francisco Regateiro 5
Conceitos Iniciais Um algoritmo é uma sequência finita de passos (instruções) que podem ser executados mecanicamente para atingir um determinado objetivo, i.e., resolver um problema. Uma linguagem de programação é um conjunto de regras sintácticas e semânticas que permitem expressar algoritmos com vista à sua execução por uma máquina. Uma instrução corresponde ao conceito de frase nas línguas naturais, mas escrita de acordo com uma determinada linguagem de programação. Um programa corresponde a um algoritmo expresso numa linguagem de programação (código fonte) ou numa linguagem máquina (código objeto). 30-12-2013 Francisco Regateiro 6
Conceitos Iniciais Genericamente, um computador é uma máquina capaz de receber, processar, e fornecer informação. Especificamente, o computador (digital) é um dispositivo electrónico composto por processador(es), memória, e unidade(s) interna(s) de armazenamento (permanente). Permite guardar informação discreta e executar operações aritméticas e lógicas. É programável, i.e., permite guardar e executar programas. Encontra-se ligado ao exterior através de dispositivos periféricos (rato, teclado, monitor, impressora, rede de comunicação). O sistema operativo é o programa em execução permanente que intermedeia na utilização do computador. 30-12-2013 Francisco Regateiro 7
Conceitos Iniciais O compilador e o interpretador são programas que recebem código fonte escrito numa dada linguagem de programação. O interpretador traduz e executa o código fonte instrução a instrução. O compilador traduz o código fonte e produz um ficheiro resultante em linguagem máquina, chamado de ficheiro objeto ou executável. A execução deste ficheiro objeto é feita diretamente no computador, sem recorrer ao compilador. 30-12-2013 Francisco Regateiro 8
Conceitos Iniciais A programação é a actividade de desenvolver programas, podendo ser dividida nas seguintes fases: Análise do problema Especificação do programa Codificação Teste Manutenção 30-12-2013 Francisco Regateiro 9
Conceitos Iniciais A programação em larga escala requer uma decomposição sucessiva dos problemas em problemas mais simples. Esta abordagem modular é conhecida por decomposição do topo para a base (top-down). 30-12-2013 Francisco Regateiro 10
Questões 1. Utilizando os conceitos "código fonte" e "código objeto", diga a diferença entre um programa que estejamos a desenvolver e um que estejamos a utilizar. 2. Utilizando os conceitos "computador", "programa", "utilizador" e "programador", diga que entidades iniciam a execução dos seguintes programas: (1) sistema operativo, (2) compilador, e (3) interpretador. 3. Quais as consequências de um erro sintático ou semântico no funcionamento de um compilador ou interpretador? 30-12-2013 Francisco Regateiro 11