filmeu

Disciplina Linguagens de Programação I

  • Apresentação

    Apresentação

    Esta unidade curricular oferece uma extensa exploração da programação procedural usando a linguagem de programação C, abrangendo tópicos fundamentais e avançados. Os alunos obterão uma compreensão abrangente da história da programação C e dos seus benefícios, bem como aprenderão a criar e executar programas simples em C. O currículo concentra-se em conceitos essenciais, incluindo tipos de dados, variáveis, estruturas de controlo, funções e ponteiros, com oportunidades de experiência prática para reforçar o conhecimento. A unidade curricular também aborda tópicos avançados, como manipulação de ficheiros, alocação dinâmica de memória e estruturas de dados como listas e filas. Através de projetos de programação, os alunos desenvolverão experiência prática, com ênfase particular em obter uma compreensão completa da organização e operação da memória do computador como um recurso. No final do curso, os alunos serão capazes de criar programas eficientes que fazem uso eficaz da memória.

  • Conteúdos Programáticos

    Conteúdos Programáticos

    M0: Introdução: Visão geral, programação C, história, benefícios, configuração do ambiente, programa simples
    M1: Sintaxe Básica: Definições, tipos de dados, operadores, entrada/saída, estruturas de controlo
    M2: Estruturas de controle avançadas: Switch, break/continue, goto
    M3: Funções: definição/invocação, argumentos/valores de retorno, recursão
    M4: Matrizes e Strings: Definições, vectores de caracteres, strings, funções, matrizes 2D
    M5: Ponteiros: Definições, aritmética, pilha/heap, alocação dinâmica de memória
    M6: Ponteiros Avançados: Ponteiros para ponteiros/funções
    M7: Estruturas e Uniões: Definições, estruturas aninhadas, uniões
    M8: Entrada/saída de arquivo: visão geral, abertura/leitura/gravação de ficheiros, entrada/saída binária
    M9: Diretivas e Macros do Pré-processador: Definições, #define, #ifdef, #undef, macros com parâmetros
    M10: Operadores bit a bit: Definições, operadores bit a bit AND/OR/XOR/NOT/shift
    M11: Listas Ligadas: Definições, criação/manipulação, exemplos, pilhas/filas

  • Objetivos

    Objetivos

    No final desta Unidade Curricular, os alunos deverão ser capazes de criar programas C eficientes e rápidos, tendo em consideração o uso correto da memória. Deverão adquirir uma compreensão sólida da abstração procedural e ser capazes de analisar e criar algoritmos simples usando essa abordagem. Além disso, os alunos devem entender os princípios por trás dos sistemas "coletores de lixo" em linguagens de alto nível, e da operação de bibliotecas de estruturas de dados. O curso visa fornecer aos alunos conhecimentos necessários para criar programas em C bem projetados, eficientes e robustos e para entender os princípios fundamentais que sustentam a operação das linguagens de programação modernas.

  • Bibliografia principal

    Bibliografia principal

    K. N. King - C Programming: A Modern Approach, 2nd Edition
    Pereira, Alexandre - C e Algoritmos. 2a Ed., Lisboa, Portugal: Edições Sílabo, 2017.
    Kernighan, B. W. Ritchie D. M. - The C Programming Language. 2nd Ed: Prentice Hall Professional Technical Reference, 1988. ISBN0131103709

INSCRIÇÃO AVULSO
Lisboa 2020 Portugal 2020 Small Logo EU small Logo PRR republica 150x50 Logo UE Financed Provedor do Estudante Livro de reclamaões Elogios