Informações Gerais
Carga horária:
Introdução à Programação – 45 horas
Banco de Dados Relacional – 30 horas
Horário: 15h50min - 17h50min (Segunda); 13h30min - 15h30min (Sexta)
Lista de discussão: groups.google.com/d/forum/prof-janderson_informatica-tarde_2014-1
Clique em Inscrever-se para associação, selecione a opção Receber um e-mail para cada nova mensagem e depois clique em Solicitar para participar deste grupo.
E-mail da lista: prof-janderson_informatica-tarde_2014-1@googlegroups.com
Controle de Atividades: planilha
Plano de Aulas e Avisos Importantes
10/02/2014 – Aula 01: Apresentação da Disciplina Introdução à Programação e Conceitos Gerais sobre Programação de Computadores
Material de Acompanhamento: aqui (no livro em PDF, Prefácio)
Aviso: Instalem Python!
14/02/2014 – Aula 02: Primeiros comandos no IDLE (entrada e saída de dados — funções print() e input() — e introdução aos conceitos de tipos e variáveis)
Material de Acompanhamento: aqui (no livro em PDF, Capítulo 1)
Avisos:
Terminem a leitura do material O caminho do programa, realizando os testes interativos restantes.
Importante: há algumas mudanças de sintaxe da versão 2.X para a 3.X (o mais impactante é o uso do print, que agora é necessário parênteses!).
Sugestão de vídeos complementares sobre o assunto: Shell Python e Shell Python - Definindo as primeiras variáveis.
17/02/2014 – Aula 03: Revisão das primeiras aulas e conceitos de Variável, Expressão e Comando
Material de Acompanhamento: aqui (no livro em PDF, Capítulo 2)
Avisos:
Leiam o material Variáveis, Expressões e Comandos, realizando os testes interativos.
Sugestão de vídeos complementares sobre o assunto: Shell Python - Definindo as primeiras variáveis; Valores, Variáveis e Expressões (Parte 1) e Valores, Variáveis e Expressões (Parte 2).
21/02/2014 – Aula 04: Exercícios sobre Variáveis, Expressões e Comandos em Python
Material de Acompanhamento: aqui (no livro em PDF, o assunto dos exercícios são sobre os Capítulos 1 e 2)
Avisos:
Lembrem de salvar o arquivo python com os exercícios na rede interna da turma (na pasta _Prof Janderson\Python\Atividade1).
PRATIQUEM EM CASA! Refaçam os exercícios que fizeram no laboratório e continuem com os outros.
A leitura dos materiais anteriores (incluindo os vídeos sugeridos) pode sanar muitas dúvidas!!! E LEMBREM-SE que também podem utilizar a Lista de Discussão para isso.
24/02/2014 – Aula 05: Continuação dos Exercícios sobre Variáveis, Expressões e Comandos em Python; Executando Programas em Python via Prompt de Comandos do Windows.
Avisos:
O Material de Acompanhamento é o mesmo da aula anterior (slides com exercícios).
Vídeos complementares importantes: Programas (Parte 1) e Programas (Parte 2).
Na próxima aula não continuaremos a lista de exercícios das aulas anteriores. É IMPORTANTE que utilizem a lista de discussão para as dúvidas!
Os exercícios devem ser entregues até o dia 14/03.
28/02/2014 – [Sem Aula]: [Feriado - Carnaval]
03/03/2014 – [Sem Aula]: [Feriado - Carnaval]
07/03/2014 – Aula 06: Estruturas de Seleção
Material de Acompanhamento: aqui (no livro em PDF, Capítulo 4 - até 4.8)
Avisos:
Leiam o material de acompanhamento, com exceção da parte "Funções Booleanas". O assunto de Funções será visto posteriormente.
Sugestão de vídeos complementares sobre o assunto: Controle de Fluxo - Alternativas (Parte 1); Controle de Fluxo - Alternativas (Parte 2).
EXERCÍCIOS DE FIXAÇÃO (a resolução deve ser enviada para este e-mail: janderson.jason@gmail.com):
Do material de Acompanhamento:
Teste seu entendimento: 6.1.1; 6.2.1; 6.3.1; 6.4.1; 6.5.1; 6.5.2; 6.6.1; 6.7.1; 6.7.2
Exercícios: 1; 2
Outras atividades:
A) Escreva um programa que peça ao usuário para digitar uma hora (entre 0 e 23) e, a partir do número que o usuário digitar, imprima na tela "Bom Dia", "Boa Tarde", "Boa Noite" ou "Hora inválida".
B) A partir da Atividade Inicial (nº 19), modifique seu programa para, além de mostrar na tela o perímetro e a área do retângulo, mostrar se o perímetro e a área são maiores, menores ou iguais ao deste campo de futebol.
10/03/2014 – Aula 07: Introdução a Funções
Material de Acompanhamento: aqui (no livro em PDF, Capítulos 3 e 5)
Avisos:
Sugestão de vídeos complementares sobre o assunto: Controle de Fluxo - Funções (Parte 1); Controle de Fluxo - Funções (Parte 2).
A partir do entendimento de Funções, leiam a parte "Funções Booleanas" do Material de Acompanhamento da aula anterior.
14/03/2014 – Aula 08: Exercício Avaliativo
Conteúdo: Tudo o que vimos até agora!
Conceitos iniciais (algoritmo, tipos de linguagens etc.). Variáveis, comandos, expressões. Estruturas de Seleção. Introdução a Funções.
17/03/2014 – Aula 09: Revisão do Conteúdo por meio da Correção do Exercício Avaliativo
Avisos:
Refaçam o Exercício Avaliativo. Na próxima aula, após o termino da correção, deverão enviar por e-mail.
21/03/2014 – Aula 10: Revisão do Conteúdo por meio da Correção do Exercício Avaliativo (continuação);
Avisos:
As novas respostas para o Exercício Avaliativo devem ser enviadas hoje (21/03) por e-mail.
Podem enviar tudo em um arquivo .py ou também podem utilizar o Word. A questão 4 deve estar em um arquivo .py.
24/03/2014 – Aula 11: Funções (continuação)
Avisos:
O Material de Acompanhamento sobre Funções é o mesmo da aula 07.
O conteúdo de Funções será continuado por meio do acompanhamento deste exercício: aqui
28/03/2014 – Aula 12: Funções (continuação)
O Material de Acompanhamento é o mesmo da aula anterior (capítulos e exercícios).
31/03/2014 – Aula 13: Funções (continuação); Uso da função assert() para pequenos testes em Python
O Material de Acompanhamento é o mesmo da aula anterior (capítulos e exercícios).
Sobre Assert: aqui.
04/04/2014 – Aula 14: Exercícios (finalização dos exercícios de Função e testes usando a função assert)
O Material de Acompanhamento é o mesmo da aula anterior (capítulos e exercícios).
Avisos:
O Exercício sobre funções deve ser entregue hoje (04/04).
Atividade para ser entregue na próxima aula (07/04):
Pesquisa sobre Estruturas de Repetição em Python (for e while).
Comentar sobre a utilidade dessas estruturas (para quê serve os comandos for e while?).
Colocar exemplos utilizando esses comandos:
1) Como imprimir na tela os números de 1 a 500 sem escrever o comando print() 500 vezes?
2) Como pedir ao usuário para ficar digitando várias coisas até ele digitar a palavra "Sair"?
Deve ser feito individualmente e entregue em uma folha (manuscrito) no início da próxima aula.
07/04/2014 – Aula 15: Estruturas de Repetição
Material de Acompanhamento: aqui (no livro em PDF, Capítulos 6, 7 e 8)
Avisos:
Sugestão de vídeos complementares sobre o assunto: Repetições com while; Controle de Fluxo - For (Parte 1); Controle de Fluxo - For (Parte 2).
Exercícios para ser entregue na próxima aula (11/04):
Pesquisar sobre como usar a função range em Python. (Dica: Ela pode ser usada com 1, 2 ou 3 parâmetros. Exemplo: range(y) ou range(x,y) ou range(x,y,z). Entenda o que esses parâmetros significam.)
OBS.: Na aula do dia 11/04 serão sorteados alguns alunos para explicar no quadro.
Escolher pelo menos 3 das listas a seguir e escrever em Python (utilizando os comandos for e range) como imprimir os valores dessas listas multiplicados por 10. Exemplo: A partir da lista [20, 15, 10, 5, 0], deve-se imprimir os valores 200, 150, 100, 50, 0.
[20, 15, 10, 5, 0]
[0, 5, 10, 15, 20]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[12, 10, 8, 6, 4, 2, 0]
[0, 2, 4, 6, 8, 10, 12]
11/04/2014 – Aula 16: Estruturas de Repetição (continuação) e Listas
Avisos:
O Material de Acompanhamento é o mesmo da aula anterior (capítulos e exercícios)
Exercício sobre Estruturas de Repetição e Introdução a Arquivos: aqui
14/04/2014 – Aula 17: Continuação de Exercícios sobre Estruturas de Repetição e Introdução a Arquivos
Avisos:
Os exercícios são os mesmos da aula anterior.
Material sobre Arquivos: Manipulando arquivos com Python (no livro em PDF, Capítulo 11).
18/04/2014 – [Sem Aula]: Sexta-feira Santa
21/04/2014 – [Sem Aula]: Feriado de Tiradentes
25/04/2014 – Aula 18: Revisão de Conteúdo para Exercício Avaliativo Geral
Slides usados para a revisão: aqui
Avisos:
O prazo final para reenvio dos exercícios (Atividades Iniciais; Atividade 2; Exercícios sobre Estruturas de Repetição) é até o dia 30/04.
Conteúdo do Exercício Avaliativo: Tudo o que vimos na disciplina!
Conceitos Iniciais (Algoritmo, Programa, Linguagem de Programação etc.); Comandos básicos (print, input, type); Operações matemáticas; Criação de variáveis e conversão de tipos (str, int, float); Funções e asserts; Comandos Condicionais (if, elif, else); Comandos de Repetição (while e for, contemplando função range).
Conteúdo Bônus: Funções para o tipo list (sum, len, min, max) e Arquivos (criar/abrir, ler e escrever, fechar)
28/04/2014 – [Sem Aula]: Assembleia
02/05/2014 – Aula 19: Exercício Avaliativo Geral sobre Programação
Conteúdo do Exercício Avaliativo: Tudo o que vimos na disciplina Introdução à Programação!
05/05/2014 – Aula 20: Introdução a Banco de Dados Relacional
Material de Acompanhamento: aqui
Avisos:
Veja as referências ao final da página!
Exercício Inicial sobre Banco de Dados:
Resumo do Capítulo 1 (completo) e do Capítulo 2 (até a seção 2.2.3) do livro Projeto de Banco de Dados (detalhes em "Principais Referências e Links Úteis")
OBS.: Seu resumo deve ser entregue manuscrito (com no máximo 4 páginas) na próxima aula (09/05).
09/05/2014 – Aula 21: BD - Modelo Conceitual
Material de Acompanhamento: aqui
Avisos:
Os slides do Material de Acompanhamento são apenas uma adaptação deste material: Projeto de Banco de Dados (slides); Diagrama ER (slides); Projeto Banco de Dados (apostila em PDF).
Para entender melhor sobre Modelo Conceitual: Capítulos 2 e 3 do livro Projeto de Banco de Dados (detalhes em "Principais Referências e Links Úteis").
12/05/2014 – Aula 22: BD - Modelo Conceitual (continuação)
Avisos:
O Material de Acompanhamento e os avisos da aula anterior (Aula 21) também se referem a esta aula (Aula 22).
Exercício BD 1 (slides 34, 35 e 36 do material de acompanhamento da aula anterior):
Deve ser realizado por grupos de 2 ou 3 alunos.
Entrega:
Questão1: Enviar por e-mail até o fim da aula. Letra A no corpo do e-mail e Letra B em anexo (arquivo .brM com o nome dos alunos).
Questão2: Iniciar na aula e finalizar em casa, trazendo na outra aula (dia 16/05) os arquivos .brM (além do esquema impresso). Enviar arquivos por e-mail com o assunto "BD EXERCÍCIO 1 - Questão 2".
Alunos serão sorteados para explicar suas soluções!
PRATICANDO PYTHON nº1 (ENVIAR POR E-MAIL COM O ASSUNTO "PRATICANDO PYTHON 1" ATÉ DIA 16/05): Estudem mais sobre Arquivos e Listas (criação e inserção de elementos) e façam um programa que: 1º) Peça ao usuário para digitar nomes de pessoas ("Insira um nome de uma pessoa: "), e vá salvando em uma lista, até digitar "FIM"; 2º) Para cada nome da lista, peça ao usuário para digitar o projeto correspondente ("Qual o nome do projeto que 'Fulano' participa?"), e vá inserindo em outra lista; 3º) Salve os elementos das listas em dois arquivos (Pessoa.txt e Projeto.txt) para simular duas tabelas de dados. Após finalizar o programa, verifique se os dados foram armazenados. Pense: Como saber que pessoa trabalha em determinado projeto? E se houver pessoas com nomes iguais, é fácil saber quem é quem?
16/05/2014 – Aula 23: BD - Modelo Conceitual (correção de exercícios) e Introdução ao Modelo Relacional
Material de Acompanhamento: aqui (capítulo 4 do livro Projeto de Banco de Dados - detalhes em "Principais Referências e Links Úteis").
PRATICANDO PYTHON nº2 (ENVIAR POR E-MAIL COM O ASSUNTO "PRATICANDO PYTHON 2" ATÉ DIA 19/05): A partir do programa feito no PRATICANDO PYTHON nº1, execute-o digitando os dados destas 3 pessoas e seus respectivos projetos: João [Projeto ABC], Maria [Projeto XYZ], João [Projeto KLM]. Com base nos arquivos Pessoa.txt e Projeto.txt resultantes, crie um programa que lê os dados desses arquivos e: 1º) procure quem trabalha no Projeto KLM; 2º) procure qual o projeto de Maria; e 3º) imprime na tela essas informações.
19/05/2014 – Aula 24: BD - Modelo Relacional
Avisos:
O Material de Acompanhamento é o mesmo da aula anterior.
Estes slides do Prof. Cláudio Baptista têm detalhes interessantes sobre Modelo Relacional.
Próxima aula (23/05) será feita uma avaliação. Estudem!
23/05/2014 – Aula 25: BD - Exercício Avaliativo
Conteúdo: Introdução a Banco de Dados Relacional; Modelo Conceitual; Modelo Lógico.
26/05/2014 – Aula 26: BD - Revisão Geral a partir da Correção do Exercício Avaliativo
Correção e autoavaliação feita em sala.
30/05/2014 – Aula 27: BD - Correção de Exercícios e Breve Introdução à SQL
Material de Acompanhamento: LINGUAGEM SQL: Conceitos básicos; Básico de SQL na Prática: DDM e DDL; Linguagem SQL (material do Prof. Jorge Soares); SQL e Modelo Relacional (Apostila K19).
Avisos:
Correção do PRATICANDO PYTHON nº 1 e 2
Exercício BD 2 (deve ser realizado por grupos de 2 ou 3 alunos):
Utilize o Sqliteman, criando uma base de dados com os nomes dos integrantes do grupo (exemplo: fulano_sicrano.db).
Crie as tabelas do slide 13 deste arquivo, inserindo as tuplas lá existentes (troque D2, D1 e D5 por, respectivamente, 2, 1 e 5).
Teste inicialmente as seguintes consultas SQL:
SELECT Empregado.Nome
FROM Empregado
SELECT Departamento.*
FROM Departamento
SELECT Departamento.CodDep, Departamento.Nome
FROM Departamento, Empregado
WHERE Empregado.Nome = "Ana" AND Departamento.CodDep = Empregado.Depart
Escreva em SQL as 9 consultas do slide 20. Salve o código em um arquivo com os nomes dos integrantes do grupo (exemplo: fulano_sicrano.sql).
Envie por e-mail, até antes da aula do dia 09/06 os arquivos .db e .sql. Alunos serão sorteados na aula para explicar suas soluções!
PRATICANDO PYTHON nº3 (ENVIAR POR E-MAIL COM O ASSUNTO "PRATICANDO PYTHON 3" ATÉ DIA 09/06): Assista à primeira vídeo-aula do PyCursos (Python e Banco de Dados com Sqlite3 #1 - link nas referências ao final da página), acompanhando e fazendo o exemplo. Após entendê-lo, modifique-o criando uma tabela referente a uma entidade com atributos de sua escolha. Insira 5 tuplas no banco de dados. Anexe no e-mail apenas o arquivo .py.
02/06/2014 – Aula 28: BD - Conceitos de SQL; Apresentações dos Planos de Trabalho dos Projetos Integradores
Avisos:
Lembrem de terminar o Exercício BD 2 e o PRATICANDO PYTHON 3.
06/06/2014 – Aula 29: Apresentações dos Planos de Trabalho dos Projetos Integradores; BD - Conceitos de SQL
Avisos:
O Material de Acompanhamento é o mesmo indicado na Aula 27.
09/06/2014 – Aula 30: Seminários de Revisão de Python (Reposição)
Avisos:
O Material de Acompanhamento é o mesmo indicado na Aula 27, além da vídeo-aula Python e Banco de Dados com Sqlite3 #1: Criando tabelas e inserindo dados
PRATICANDO PYTHON nº4 (ENVIAR POR E-MAIL COM O ASSUNTO "PRATICANDO PYTHON 4" ATÉ DIA 13/06): Assista à segunda vídeo-aula do PyCursos (Python e Banco de Dados com Sqlite3 #2 - link nas referências ao final da página), acompanhando e fazendo o exemplo. Após entendê-lo, modifique-o para dar continuidade ao que você fez no Praticando Python nº 3. Anexe no e-mail apenas o arquivo .py.
13/06/2014 – Aula 31: Seminários de Revisão de Python (Reposição); BD - Atividade Geral sobre Projeto de Banco de Dados
Avisos:
A Atividade em grupo será finalizada na próxima aula
PRATICANDO PYTHON nº5 (ENVIAR POR E-MAIL COM O ASSUNTO "PRATICANDO PYTHON 5" ATÉ DIA 16/06): Assista à terceira vídeo-aula do PyCursos (Python e Banco de Dados com Sqlite3 #3 - link nas referências ao final da página), acompanhando e fazendo o exemplo. Como no Praticando Python anterior, utilize o que foi aprendido no vídeo para prosseguir com o seu exemplo do Praticando Python nº 3 e nº 4.
16/06/2014 – Aula 32: Seminário de Revisão de BD (Reposição); BD - Atividade Geral sobre Projeto de Banco de Dados (finalização)
Finalização da Atividade em Grupo
20/06/2014 – Aula 33: BD - Uso de SQL em Python; Finalização de Atividades
Correção das atividades PRATICANDO PYTHON nº3, 4 e 5 ...
23/06/2014 – [Sem Aula]: Recesso Junino
27/06/2014 – [Sem Aula]: Recesso Junino
OUTRAS DATAS IMPORTANTES:
30/06 a 04/07: Projeto Integrador - Período de desenvolvimento
07/07 a 11/07: Projeto Integrador - Período de apresentações
REPOSIÇÃO
Exercício Avaliativo 1 (Emanuela, Ignacio, Marcos, Mateus)
Apresentação em grupo [em 09/06/14]: vídeo-aulas 8, 9, 10 e 11.
Exercícios individuais [até 10/06/14]: enviarei por e-mail.
Exercício Avaliativo 2 (Emanuela, Tamires, Valdilene)
Apresentação em grupo [em 09/06/14 e 13/06/14]: vídeo-aulas 12, 19, 20.
Exercícios individuais [até 10/06/14]: enviarei por e-mail.
Exercício Avaliativo 3 (Daniel, Tamires)
Apresentação em grupo [em 13/06/14 16/06/14]: vídeo-aula
Exercícios individuais [até 14/06/14]: enviarei por e-mail.
ATIVIDADES COMPLEMENTARES
Estas atividades são destinadas à melhoria de Conceito e serão diferenciadas dependendo de qual parte das competências/habilidades o aluno obteve conceito insuficiente.
Os alunos que me procurarem e realizarem os exercícios indicados poderão ter seu(s) conceito(s) alterado(s).
DATA LIMITE PARA ENVIO: 16/06 (sugiro que envie o quanto antes para que possa realizar possíveis alterações antes do prazo).
Competências e Habilidades
“Para a Escola Técnica Redentorista, Instituição formadora de técnicos para o mercado na área de Informática, existe uma preocupação e um compromisso com a formação ética e cidadã, com vistas à transformação da sociedade; portanto, o trabalho com o conhecimento é objetivado com base nas competências e habilidades a serem desenvolvidas em cada módulo e no curso como um todo. [...] A competência em uma profissão é o conjunto de saberes (conhecimentos), saber-fazer (práticas), saber-ser (atitudes), saber-agir (mobilização de tudo para fazer algo que deve ser feito). [...] O Sistema de Avaliação da Aprendizagem no Curso Técnico da Área de Informática, na Escola Técnica Redentorista, se definirá como um processo contínuo, possibilitando a aprendizagem e a superação das dificuldades surgidas no decorrer do processo de ensino e de aprendizagem em qualquer etapa de desenvolvimento dos conteúdos e atividades pedagógicas dos módulos e do curso.” (ESCOLA TÉCNICA REDENTORISTA, 2008. Plano de Curso – Informação e Comunicação)
INTRODUÇÃO À PROGRAMAÇÃO
Utilizar adequadamente os recursos de hardware dos computadores. Compreender os conceitos fundamentais de algoritmos como forma de solução de problemas;
Implementar algoritmos em uma linguagem de programação;
Raciocinar lógica e abstratamente para definir a solução computacional de problemas propostos;
Identificar os tipos de linguagem de programação;
Organizar atividades de entrada e saída de dados de sistemas de informação usando linguagem de programação adequada;
Selecionar a linguagem de programação de acordo com as necessidades do usuário;
Construir modelos de dados e relacionamento entre eles;
Interpretar e Utilizar modelos, pseudo-códigos e ferramentas na solução de problemas;
Elaborar e executar casos de testes de programas.
BANCO DE DADOS RELACIONAL
Conhecer as estruturas de bancos de dados e os gerenciadores de banco de dados;
Utilizar a tecnologia de aplicativos como ambiente de desenvolvimento de ferramentas de consulta a banco de dados;
Gerar soluções de gerenciamento de banco de dados, de acordo com a necessidade dos usuários do sistema de informação.
Principais Referências e Links Úteis
INTRODUÇÃO À PROGRAMAÇÃO
Site Oficial da Linguagem de Programação Python: python.org/
Download: python.org/download/
Documentação: docs.python.org/3/
Como pensar como um cientista da Computação usando Python [versão completa em português]
Livro escrito por: Allen Downey, Jeffrey Elkner, Chris Meyers
Aprendendo com Python: Edição interativa (usando Python 3.x) [versão não completamente em português]
Tradução do livro “How to Think Like a Computer Scientist: Interactive Version”, de Brad Miller e David Ranum
Vídeo-aulas:
Universidade Federal de Campina Grande
Sobre Interface Gráfica...
Tkinter - primeiros caminhos (Material do Blog Tech)
Interfaces Gráficas com Tk (Material do Curso de Python para as Engenharias da UFRJ - DCC/IM)
ATENÇÃO: Para Python 3.3, use t minúsculo no import. Ou seja: from tkinter import * em vez de from Tkinter import *.
Vídeo-aulas sobre Tkinter (Material de Lario Diniz):
BANCO DE DADOS RELACIONAL