UNIVERSIDADE FEDERAL DE UBERLÂNDIA
Faculdade de Engenharia Elétrica

Av. João Naves de Ávila, 2121, Bloco 3N - Bairro Santa Mônica, Uberlândia-MG, CEP 38400-902
Telefone: (34) 3239-4701/4702 - www.feelt.ufu.br - feelt@ufu.br
  

Timbre

Plano de Ensino

IDENTIFICAÇÃO

Componente Curricular:

Programação Script

Unidade Ofertante:

Faculdade de Engenharia Elétrica

Código:

FEELT31107

Período/Série:

1º período

Turma:

A1 / A2

Carga Horária:

Natureza:

Teórica:

30

Prática:

30

Total:

60

Obrigatória:

(X)

Optativa:

( )

Professor(A):

Felipe Alves da Louza

Ano/Semestre:

2022/02

Observações:

 

 

EMENTA

Desenvolvimento de aplicações práticas em linguagens de script, com abordagem algorítmica e conceitos de avaliação de valores e de expressões; constantes, variáveis, strings, arrays e objetos; controle de fluxo de execução de código (sequência, instruções condicionais, laços, funções, encapsulamento). Noções de estrutura de dados, interpretadores, análise de algoritmos, computabilidade e complexidade. Conceitos de computação nas nuvens. Noções de empreendedorismo e de inovação.

JUSTIFICATIVA

O curso tem como objetivo capacitar os alunos para o desenvolvimento de algoritmos de acordo com o paradigma de programação script a partir de práticas de programação em linguagem Python.

OBJETIVO

Objetivo Geral:

Desenvolver as habilidades dos discentes em programação de computadores para resolução de problemas em suas rotinas pessoais e profissionais através do emprego de linguagens de script.

Objetivos Específicos:

1. Desenvolver a compreensão de conceitos fundamentais de programação e de computação;
2. Desenvolver as habilidades dos discentes tanto em trabalhar em grupo, gerenciar projetos e
documentá-los quanto em produzir códigos de qualidade através da adoção de boas práticas de
programação e de Test-Driven Development (TDD);
3. Desenvolver a consciência, a autonomia e a responsabilidade dos discentes;
4. Tornar prazerosa para os discentes a atividade de programar computadores.

PROGRAMA

1. Introdução
  1.1. Programação de computadores
  1.2. Linguagens de Script e Interpretadores
  1.3. Repositórios (Github) e plataformas de desenvolvimento (servidores e computação nas nuvens)
  1.4. Aplicativos e inovação
2. Programação Web
  2.1. HTML e CSS
  2.2. Primitivas, tipos de dado e estruturas: constantes, variáveis, strings, arrays
  2.3. Instruções condicionais, laços, funções
  2.4. Estrutura de dados composta: objeto JSON
  2.5. Implementação e análise de algoritmos, estudo de complexidade
  2.6. Rapid application development (RAD): Node-RED, Django
  2.7. Desenvolvimento de aplicações
3. Linguagem Python
  3.1. Primitivas, tipos de dado e estruturas: variáveis, strings, arrays
  3.2. Instruções condicionais, laços, funções, recursão
  3.3. Estruturas de dados compostas: Listas, arquivos, dicionários, classes
  3.4. Implementação e análise de algoritmos, estudo de complexidade
  3.5. Tópicos avançados, desenvolvimento de aplicações em nuvem
4. Cursos online abertos e massivos
  4.1. HTML & CSS: https://www.codecademy.com/learn/learn-html-css
  4.2. Javascript:
    4.2.1. https://br.udacity.com/course/javascript-basics--ud804/
    4.2.2. https://www.codecademy.com/learn/learn-javascript
  4.3. Python:
    4.3.1. https://br.udacity.com/course/programming-foundations-with-python--ud036/
   4.3.2. https://www.codecademy.com/pt-BR/learn/python

METODOLOGIA

Distribuição das atividades:

Moodle:

Cronograma:

Semana

Conteúdo

1

Recepção dos calouros

2

Introdução; Variáveis; Atribuições;

3

Entrada e Saída; Expressões aritméticas;

4

Expressões relacionais e lógicas; Comandos condicionais;

5

Estruturas de repetição;

6

Funções (parte 1);

7

Funções (parte 2); Laços aninhados; 

8

Coleções (listas e vetores);

9

Prova 1

10

Fatiamento de listas; Objetos na memória e suas referências;

11

Matrizes;

12

Strings;

13

Tuplas; Sets; Dicionários;

14

Busca sequencial; Ordenação; Custo computational;

15

Busca binária; Recursão;

16

Prova 2

17

Recuperação

18

Revisão de notas

Conteúdo extra:

1

Módulos em Python; Classes (breve introdução);

2

Manipulação de arquivos;

Atendimento aos alunos:

AVALIAÇÃO

Sistema de Avaliação

Prova

Data da prova

Peso

1

26/04

 0,30

2

14/06

 0,30

Trabalho

Data de entrega

Peso

1

24/03

 0,04

2

31/03

 0,04

3

07/04

 0,04

4

15/04

 0,04

5

21/04

 0,04

6

12/05

 0,04

7

19/05

 0,04

8

26/05

 0,04

9

02/06

 0,04

10

09/06

 0,04

* O enunciado de cada trabalho será disponibilizado no início de cada semana, na segunda-feira às 08h00, e prazo para a entrega será na sexta-feira (da mesma semana) até às 17h59.

Sobre os trabalhos:

Distribuição da Pontuação da disciplina:

NF = (P1*0,3 + P2*0,3 + (T1+T2+T3+T4+T5+T6+T7+T8+T9+T10)*0,4)) / 10

Obs.: Ti é a nota do Trabalho i.

Avaliação de recuperação:

BIBLIOGRAFIA

Básica

1. MENEZES, Nilo Ney Coutinho. Introdução à programação com Python: algoritmos e lógica de programação para iniciantes. São Paulo: Novatec, 2010. 222 p., il. Inclui bibliografia e índice. ISBN 9788575222508 (broch.).
2. LUTZ, Mark. Aprendendo Python. Porto Alegre: Bookman, 2007. 566 p., il. Inclui índice. ISBN 9788577800131 (broch.).
3. FREEMAN, Elisabeth. Use a cabeça!: HTML com CSS e XHTML. 2. ed. Rio de Janeiro: Alta Books, 2008. viii, 580 p., il. (Use a cabeça!). ISBN 9788576082187 (broch.).

Complementar

 

1. DEWDNEY, A. K. The (new) turing omnibus: 66 excursions in computer science. New York: W.H. Freeman, 2001. 455 p., il. Inclui bibliografia e índice. ISBN 9780805071665 (broch.).
2. BRAD Miller; DAVID Ranum, Como pensar como cientista da computação. Aprendendo com Python: Edição interativa (usando Python 3.x) (Tradução do livro “How to Think Like a Computer Scientist: Interactive Version”, de Brad Miller e David Ranum). Versão online disponível em: https://panda.ime.usp.br/pensepy/static/pensepy/
3. SWEIGART. Al, Automate the Boring Stuff with Python, No Starch Press, 1ed.,2015, 504 p. Versão online disponível em: https://automatetheboringstuff.com/
4. LUTZ, Mark. Aprendendo Python. Porto Alegre: Bookman, 2007. 566 p., il. Inclui índice. ISBN 9788577800131 (broch.).
5. LINDLEY, Cody. JavaScript Succinctly. Editora Syncfusion, Inc., 2017. Versão online disponível em: https://www.syncfusion.com/ebooks/javascript

APROVAÇÃO

Aprovado em reunião do Colegiado realizada em: ____/____/______

Coordenação do Curso de Graduação: _________________________

 


logotipo

Documento assinado eletronicamente por Felipe Alves da Louza, Professor(a) do Magistério Superior, em 03/02/2023, às 15:11, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015.


QRCode Assinatura

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 4233932 e o código CRC 6BE4ABEC.




Referência: Processo nº 23117.002527/2023-61 SEI nº 4233932