Tpicos Especiais em Linguagem de Programao III Programao

  • Slides: 32
Download presentation
Tópicos Especiais em Linguagem de Programação III Programação Visual Orientada a Eventos com aplicações

Tópicos Especiais em Linguagem de Programação III Programação Visual Orientada a Eventos com aplicações gráficas e em Inteligência Artificial Apresentação da Disciplina 1

Ementa Apresentação da disciplina Histórico das linguagens de programação Programação Visual Orientada a Eventos

Ementa Apresentação da disciplina Histórico das linguagens de programação Programação Visual Orientada a Eventos Visual Basic – Linguagem Prática com VB C++ Builder Prática com C++ Builder Delphi e Object Pascal Prática com Delphi Busca, STRIPS, Árvores de decisão Lógica Fuzzy, Redes Neurais, Agentes Aplicações gráficas – Open. GL VBA com Excel VBA com Access VBA com Word e Power. Point VBScript Prática em Laboratório 2

Motivação para a Disciplina Linguagens de Programação são difíceis Linguagens de Programação permanecem pequeno

Motivação para a Disciplina Linguagens de Programação são difíceis Linguagens de Programação permanecem pequeno tempo “em moda” O número de Linguagens de Programação existentes é gigantesco e vai continuar a crescer Freqüentemente a carreira nos obriga a parar de programar por algum intervalo de tempo (às vezes para sempre) Parando de programar nossa habilidade de programação encolhe (às vezes desaparece) Existem enormes quantidades de programas disponíveis, porém em diversas Linguagens de Programação e não compatíveis uns com outros 3

Motivação para a Disciplina (cont. ) Profissionais de Ciências Exatas precisam programas computadores Protótipos

Motivação para a Disciplina (cont. ) Profissionais de Ciências Exatas precisam programas computadores Protótipos são fundamentais 4

Constatação Diretores, Gerentes, Chefes e Professores tendem a perder a capacidade de programar e

Constatação Diretores, Gerentes, Chefes e Professores tendem a perder a capacidade de programar e tornam-se dependentes de terceiros para se comunicar usando computadores 5

Tipos de programadores Programadores tradicionais que sabem tudo ou quase tudo de determinada Linguagem

Tipos de programadores Programadores tradicionais que sabem tudo ou quase tudo de determinada Linguagem de Programação Programadores de microcomputadores que não sabem programar Sistemas sabem tudo, ou quase tudo, de uso de aplicativos, instalações, telas, opções, etc. Programadores incompetentes Programadores que conseguem resolver problemas pessoais e empresariais 6

Tipos de programas Sistemas com longa vida útil sendo desenvolvidos durante largos períodos de

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 7

Sistemas de Tratamento da Informação Geralmente são entendidos por todos, não havendo complexidade na

Sistemas de Tratamento da Informação Geralmente são entendidos por todos, não havendo complexidade na definição do problema ou solução As dificuldades são: Captura das especificações Interação com o usuário Gerenciamento da Informação 8

Sistemas de Cálculo Geralmente não apresentam complexidade na interação com o usuário ou no

Sistemas de Cálculo Geralmente não apresentam complexidade na interação com o usuário ou no gerenciamento da informação As dificuldades são: Captura das natureza do problema a resolver Obtenção do conhecimento técnico para a solução (geralmente englobando conhecimentos matemáticos, físicos, químicos, estatísticos, de cálculo numérico, etc. ) Implementação de uma solução a custos computacionais razoáveis 9

Sistemas de apoio à decisão Sistemas de Apoio à Decisão (“Decision Support Systems –

Sistemas de apoio à decisão Sistemas de Apoio à Decisão (“Decision Support Systems – DSS”) são uma classe específica de sistemas de informação computadorizada que apóia atividades de tomada de decisão em negócios e organização. Com eles os tomadores de decisão obtém informação útil dos dados brutos, documentos, conhecimento pessoal e/ou modelos de negócios para identificar e resolver problemas e tomar decisões. 10

Sistemas de apoio à decisão (cont. ) As informações típicas que uma aplicação de

Sistemas de apoio à decisão (cont. ) As informações típicas que uma aplicação de apoio à decisão pode obter e apresentar são: Acesso ao patrimônio de informações da organização, incluindo fontes de dados herdadas de antigas aplicações, fontes de dados relacionais, cubos, data warehouses e data marts. Medidas de desempenho (vendas, produção, retrabalho) entre um período de tempo e o próximo. Projeções de resultados financeiros baseadas em projeções de produção e/ou vendas. Conseqüências de diferentes alternativas de decisão, a partir da experiência em ambientes o contextos tais como o em tela. 11

Protótipos são ferramentas para a criação ou simulação de programas. Estas ferramentas freqüentemente permitem

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 12

Necessidade Programação e Prototipação O desenvolvimento de Sistemas, para a maioria dos profissionais é

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 13

Desenvolvimento de Sistemas de Informações Os protótipos servem para validar a captura das especificações

Desenvolvimento de Sistemas de Informações Os protótipos servem para validar a captura das especificações de requisitos e a interação com o usuário Especialistas projetam: Arquitetura do Sistema Modelagem Bancos de Dados Comunicação de Dados Interface O Sistema segue o ciclo de vida normal 14

Desenvolvimento de Sistemas de Cálculo Especialistas fornecem um algoritmo para a solução do problema

Desenvolvimento de Sistemas de Cálculo Especialistas fornecem um algoritmo para a solução do problema Os protótipos servem para verificar a possibilidade de se conseguir chegar a um resultado desejado Especialistas projetam: Arquitetura do Sistema Modelagem Bancos de Dados Comunicação de Dados Interface O Sistema segue o ciclo de vida normal 15

Desenvolvimento de Sistemas de Apoio à Decisão Os protótipos já são o resultado desejado

Desenvolvimento de Sistemas de Apoio à Decisão Os protótipos já são o resultado desejado 16

Proposta do Curso Você pode não perder a capacidade de programar Você pode programar

Proposta do Curso Você pode não perder a capacidade de programar Você pode programar bem ser um exímio programador Conseguindo programar protótipos e utilizar linguagens de “scripting” sua carreira pode ter um diferencial de qualidade 17

Como fazer Linguagens Visuais ampliam extraordinariamente o poder de comunicação dos protótipos Linguagens Orientadas

Como fazer Linguagens Visuais ampliam extraordinariamente o poder de comunicação dos protótipos Linguagens Orientadas a Eventos simplificam tremendamente a programação de protótipos Linguagens Visuais Orientadas a Eventos serão a nossa ferramenta predileta 18

Pontos importantes O mais importante é o seu conhecimento básico de computadores, Sistemas e

Pontos importantes O mais importante é o seu conhecimento básico de computadores, Sistemas e algoritmos A linguagem de programação é bem menos importante Você pode enfrentar qualquer linguagem de programação porque Existe um grande número de exemplos de código disponíveis na Internet A Programação Orientada a Eventos dispõe de Completamento de código Ajuda “on-line” Depurador “on-line” 19

O que será estudado Revisão das Linguagens de Programação como um todo A Linguagem

O que será estudado Revisão das Linguagens de Programação como um todo A Linguagem Visual Basic por ser estranha aos Cursos acadêmicos, além de ser a Linguagem de automação da Microsoft e, como tal, ser muito difundida O uso dos produtos VB, Delphi e C++ Builder 20

O que não será estudado A linguagem Object Pascal A linguagem C++ 21

O que não será estudado A linguagem Object Pascal A linguagem C++ 21

Garantia de sucesso Para comprovar a validade da proposta do Curso serão desenvolvidas aplicações

Garantia de sucesso Para comprovar a validade da proposta do Curso serão desenvolvidas aplicações consideradas extremamente difíceis: Redes Neurais Computação Gráfica Gerativa Lógica Fuzzy 22

Em resumo A programação de Sistemas é tarefa complexa e nada muda daquilo que

Em resumo A programação de Sistemas é tarefa complexa e nada muda daquilo que tem sido ensinado no Curso de Ciência da Computação Ocorre que, mesmo em “software houses”, a maior parte do tempo se está programando protótipos e isto é que se pretende estudar neste Curso. 23

Como será o desenvolvimento do Curso Serão apresentados ambientes de programação Será apresentado um

Como será o desenvolvimento do Curso Serão apresentados ambientes de programação Será apresentado um enorme número de exemplos de aplicações funcionando em todas as Linguagens e ambientes de Programação Serão cobrados oito exemplos de pequeno grau de complexidade Serão cobrados um (ou dois) exemplos de moderado grau de complexidade Não haverá provas (apenas VS para reprovar os que não fizerem os trabalhos) 24

Trabalhos Os trabalhos de pequeno grau de complexidade serão individuais Os trabalhos de moderado

Trabalhos Os trabalhos de pequeno grau de complexidade serão individuais Os trabalhos de moderado grau de complexidade serão individuais Se algum grupo de alunos desejar se unir para enfrentar um trabalho de elevado grau de complexidade pode-se estudar esta opção 25

Exemplos que serão fornecidos 26

Exemplos que serão fornecidos 26

Exercícios de pequeno grau de dificuldade 27

Exercícios de pequeno grau de dificuldade 27

Exercícios de moderado grau de dificuldade 28

Exercícios de moderado grau de dificuldade 28

Conclusão Pretende-se que esta disciplina seja uma diversão criativa para quem gosta de programar

Conclusão Pretende-se que esta disciplina seja uma diversão criativa para quem gosta de programar computadores Bem-vindos ao Curso Grato pela confiança 29

Formalização da Ementa 30

Formalização da Ementa 30

Formalização da Ementa (cont. ) 31

Formalização da Ementa (cont. ) 31

32

32