sexta-feira, 18 de janeiro de 2013

Disciplina Estrutura de Dados

A disciplina de estrutura de dados foi ministrada pelo professor Fabio Marques o qual  pode ser acompanhado pelo site: http://www.fmarques.eti.br/

Estruturas de dados

    Em diversos contextos, disciplinas associadas à programação recebem a denominação de ``processamento de dados''. Esta denominação não é gratuita -- de fato, embora seja possível criar               procedimentos que não manipulem nenhum dado, tais procedimentos seriam de pouco valor prático.
    Uma vez que procedimentos são, efetivamente, processadores de dados, a eficiência de um procedimento está muito associada à forma como seus dados são organizados. Estrutura de dados é o ramo da computação que estuda os diversos mecanismos de organização de dados para atender aos diferentes requisitos de processamento.
       As estruturas de dados definem a organização, métodos de acesso e opções de processamento para a informação manipulada pelo programa. A definição da organização interna de uma estrutura de dados é tarefa do projetista da estrutura, que define também qual a API para a estrutura, ou seja, qual o conjunto de procedimentos que podem ser usados para manipular os dados na estrutura. É esta API que determina a visão funcional da estrutura de dados, que é a única informação relevante para um programador que vá utilizar uma estrutura de dados pré-definida. Disponível em:http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node10.html.


sábado, 12 de janeiro de 2013

Linguagem e Programação Orientada a Objetos

SERVIÇO PÚBLICO FEDERAL
MINISTÉRIO DA EDUCAÇÃONIVERSIDADE FEDERAL RURAL DA AMAZÔNIA
PLANO NACIONAL DE FORMAÇÃO DE PROFESSORES

PLANO DE DISCIPLINA 

CURSO: LICENCIATURA EM COMPUTAÇÃO (Parauapebas)
DISCIPLINA: Linguagem e Programação Orientada a Objetos CARGA HORÁRIA: 
PROFESSOR: MSc. Eng. Ítalo Flexa Di Paolo PRESENCIAL AUTO-ESTUDO TOTAL
COORDENADOR: MSc. Aurecílio Guedes SEMESTRE/ANO LETIVO:
1/2013 64 horas 16 horas 80 horas

EMENTA:
Conceito e estudo do paradigma imperativo procedural e orientado a objetos. A Linguagem Java. Noções Básicas sobre Java. Programação Orientada a objeto em Java. Escopo e visibilidade de variáveis. Métodos e Classes, Herança e polimorfismo. Tratamento de exceções Manipulação de arquivos. Técnicas de Desenvolvimento de Programas: Projeto Prático de Programação.

OBJETIVO:
Aprofundar e ampliar os conceitos sobre programação familiarizando o aluno com uma segunda linguagem de programação com grande poder de expressão e recursos. Estudar os conceitos sobre o paradigma orientado a Objetos bem como conhecer noções avançadas de programação.

CONTEÚDO PROGRAMÁTICO:
1. Visão geral da tecnologia Java
1.1. Diferenças entre JVM, JRE, JDK, Java Platform e Java
1.2. Compilando e executando o primeiro programa
1.3. Depuração
2. Estruturas de programação em Java
2.1. Variáveis e tipos primitivos
2.2. Casting
2.3. Condicionais
2.4. Laços
2.5. Escopo de variáveis
2.6. Vetores e matrizes
3. Orientação a objetos básica
3.1. Motivação: problemas do paradigma procedural
3.2. Classes e objetos em Java
3.3. Métodos 
4. Modificadores de acesso e atributos de classe
4.1. Controlando o acesso
4.2. Encapsulamento
4.3. Construtores
4.4. Atributos de classe
5. Orientação a Objetos
5.1. Herança
5.2. Polimorfismo
5.3. Classes abstratas
5.4. Interfaces
5.5. Pacotes
6. Controlando os erros com Exceções
6.1. try/catch

ESTRATÉGIAS DE ENSINO (PRESENCIAIS E A DISTÂNCIA):
Aulas práticas em laboratório de informática; encaminhamento de atividades à distância com caráter de aplicabilidade prática.
RECURSOS: 
Todos os dias:
Datashow e computador (editor de textos, planilha eletrônica e apresentação);
Quadro branco;
Laboratório de informática com acesso a Internet em todos os computadores.
Software:
NetBeans 7.0.2 com módulos JSE e JDK 7u4
Acrobat Reader ou Foxit Reader.

AVALIAÇÃO:
1ª Avaliação: avaliação prática em laboratório de informática.
2ª Avaliação: avaliação prática em laboratório de informática mais atividade à distância.
3ª Avaliação: avaliação prática em laboratório de informática.

BIBLIOGRAFIA:
Bibliografia Básica:
MANZANO J. A. N. G.; OLIVEIRA J. F. O. Algoritmos: lógica para desenvolvimento de programação de computadores. 14.ed. São Paulo: Érica, 2002.
DEITEL, H. M. & DEITEL, P. J. Java como Programar. Porto Alegre: Bookman, 2001.
KERNINGHAN, B. W. Prática da programação. Rio de Janeiro: Campus, 2000.
Bibliografia Complementar:
KERNINGHAN, B. W.; RITCHIE, D. C A Linguagem de Programação. Rio de Janeiro: Campus, 2003.

CRONOGRAMA DE AULAS (PRESENCIAIS E ATIVIDADES A DISTÂNCIA)
Mês: Janeiro/2013
Dia Tópicos/Atividades
07 1. Visão geral da tecnologia Java (Diferenças entre JVM, JRE, JDK, Java Platform e Java; Compilando e executando o primeiro programa; Depuração).
2. Estruturas de programação em Java (Variáveis e tipos primitivos; Casting; Condicionais; Laços; Escopo de variáveis; Vetores e matrizes).
08 Exercícios.
3. Orientação a objetos básica (Motivação: problemas do paradigma procedural; Classes e objetos em Java; Métodos).
4. Modificadores de acesso e atributos de classe (Controlando o acesso; Encapsulamento; Construtores; Atributos de classe).
09 Exercícios.
5. Orientação a Objetos (Herança; Polimorfismo; Classes abstratas).
10 Exercícios.
5. Orientação a Objetos (Interfaces; Pacotes).
6. Controlando os erros com Exceções (try/catch).
11 Exercícios. Encaminhamento da atividade a ser realizada a distância.
Realização da 1ª avaliação prática.
12 Correção e entrega de notas da 1ª avaliação prática.
Exercícios.
14 Exercícios. Realização da 2ª avaliação prática.
15 Correção e entrega de notas da 2ª avaliação prática. Orientação sobre a atividade a ser realizada a distância. Exercícios. Realização da 3ª avaliação prática.

Distância
Tópicos/Atividades
16/01/13-25/01/13 Atividade em equipe: Desenvolvimento de um programa de computador aplicado à atividade profissional do aluno.


Fotos durante a disciplina: