1 / 39

Tópicos Especiais em Linguagem de Programação III

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. Apresentação da disciplina Histórico das linguagens de programação Programação Visual Orientada a Eventos

Télécharger la présentation

Tópicos Especiais em Linguagem de Programação III

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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, Redes Semânticas Lógica Fuzzy, Redes Neurais, Agentes Aplicações gráficas – OpenGL VBA VBA com Excel VBA com Word e PowerPoint Prática em Laboratório Calendário Formalização da Ementa Ementa

  3. 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

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

  5. 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

  6. 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 mas 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

  7. 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

  8. 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

  9. 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

  10. 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.

  11. 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, re-trabalho) 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.

  12. 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

  13. 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

  14. 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

  15. 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

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

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

  18. 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

  19. 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”

  20. 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

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

  22. Garantia de sucesso • Para comprovar a validade da proposta do Curso serão desenvolvidas aplicações consideradas extremamente difíceis: • Redes Neurais e outras aplicações de Inteligência Artificial • Computação Gráfica Gerativa

  23. 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.

  24. 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 seis exemplos de pequeno grau de complexidade • Serão cobrados dois exemplos de moderado grau de complexidade • Não haverá provas (apenas VS para reprovar os que não fizerem os trabalhos)

  25. Trabalhos • Os trabalhos 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

  26. Duas vias • O Curso deve preparar alunos para trabalhar com Programação Visual e geração de protótipos e terão seu desenvolvimento aqui descrito, pela chamada via normal. • Alunos que já dominarem as linguagens e ambientes que serão ministradas poderão ser aprovados por via rápida. Isto significa que poderão entregas trabalhos especiais a qualquer tempo. Após a entrega dos trabalhos estarão aprovados e dispensados de presença.

  27. Trabalhos da via normal

  28. Escolha de trabalhos • Os trabalhos deverão ser escolhidos com o Professor para evitar superposição. Cópia de trabalhos é permitido mas todos copiarem o mesmo trabalho não o é. • A sugestão de macros está exibida a seguir. Cada sugestão de Word pode ser aceita até por três alunos. Cada sugestão PowerPoint pode ser aceita até por cinco alunos.

  29. Sugestão de macros a apresentar

  30. Sugestão de aplicações de Inteligência Artificial a apresentar

  31. Trabalhos da via rápida • Alunos que já dominarem as linguagens que serão ministradas poderão ser aprovados por via rápida. Isto significa que poderão entregas trabalhos especiais a qualquer tempo. Após a entrega dos trabalhos estarão aprovados e dispensados de presença. Os trabalhos de via rápida serão agrupados em dois pacotes. • Pacote 1 • Pacote 2

  32. Pacote 1 da via rápida • Teste e descrição do conteúdo de todos os trabalhos apresentados pelos alunos do período passado. Execução de todos os programas e preenchimento do Banco de Dados de programas executados. O resultado do trabalho será apresentado em um programa, escrito em qualquer linguagem, permitindo a recuperação de informações por linguagem, aluno, período e tipo de aplicação. • São previstas as seguintes entidades e atributos: • Programa com Linguagem, título, tipo, descrição, recursos usados, como usar, comentários do professor e grau; • Aluno com nome, período e grau. • O atributo tipo pode assumir os valores VB, BCB, Delphi, Macro Excel, Macro Word, Macro PowerPoint, Agentes, Redes Neurais, Fuzzy, Busca, OpenGL, Outros. • O valor do trabalho, como um todo, é 10,0 não se aceitando parte do trabalho. Este pacote poderá ser escolhido, no máximo, por três alunos sendo que cada qual deverá apresentar um trabalho independente (e distinto) dos demais.

  33. Pacote 2 da via rápida • Uma mesma aplicação em OpenGL com uso de animação, textura e tutorial passo a passo feito diversas linguagens (VB, Visual C++, Delphi, C++ Builder) mais três Macros (uma em Excel, uma em Word, uma em PowerPoint). O valor do trabalho, como um todo, é 10,0 não se aceitando parte do trabalho. Este pacote poderá ser escolhido, no máximo, por cinco alunos sendo que cada qual deverá apresentar um trabalho independente (e distinto) dos demais.

  34. Calendário

  35. Calendário (cont.)

  36. 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

  37. Formalização da Ementa

  38. Formalização da Ementa (cont.)

More Related