1 Apresentação da Disciplina Estruturas de Dados I.

Slides:



Advertisements
Apresentações semelhantes
Federação Portuguesa de Atletismo
Advertisements

Introdução à Ciência da Computação Linguagens de Programação.
Amintas engenharia.
O ESDE COM QUALIDADE.
Rational Unified Process
1. 2 Pearson Education do Brasil Editora educacional de alcance mundial No Brasil, publica nas áreas universitária, de ensino de inglês, negócios e informática.
NÍVEL DE SATISFAÇÃO DO USUÁRIO
Protótipo de Simulador de Elevadores
ELABORAÇÃO DE PROJETOS
Engenharia de Software
FINANÇAS EM PROJETOS DE TI
Exploração GSI :: Gestão da Mudança, Uso e Impacto dos SI
2 de Junho de 2005Conclusão1 Pedro Barahona DI/FCT/UNL Junho 2005.
1 Conclusão DI/FCT/UNL 1º Semestre 2004/ Ciclos de Simulação A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas.
Tópicos Especiais em Linguagem de Programação III
SSC SISTEMAS OPERACIONAIS I Aulas 6 – Escalonamento de Processos
INTRODUÇÃO À PROGRAMAÇÃO
Projeto I Walfredo Cirne Objetivo da Disciplina Dar aos alunos a experiência do desenvolvimento de projetos reais.
Curso Sistemas de Informação Disciplina: Arquitetura de Software
Curso Sistemas de Informação I Disciplina: Arquitetura de Software
Curso Sistemas de Informação Disciplina: Arquitetura de Software
Curso Comércio exterior e investimento (Economia Internacional II)
Aula 3 Evolução da Principais Linguagens
Implementação de Sistemas
Laboratório de Programação de Computadores I
TÉCNICA DE CONSULTORIA
Registro Eletrônico para Acompanhamento Médico de Pacientes em uma UTI Rafael Charnovscki (1), Jacques R. Nascimento Filho (2,3) Giancarlo Bianchin.
Ambientes Virtuais de Aprendizagem
Como Desenvolver Sistemas de Informação
Mesa Redonda Corpora e Ensino
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Engenharia de Software
Introdução a Programação Orientada a Objetos
Modelo Rojo para Construção de Cenários
Monitoria GENÉTICA MÉDICA E GENÉTICA HUMANA.
Monitoria GDI Aula Prática
Planejamento Administrativo Petrópolis, março 2008.
Liane Tarouco CINTED/UFRGS
Engenharia de Requisitos
Criação do Modelo Conceitual
PROGRAMAÇÃO I UNIDADE 1.
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – COINFO – CEFET-PB 12. Estados Objetivo: compreender a notação do diagrama de estados.
Object Oriented Software Construction (MEYER, Bertrand)
SISTEMAS OPERACIONAIS
Estruturas de Dados com Jogos
BENCHMARKING.
Ana Paula L. Ambrósio Fábio M. Costa
CIÊNCIA DA COMPUTAÇÃO ENGENHARIA DE SOFTWARE Aula 1
Sistemas Operacionais
Organização Empresarial
Olimpíada Brasileira de Informática na UDESC
Caracterização e Objetivos das LP
Arquitetura de computadores
Ritornello Um Framework para Representação de Conhecimento Musical
Bruno Iran Ferreira Maciel
Técnicas de Modelagem para Aplicações em Computação Gráfica
Projeto de Banco de Dados
Linguagem e Ambiente Scratch
1 A COMPUTAÇÃO MODERNA Valdemar W. Setzer Depto. de Ciência da Computação da USP
Curso - Aprenda a Criar Sites com domínio próprio
Como Programar? Dicas para começar a programar bem
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Algoritmos e estrutura de dados Prof. Luiz Gonzaga da Silveira Jr
Sistemas de Informação – mais que tecnologia Profa. Reane Franco Goulart.
INE5408 Estruturas de Dados Apresentação e Programa da Disciplina.
Curso Engenharia Química Modalidade Superior Instituto Federal do Sul de Minas, câmpus Pouso Alegre Professora Michelle Nery Programação de Computadores.
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Aula 2 Professor: Italo Rodrigues Castro.
INTRODUÇÃO THOBER CORADI DETOFENO, MSC. Aula 01 JOINVILLE 2015 Universidade do Estado de Santa Catarina – CCT/UDESC.
Estrutura de Dados Prof. André Cypriano M. Costa
Testes de Unidade. 2 Pauta Testes de Unidade; Testes de Unidade; Desenvolvimento orientado a testes; Desenvolvimento orientado a testes; Testes unitários.
Transcrição da apresentação:

1 Apresentação da Disciplina Estruturas de Dados I

22 Sumário Conceito de Estruturas de Dados Tipo de programas Protótipos Necessidade de programação e prototipação Constatação Convocação Linguagens de Programação Linguagens de scripting atuais Linguagens de programação atuais O que se espera que os alunos de graduação saibam Tipos de aulas Critérios de avaliação

33 Conceito de Estruturas de Dados Em Ciência da Computação uma estrutura de dados é uma maneira de armazenar dados em computadores de forma a usá-los de maneira eficiente. Uma estrutura de dados bem escolhida pode permitir o emprego de um algoritmo mais eficiente. A escolha de uma estrutura de dados começa com a escolha de uma estrutura de dados abstrata. Uma estrutura de dados bem projetada permite a execução de uma variedade de operações críticas usando tão poucos recursos (tempo de execução e espaço de memória) quanto possível

44 Tipos de programas Sistemas com longa vida útil sendo desenvolvidos durante largos períodos de tempo Sistemas de Tratamento da Informação Sistemas de Cálculo Outros Sistemas de apoio à decisão com pequena vida útil, sendo úteis para um momento específico e, portanto, tendo de ser desenvolvidos em curtíssimo período de tempo

55 Protótipos Protótipos são ferramentas para a criação ou simulação de programas. Estas ferramentas freqüentemente permitem a colagem de programas existentes, mesmo que em diversas linguagens de programação. Protótipos de programas são necessários para: Verificar a viabilidade de uma proposta ou de um Sistema pois conhecimentos recentemente adquiridos são de difícil validação sem testes Comunicação com os usuários Comunicação com a equipe de desenvolvimento de Sistemas Comunicação empresarial Mostrar desenvoltura, iniciativa e competência

66 Necessidade Programação e Prototipação O desenvolvimento de Sistemas, para a maioria dos profissionais é atividade para curto prazo em sua vida profissional (5 a 15 anos) A necessidade de programação é atividade para toda a vida profissional A necessidade programação quase sempre recai na necessidade de geração de protótipos Em geral profissionais constroem de 3 a 20 Sistemas em sua vida profissional mas tem de fazer (ou mandar fazer) um protótipo a cada 20 dias, ou seja, a cada ano da vida profissional se faz (ou se deveria fazer) mais protótipos do que os Sistemas feitos em toda a vida profissional

77 Constatação O desenvolvimento de Sistemas tem se tornado cada vez mais complexo Os aplicativos são abundantes, flexíveis e poderosos Os profissionais programam cada vez menos tornado-se pilotos de aplicativos Quem conseguir enfrentar as feras, dominando o desenvolvimento de Sistemas, torna-se um profissional de destaque A maioria dos profissionais procura soluções fáceis

88 Convocação Evitem as soluções de baixo nível Enfrentem as feras Sejam melhores do que a concorrência Destaquem-se da multidão: sejam especiais O esforço é grande mas de curta duração O resultado é para toda a vida

99 Linguagens de Programação Linguagens de Programação são difíceis Não existem mais Linguagens de Programação fáceis desde o advento de Orientação a Objeto, Programação Por Eventos, Linguagens Visuais Linguagens de Programação permanecem pequeno tempo em moda O número de Linguagens de Programação existentes é gigantesco e vai continuar a crescer Linguagens de scripting são simples e fáceis mas não servem para Sistemas

10 Linguagens de scripting atuais JCL Rexx WFL "Shells" Unix (sh, csh, ksh,...) Prolog Perl Tcl Python

11 Linguagens de programação atuais Para grandes Sistemas Java C++ Para pequenos Sistemas e prototipação VB (Basic) Delphi (Object Pascal) LISP

12 O que se espera que os alunos de graduação saibam Necessidades Uma Linguagem de Programação Orientada a Objeto Uma Linguagem Visual Orientada a Eventos Disponibilidade atual Pascal Problemas Não há escala para Sistemas desenvolvidos em Pascal Em qual Disciplina (ou disciplinas) serão ensinadas as linguagens necessárias? Será obrigação dos alunos aprender por conta própria?

13 Linguagens de Programação do Curso de Estruturas de Dados Os alunos terão a liberdade de escrever os programas exigidos pelo Curso em qualquer linguagem de programação Todavia a facilidade de montagem dos fontes fornecidos por Bruno Preiss tornará evidente a facilidade e o potencial do reuso de código propiciado pelo paradigma de programação orientado a Objeto. Para facilitar a aprendizagem serão mostrados os trechos de código que terão de ser incorporados ao programa para obter a funcionalidade desejada, tanto em Java quanto em C++ Para os resistentes à Orientação a Objeto serão fornecidos códigos em Programação Estruturada C usados em 1995

14 Tipos de aulas Aulas expositivas como default Laboratório quando necessário Os alunos deverão acompanhar a exposição com o material disponível na página do professor Os alunos poderão escolher a linguagem a estudar nas Notas de Aula (Java ou C++) A parte de código deverá ser estudada em sala com o acompanhamento pelo professor cuja tarefa principal será tirar dúvidas

15 Aprovação por via normal Provas (peso 2) Primeira e segunda prova alternativas Terceira prova obrigatória Trabalhos de programação (peso 1) Pilhas e filas Aplicações de pilhas e recursividade Listas e árvores binárias Classificação

16 Aprovação pela via de pesquisa Pesquisa de frameworks em outras linguagens Delphi VB Implementação dos frameworks em outras linguagens Avaliação Apresentações semanais fora do horário de aula cujo resultado é eliminatório da via de pesquisa (peso 6) Resultado obtido (peso 3) Apresentação para a turma (peso 1)

17 Programação para o Segundo Período de 2007

18 Material de apoio para as aulas

19 Influência do Tamanho do Empregador

20 Code Project newsletter (13/08/2007) 20 Este sítio é de programação pesada. O pessoal que o freqüenta está mais para o desenvolvedor independente do que para o desenvolvedor de grandes Sistemas em equipe. GNU, GPL, IBM e Sun dão apoio substancial à linguagem Java.

21 Dados da Consultoria TIOBE

22 Dados da Consultoria TIOBE