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:

 

Turma:

C

Carga Horária:

Natureza:

Teórica:

30

Prática:

30

Total:

60

Obrigatória:

(X)

Optativa:

( )

Professor(A):

Fernando Pasquini Santos

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

Introdução; Primeiro programa; Variáveis;

2

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

3

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

4

Estruturas de repetição;

5

Funções (parte 1);

6

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

7

Coleções (listas e vetores);

8

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

9

Matrizes;

10

Strings;

11

Tuplas; Sets; Dicionários;

12

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

13

Busca sequencial; Ordenação; Custo computational;

14

Busca binária; Recursão; Manipulação de arquivos;

15

Recuperação

Atendimento aos alunos:

AVALIAÇÃO

Sistema de Avaliação

Trabalhos

Data de entrega

Peso

1

14/10

 0,5

2

21/10

 0,5

3

28/10

 0,5

4

11/11

 1,0

5

18/11

 1,0

6

25/11

 1,5

7

02/12

 1,0

8

09/12

 1,5

9

16/12

 1,0

10

22/12

 1,5

Sobre os trabalhos:

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

NF = ((T1+T2+T3)*0,5 + (T4+T5+T7+T9)*1,0 + (T6+T8+T10)*1,5) / 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 Fernando Pasquini Santos, Professor(a) do Magistério Superior, em 03/02/2023, às 07:23, 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 4237317 e o código CRC 94512ED7.




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