|
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Av. João Naves de Ávila, 2121, Bloco 3N - Bairro Santa Mônica, Uberlândia-MG, CEP 38400-902 |
|
Plano de Ensino
IDENTIFICAÇÃO
Componente Curricular: |
|||||||||
Unidade Ofertante: |
|||||||||
Código: |
Período/Série: |
Turma: |
|||||||
Carga Horária: |
Natureza: |
||||||||
Teórica: |
Prática: |
Total: |
Obrigatória: |
Optativa: |
|||||
Professor(A): |
Ano/Semestre: |
||||||||
Observações: |
EMENTA
Desenvolvimento de aplicações práticas em linguagens C, com abordagem algorítmica e conceitos de: avaliação de valores e de expressões; constantes, variáveis, ponteiros, strings, arrays; controle de fluxo de execução de código (sequência, instruções condicionais, laços, funções); estruturas e encapsulamento; alocação dinâmica de memória; manipulação de arquivos; base de arquitetura e organização de computadores. Noções de estrutura de dados, análise de algoritmos e complexidade.
JUSTIFICATIVA
O curso tem como objetivo capacitar os alunos para o desenvolvimento de algoritmos de acordo com o paradigma de programação procedimental, a partir de práticas de programação em linguagem C.
OBJETIVO
Objetivo Geral: |
||
Desenvolver as habilidades dos discentes em programação na linguagem C explorando as estruturas básicas que compõem a arquitetura de um computador.
|
PROGRAMA
1. Introdução
1.1. Arquitetura de Von Neumann: CPU, memória, dispositivos E/S.
1.2. Compilador, makefile, debug.
1.3. Repositórios (Github).
1.4. Plataformas de desenvolvimento (sistemas embarcados, computadores pessoais, IoT – Internet of Things, servidores e computação nas nuvens).
1.5. Soluções em hardware e em software.
2. Linguagem C
2.1. Primitivas e tipos de dados
2.1.1. Bases numéricas, conversão entre bases binária, decimal, octal, hexadecimal.
2.1.2. Primitivas ou tipos básicos: ASCII, Unicode, complemento de 2, IEEE 754-1985/2008
2.1.3. Operações binárias (BITWISE).
2.2. Armazenamento em memória.
2.3. Controles de fluxo de execução: sequência de instruções, condicionais, laços.
2.4. Ponteiros, vetores e strings
2.4.1. Aritmética de ponteiros.
2.4.2. Acesso aleatório de dados.
2.5. Funções e recursão
2.5.1. Passagem de parâmetros por valor e por referência.
2.6. Estruturas de dados e encapsulamento
2.7. Alocação dinâmica de memória
2.8. Matrizes e operações
2.9. Implementação e análise de algoritmos, estudo de complexidade
2.10. Manipulação de arquivos
2.11. Compilador SWIG e ligação de código C com outras linguagens
3. Aplicação em sistemas embarcados
3.1. Comunicação serial para sistemas embarcados (ex. Arduino)
3.2. Desenvolvimento de aplicações em sistemas embarcados (ex. Arduino)
3.3. Desenvolvimento de aplicações em Nuvem
4. Cursos online abertos e massivos
4.1.https://www.youtube.com/watch? v=FH7YrE0RjWE&list=PLesCEcYj003SwVdufCQM5FIbrOd0GG1M4 (canal brasileiro eXcript).
4.2. https://www.coursera.org/learn/arduino-platform
4.3. http://mooc.fi/courses/2016/aalto-c/en/
METODOLOGIA
Distribuição das atividades:
- Carga-horária de atividades síncronas (aulas online): 30 horas
- Carga-horária de atividades assíncronas (vídeo-aulas, listas de exercícios, trabalhos práticos): 30 horas
- Todas as informações relativas à disciplina como materiais, trabalhos, vídeo-aulas, entre outros, serão informadas no Teams e por meio de um grupo no Whats Up.
AVALIAÇÃO
- PRIMEIRA AVALIAÇÃO: valor de 30 pontos
- SEGUNDA AVALIAÇÃO: valor de 30 pontos
- TRABALHO FINAL: valor de 40 pontos
BIBLIOGRAFIA
Básica
Complementar
APROVAÇÃO
Aprovado em reunião do Colegiado realizada em: ____/____/______
Coordenação do Curso de Graduação: _________________________
Documento assinado eletronicamente por Edgard Afonso Lamounier Junior, Professor(a) do Magistério Superior, em 30/11/2021, às 11:02, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015. |
A autenticidade deste documento pode ser conferida no site https://www.sei.ufu.br/sei/controlador_externo.php?acao=documento_conferir&id_orgao_acesso_externo=0, informando o código verificador 3214267 e o código CRC 9FB08E94. |
Referência: Processo nº 23117.071223/2021-82 | SEI nº 3214267 |