1 / 30

Fundamentos de Programação

Fundamentos de Programação. Luiz Paulo Maia lpmaia13@gmail.com. Conteúdo. Arquitetura Web Conceito de algoritmo Conceito de programa. Arquitetura Web. Arquitetura Centralizada.

jetta
Download Presentation

Fundamentos de Programação

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. Fundamentos de Programação Luiz Paulo Maia lpmaia13@gmail.com

  2. Conteúdo • Arquitetura Web • Conceito de algoritmo • Conceito de programa

  3. Arquitetura Web

  4. Arquitetura Centralizada • Existe um computador central de grande porte (mainframe) que executa a aplicação, consulta o banco de dados e exibe as saídas para os analistas e usuários • Geralmente, utiliza-se “terminais burros” ou emuladores de terminal para o acesso ao sistema

  5. Arquitetura Cliente/Servidor

  6. Arquitetura Web 1a. camada 2a. camada 3a. camada servidor cliente servidor Conexão HTTP ASP.NET PHP JSF ... Conexão nativa ou ODBC JavaScript HTML Flash ActiveX Applet … Oracle MySQL Postgres SQL Server ... aplicação dinâmica

  7. Ferramentas na Camada 1 • Browser • HTML, CSS • Plugins: Flash, QuickTime, SilverLight  • JavaScript, VBscript • Java, ActiveX

  8. Ferramentas na Camada 2 • Servidor Web • MS Internet Information Server (IIS) • Appache • Consultar http://news.netcraft.com/

  9. Ferramentas na Camada 3 • Servidor de Banco de Dados • Oracle • MS SQL Server e Access • MySQL • PostgreSQL

  10. Conceito de Algoritmo

  11. O que é um Algoritmo? • Algoritmo é um conjunto finito de passos ou instruções cujo objetivo é solucionar determinado problema • “Sequência ordenada e não ambígua de passos que levam a solução de um problema” Tremblay • Não está associado necessariamente a computadores

  12. Algoritmos • Exemplos: receita de bolo, utilização de um caixa eletrônico, chegar em um determinado endereço, validação de senha, ordenação alfabética de um conjunto de clientes, totalização das comissões de venda em um determinado mês, etc.

  13. Sequência de Passos • Algoritmos são executados um passo após o outro na forma de sequência: Passo 1 Passo 2 Passo 3 ...

  14. Desvio • Certos passos devem ser executados apenas em determinadas condições: Se Condição Então Passo 1 Senão Passo 2 Passo 3

  15. Repetição • Existem situações onde um ou mais passos devem ser repetidos. Enquanto Condição Passo 1 Passo2

  16. Solucionando Problemas • Entender o problema. • Identificar entradas e saídas. • Escrever a sequência de passos, condições e repetições necessárias para transformar as entradas em saídas usando uma linguagem algorítmica. • Converter o algoritmo em um programa.

  17. Fluxograma Português estruturado (portugol) Formas de Representação

  18. Exercício • Criar um algoritmo para fazer ovos mexidos

  19. Solução v.1 • Pegar ingredientes • Acender o fogo • Quebrar os ovos • Mexer os ovos • Apagar o fogo • Servir

  20. Solução v.2 • Pegar os ovos, gordura, sal, frigideira e colher • Acender o fogo e colocar a frigideira • Colocar a gordura • Quebrar os ovos • Colocar o sal • Mexer os ovos • Apagar o fogo • Servir

  21. Solução v.3 • Pegar dois ovos, uma colher de sopa de gordura, meia colher de chá de sal, frigideira e uma colher de madeira • Acender o fogo e colocar a frigideira • Colocar a gordura • Aguardar a gordura aquecer • Quebrar os ovos na frigideira • Colocar o sal nos ovos • Mexer os ovos com a colher até ficarem no ponto • Apagar o fogo • Servir

  22. Exercícios Criar um algoritmo para trocar o pneu de um carro Criar um algoritmo para trocar uma lâmpada de teto

  23. Solução Ligar o pisca alerta Estacionar e desligar o carro, se for o caso Verificar se o freio de mão está puxado Abrir a mala Retirar o triângulo e colocá-lo na posição Retirar o macaco, chave de roda e estepe Utilizar a chave de roda para afrouxar os parafusos Posicionar o macaco e levantar o carro Retirar os parafusos com a chave de roda Retirar o pneu com problema Colocar o estepe e colocar os parafusos Baixar o carro Apertar os parafusos com a chave de roda Guardar o pneu com problema, chave e macaco Retirar e guardar o triângulo

  24. Solução Se não houver lâmpada em casa então Sair para comprar Verificar se há falta de energia Desligar interruptor Pegar a escala Posicionar a escada Subir a escada com a lâmpada Apoiar a lâmpada no último degrau Soltar a lâmpada queimada Colocar a lâmpada nova Descer a escada com a lâmpada queimada Testar a lâmpada Descartar a lâmpada queimada em local apropriado Guardar a escada

  25. Conceito de Programa

  26. Programação na Década 1940

  27. O que é um Programa? • Programa é um algoritmo escrito em uma linguagem de programação. • Linguagem de programação é uma linguagem artificial utilizada para especificar instruções para computadores. • Como qualquer linguagem, é um conjunto de regras sintáticas e semânticas cujo objetivo principal é a comunicação.

  28. Arquitetura Von Neumann • The von Neumann architecture is a design model for a stored-program digital computer that uses a central processing unit (CPU) and a single separate storage structure ("memory") to hold both instructions and data. It is named after the mathematician and early computer scientist John von Neumann. Such computers implement a universal Turing machine and have a sequential architecture. • A stored-program digital computer is one that keeps its programmed instructions, as well as its data, in read-write, random-access memory (RAM). Stored-program computers were an advancement over the program-controlled computers of the 1940s, such as the Colossus and the ENIAC, which were programmed by setting switches and inserting patch leads to route data and to control signals between various functional units. In the vast majority of modern computers, the same memory is used for both data and program instructions. The mechanisms for transferring the data and instructions between the CPU and memory are, however, considerably more complex than the original von Neumann architecture. • (Wikipedia, 2010)

  29. Programa Armazenado

  30. Tipos de Linguagens • Linguagens compiladas • Existe um processo de compilação e geração de um programa executável que pode ser executado pela UCP • Ex: Delphi, Visual Basic (VB), C/C++, COBOL, Pascal • Linguagens interpretadas • Não existe compilação nem programa executável • Cada instrução do programa é interpretada e executada pela UCP • Pode gerar problemas de desempenho • Ex: JavaScript, Perl, PHP, Java, C#

More Related