Paradigmas de Linguagens de Programação
|
|
- Larissa Campelo Vilalobos
- 8 Há anos
- Visualizações:
Transcrição
1 Paradigmas de Linguagens de Programação Faculdade Nova Roma Cursos de Ciências da Computação (6 Período) Prof. Adriano Avelar - Site: edson.avelar@yahoo.com.br
2 Ementa Introdução às linguagens de programação: conceitos elementares. Evolução dos conceitos de linguagens de programação. Atributos semânticos. Tipos de dados: construções de definição e manipulação de tipos de dados; tipos abstratos de dados. Subprogramas e recursividade. Linguagens imperativas. Linguagens funcionais. Linguagens lógicas. Linguagens Orientadas em objetos. Tratamento de Exceções. Introdução à Programação Concorrente. Critérios para seleção de linguagens de programação.
3 Objetivo Introduzir conceitos e princípios fundamentais de linguagens de programação Elementos sintáticos e semânticos Evolução de linguagens de programação Visão geral dos paradigmas de linguagens de programação Imperativo, Funcional, Orientado a Objetos Lógico e Orientado a Aspecto Estratégias para seleção de linguagens de programação Prática com linguagens de programação especializadas
4 Bibliografia Sugerida Allen B. Tucker and Robert E. Noonan: Linguagens de Programação - Princípios e Paradigmas. 2º Edição, McGraw Hill SEBESTA, Robert W. Conceitos de linguagens de programação. 4. ed. Porto Alegre : Bookman, xii, 624 p. GHEZZI, Carlo; JAZAYERI, Mehdi. Programming language concepts. New York: John Wiley, 1997.
5 Metodologia O desenvolvimento do conteúdo da disciplina é feito por meio de aulas expositivas, apresentação de vídeos, debates Realização de exercícios (em sala e extraclasse) Elaboração de trabalhos práticos. Troca de Informações através de um grupo de a ser criado.
6 Avaliação P1 P2 Uma prova escrita (10Pts) Teoria sobre Paradigmas Exercícios (Máximo de 1Pt de Bonificação) Um Prova Escrita (30% da P2) Trabalho Prático (70% da P2) Individual ou Dupla Apresentar uma implementação de uma linguagem de programação a ser definida por sorteio.
7 Observação sobre Exercícios: Como são itens de bonificação, devem ser entregues nas datas solicitas. Não serão aceitos fora do prazo!
8 Visão Geral da Disciplina Categorias de Problemas Paradigmas de Linguagens de Programação
9 Aula de Hoje Motivação Por que estudar princípios e modelos de linguagens de programação? Introdução a Linguagens de Programação modelos de linguagens Características desejáveis em linguagens de programação
10 Princípios de Linguagens de Programação Definição (LP) Uma linguagem de programação é uma linguagem artificial projetada para expressar computações que possam ser executadas por uma máquina, particularmente um computador Porque estudar Paradigmas de LP?
11 Porque estudar Paradigmas de LP? Maior habilidade para resolver problemas; Melhor uso de uma LP; Melhor escolha de uma LP; Maior facilidade em aprender novas LP; Melhor Design de LPs.
12 Projeto de Linguagens de Programação Visão de projeto: Qual a finalidade da LP? Qual sua diferença em relação a outras LP existentes? LP de uso geral: atender diferentes domínios de problemas, usuários e plataformas Modelo de linguagem de programação Modelo imperativo: baseado em comandos Orientado a procedimentos Orientado a objetos Orientado a Aspectos Modelo funcional: baseado em funções Modelo lógico: baseado em axiomas lógicos
13 Modelos de Linguagens Modelo imperativo Linguagens expressam sequências de comandos que realizam transformações sobre dados base: máquina de von Neumann orientadas a procedimentos Modelo declarativo Linguagens que não possuem o conceito de sequências de comandos Linguagens funcionais, baseadas em funções Linguagens lógicas, baseada em axiomas lógicos
14 Modelos de execução Sequencial Uma computação é realizada após o término da anterior Controle de fluxo de execução interno ao programa: Sequência Seleção Iteração Invocações Concorrente Múltiplas computações podem ser executadas simultaneamente Computações paralelas Múltiplos processadores compartilham memória Computações distribuídas múltiplos computadores conectados por uma rede de comunicação
15 Modelo de Execução/Construção Compilada Interpretada
16 Modelo de Nível Baixo Nível Próximo à Maquina MOV AX,0002 MOV BX,0001 ADD AX,BX Alto Nível Próximo ao programador Alto Nível int A, B; int main() { A = 2; B = 1; A = A + B; }
17 Modelo de Aplicação Científica Algol, Fortran, Matlab Comerciais Cobol, Dataflex Processamento de Listas Lisp Gerais Java, C, C++, Visual Basic Inteligência Artificial PROLOG Web JSP, PHP, HTML
18 Critérios para avaliação de LP Legibilidade Simplicidade Expressividade Ortogonalidade Confiabilidade Portabilidade
19 Legibilidade Facilidade de ler e escrever programas Legibilidade influi: desenvolvimento e depuração de programas manutenção de programas desempenho de equipes de programação Fatores que melhoram a legibilidade: Abstração de dados Comandos de controle Modularização de programas Documentação Convenções léxicas, sintaxe e semântica Exemplo em Java: nomes de classes iniciam por letra maiúscula nomes de campos usam letras minúsculas
20 Simplicidade Representação de cada conceito seja simples de aprender e dominar: Simplicidade sintática exige que a representação seja feita de modo preciso, sem ambiguidades Contraexemplo 1: A++; A=A+1; A+=1; ++A. Contraexemplo 2: a, b := x+1, y + 3; Simplicidade semântica exige que a representação possua um significado independente de contexto Contraexemplo: private: B b; class Campo: private Campo Simplicidade não significa concisão A linguagem pode ser concisa mas usar muitos símbolos especiais: Ex. Linguagens Funcionais
21 Expressividade Representação clara e simples de dados e procedimentos a serem executados pelo programa Exemplo: tipos de dados em Pascal Expressividade x concisão Muito concisa: falta expressividade? Muito extensa: falta simplicidade? Linguagens mais modernas Incorporam apenas um conjunto básico de representações de tipos de dados e comandos Aumentam o poder de expressividade com bibliotecas de componentes Ex. BigInteger em Java
22 Ortogonalidade conjunto de construções primitivas pode se combinar em um número grande de maneiras para construir as estruturas de uma linguagem Possibilidade de combinar entre si, sem restrições, os componentes básicos da LP Exemplo: permitir combinações de estruturas de dados, como arrays de qualquer tipo. Contraexemplo: não permitir que um array seja usado como parâmetro de uma função Componente de primeira ordem: pode ser livremente usado em expressões, atribuições, como argumento e retorno de procedimentos
23 Portabilidade Multiplataforma: capacidade de um software rodar em diferentes plataformas sem a necessidade de maiores adaptações Sem exigências especiais de hardware/software Exemplo: aplicação compatível com Linux e Windows Longevidade: ciclo de vida útil do software e o do hardware não precisam ser síncronos; ou seja, é possível usar o mesmo software após uma mudança de hardware
24 Confiabilidade Mecanismos que facilitem a produção de programas que atendam às sua especificações Tipagem forte: o processador da linguagem deve: assegurar que a utilização dos diferentes tipos de dados seja compatível com a sua definição evitar que operações perigosas, tal como aritmética de ponteiros, seja permitida Tratamento de exceções: sistemas de tratamento de exceções permitem construir programas que: possuam definições de como proceder em caso de comportamento não usual possibilitem tanto o diagnóstico quanto o tratamento de erros em tempo de execução
25 Critérios para escolha de uma LP Implementação Disponibilidade quanto a plataforma; Eficiência; Competência na LP Experiência do programador; Competência do grupo envolvido; Portabilidade Execução em várias plataformas Sintaxe Certos tipos de problemas acomodamse melhor a certos modelos; Semântica Aplicação X facilidade; Ambiente de Programação Ferramentas diminuem o esforço; Uso de bibliotecas Modelo de computação
26 Estudo de Caso MySQL - Ambiente de programação - Afinidade PHP - Afinidade - Confiabilidade - Portabilidade - Finalidade (web) Android - Afinidade - Facilidade - Disponibilidade de Equipamento - Finalidade (Mobile) Linguagem C++ - Ambiente de programação - Código Fonte Aberto Linguagem C - Ambiente de programação J2ME (Java Micro Edition) - Ambiente de programação
27 Linguagens de Programação
28 Histórico das Linguagens de Programação Década de 1960 Programação baseada na arquitetura do hardware existente Computadores caros e inacessíveis Seqüência de instruções Sem preocupação com reutilização de código Exemplos de linguagens populares: Uso acadêmico: ALGOL Uso científico: FORTRAN Uso comercial: COBOL
29 Histórico das Linguagens de Programação Década de 1970: surgimento da Engenharia de Software Abstração de dados: definição de tipos Abstração de controle: comandos, procedimentos Inicia preocupação com programming in the large : módulos e programação Estruturada Exemplos de linguagens populares: Uso acadêmico: Pascal (tipos de dados) Uso comercial: COBOL Estruturado (arquivos/relatórios)
30 Histórico das Linguagens de Programação Década de 1980: modularização Ênfase em mecanismos de LP e abstrações Correção de programas: verificação de tipos, exceções Programação concorrente e distribuída e tempo real Programação baseada em objetos (implementação de Tipos Abstratos de Dados) Programação orientada a objetos (herança) Exemplos de linguagens Uso acadêmico: Pascal / Modula / C Programação de tempo real: Ada 83 Orientada a objetos: SmallTalk
31 Histórico das Linguagens de Programação Década de 1990: base na Arquitetura Estruturação de dados: encapsulamento Estruturação da computação: classe Estruturação do programa: classes e objetos Programação para Internet: plataforma neutra Exemplos de linguagens Object-Pascal / Delphi C / C++ / Objective-C Ada83 / Ada95 Java
32
33
34 Histórico das Linguagens de Programação Atualmente Mecanismos alternativos de modularidade programação orientada a aspectos RAD (Rapid Application Development) Maior ênfase na distribuição e mobilidade Integração com bases de dados, incluindo XML e bancos de dados relacionais. Uso extensivo de frameworks Spring, Hibernate, EJB Crescimento das linguagens voltadas para Internet
35 Linguagens mais populares de
36 Exercício (Entrega até o final da aula) Nome: Data: 1 - Por que é importante estudar os paradigmas de linguagens de programação? 2 - Qual sua linguagem de programação preferida? Por que?
37 Exercício Entrega: a definir em aula Realização individual ou em dupla Enunciado: Apresente uma redação sobre o tema critérios de seleção de linguagens de programação Mínimo: 2 páginas Usar o template da SBC para artigos técnicos Itemid=195&task=finish&cid=38&catid=32
38 Exercício Título: critérios de seleção de linguagens de programação Resumo Este trabalho apresenta os critérios... Introdução A programação surgiu para ajudar o homem a resolver problemas... Referências [1] Adriano. A, Fuluno B., Programação Imperativa, Anais do SBC, p. 11, 2013 Exemplo:
AULA 1: PARADIGMAS DE PROGRAMAÇÃO
1 AULA 1: PARADIGMAS DE PROGRAMAÇÃO Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme Ementa 2 Programação Imperativa. Programação Paralela e Concorrente. Programação Lógica. Programação Funcional.
Leia maisParadigmas de Programação
Paradigmas de Programação Aula I Apresentação Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Professor EDILBERTO M. SILVA edilms@yahoo.com Bacharel em Ciência
Leia maisINF1621 Linguagens de Programação I
INF1621 Linguagens de Programação I Prof.: Marcus Leal mleal@inf.puc-rio.br 4as e 6as, 15-17hs, 17hs, sala 520L Todo o material apresentado em aula será disponibilizado na web http://www.inf.puc-rio.br/~
Leia maisLINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto
LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto Conceitos de Linguagens de Roteiro: Apresentação do plano de ensino; Apresentação do plano de
Leia maisFonte (livro-texto): Conceitos de Linguagens de Programação, 4ed. Robert W. Sebesta
1 Fonte (livro-texto): Conceitos de Linguagens de Programação, 4ed. Robert W. Sebesta Agenda 1. Razões para estudar conceitos de LPs 2. Domínios de programação 3. Critérios de avaliação de linguagens 4.
Leia mais1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO
1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO Desde o seu surgimento, o manuseio da computação é baseado em linguagens de programação. Ela permite que sejam construídos aplicativos
Leia maisLinguagens de Programação. Introdução. Carlos Bazilio bazilio@ic.uff.br http://www.ic.uff.br/~bazilio/cursos/lp
Linguagens de Programação Introdução Carlos Bazilio bazilio@ic.uff.br http://www.ic.uff.br/~bazilio/cursos/lp Motivação Algumas questões filosóficas Por quê existe mais de uma linguagem de programação?
Leia maisLinguagens de. Aula 01. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br
Linguagens de III Aula 01 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de III Horário das Aulas: 6as feiras das 7h40 às 10h55 Objetivo principal desta disciplina é: utilizar
Leia maisProgramação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada
Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.
Leia maisCarga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java
Carga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java 1 Objetivo: O aluno deverá adquirir capacidades e habilidades
Leia maisComputador Digital Circuitos de um computador (Hardware)
Computador Digital SIS17 - Arquitetura de Computadores (Parte I) Máquina que pode resolver problemas executando uma série de instruções que lhe são fornecidas. Executa Programas conjunto de instruções
Leia maisOrganização de Computadores Software
Organização de Computadores Software Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Objetivos: Entender
Leia maisIntrodução à Programação Aula 2 Introdução à linguagem Python
Introdução à Programação Aula 2 Introdução à linguagem Python Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 2 Introdução à linguagem Python 2015 1 / 24 Nesta
Leia maisLinguagens de Programação Aula 10
Linguagens de Programação Aula 10 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada As sentenças de controle das LP imperativas ocorrem em diversas categorias: seleção, seleção múltipla, iteração
Leia maisCONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa
CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs
Leia maisNesta aula... Analisamos na ultima aula a evolução e caraterísticas de computadores e linguagens de programação. Nesta aula iremos ver:
Nesta aula... Programação de Computadores Analisamos na ultima aula a evolução e caraterísticas de computadores e linguagens de programação. Nesta aula iremos ver: 1 Programação de Computadores O que é?
Leia maisIndústria de Software - Histórico
Indústria de Software - Histórico A indústria de Software está em constante evolução Década de 1960 Orientação Batch Distribuição limitada Software customizado Década de 1970 Multiusuário Tempo real Bancos
Leia maisArquitetura de Computadores Moderna
Arquitetura de Computadores Moderna Eduardo Barrére (eduardo.barrere@ice.ufjf.br) DCC/UFJF Baseado no material do prof. Marcelo Lobosco Agenda Visão Geral Objetivos do Curso Ementa Bibliografia Avaliações
Leia maisCurso Técnico em Redes
Curso Técnico em Redes Prof. Airton Ribeiro - 2012 Histórico das Linguagens de Programação O que é? É um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas
Leia maisIntrodução. Paradigmas de Linguagens de Programação. Heloisa de Arruda Camargo. Motivos para estudar os conceitos de linguagens de programação
Paradigmas de Linguagens de Programação Heloisa de Arruda Camargo Introdução Motivos para estudar os conceitos de linguagens de programação Aumento da capacidade de expressar idéias É difícil para as pessoas
Leia maisSistemas Distribuídos (DCC/UFRJ)
Sistemas Distribuídos (DCC/UFRJ) Aula 1: 4 de abril de 2016 1 Conceitos básicos sobre sistemas distribuídos 2 Computação distribuída Computação distribuída A computação distribuída envolve o projeto, implementação
Leia maisProgramação Orientada a Objeto
Programação Orientada a Objeto Prof Márcio Bueno poonoite@marciobueno.com Ementa Levar o aluno a discutir, exercitar e consolidar o uso de técnicas de programação que tenham um impacto considerável sobre
Leia maisIntrodução a Banco de Dados Aula 03. Prof. Silvestri www.eduardosilvestri.com.br
Introdução a Banco de Dados Aula 03 Prof. Silvestri www.eduardosilvestri.com.br Arquiteturas de Banco de Dados Arquiteturas de BD - Introdução Atualmente, devem-se considerar alguns aspectos relevantes
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na
Leia maisAlgoritmos e Programação Parte Teórica
Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte Teórica Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti
Leia maisProf. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior
Prof. Antonio Almeida de Barros Jr. Introdução Dados Informações Banco de Dados Conceitos Básicos em Bancos de Dados Definição BD - Banco de Dados SGBD - Sistema de Gerenciamento de BD Programa de Aplicação
Leia maisPrograma Analítico. Introdução. Origens da programação Orientada a Objetos. Paradigma procedural. Paradigma Orientado a Objetos.
Programação II Prof. Gustavo Willam Pereira e-mail: gustavowillam@gmail.com ENG10082 Programação II 1 Ementa Programação orientada a objetos: classes e objetos, atributos e métodos, especificadores de
Leia maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: O Computador como uma Multinível José Gonçalves - Introdução à Engenharia de Computação Visão Tradicional Monitor Placa-Mãe Processador Memória RAM Placas
Leia maisLógica para a Programação - 1º semestre AULA 01 Prof. André Moraes
Pág 4 Lógica para a Programação - 1º semestre AULA 01 Prof. André Moraes 1 APRESENTAÇÃO DA UNIDADE CURRICULAR A unidade curricular de Lógica para a programação tem como objetivo promover o estudo dos principais
Leia maisApostila da disciplina Introdução à Engenharia de Software Professor: Sandro Melo Faculdades São José Curso de Tecnologia de Sistemas de Informação
Capítulo 1: Software e Engenharia de Software O que é? E quem produz? Porque é importante? Quais são as fases? Qual o resultado? Como avaliar? Arcabouço: processo, conjunto de métodos e ferramentas. 1.1
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução ao Paradigma OO
Leia maisAlgoritmos e Programação Aula 01 Introdução a Computação
Algoritmos e Programação Aula 01 Introdução a Computação Felipe S. L. G. Duarte Felipelageduarte+fatece@gmail.com Baseado no material do Prof. Luis Otavio Alvares e do Prof. Dr. Rodrigo Fernandes de Mello
Leia maisProgramação para Internet II
Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://professor.fimes.edu.br/fernando nando@fimes.edu.br Prof. Fernando 1 Ementa Instalação e configuração básica do NetBeans e
Leia maisEngenharia de Software. Tema 1. Introdução à Engenharia de Software Profa. Susana M. Iglesias
Engenharia de Software Tema 1. Introdução à Engenharia de Software Profa. Susana M. Iglesias Sistemas Computacionais Automatiza ou apóia a realização de atividades humanas (processamento da informação)
Leia maisUNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA ELÉTRICA COLEGIADO DO CURSO DE GRADUAÇÃO EM ENGENHARIA ELÉTRICA/ENG.
UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA ELÉTRICA COLEGIADO DO CURSO DE GRADUAÇÃO EM ENGENHARIA ELÉTRICA/ENG. COMPUTAÇÃO PLANO DE CURSO DISCIPLINA: MÉTODOS E TÉCNICAS DE PROGRAMAÇÃO CÓDIGO:
Leia maisUNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor.
UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor. Modelo Cliente/Servidor Por HIARLY ALVES Fortaleza - CE Apresentação. O mais famoso tipo de arquitetura utilizada em redes de computadores
Leia maisIntrodução a Programação Funcional
UNIPAC - Universidade Presidente Antônio Carlos Departamento de Sistemas de Informação Wendell Pereira da Silva Objetivos Gerais Iniciar os estudos sobre o paradigma da programação funcional. Construir
Leia maisBanco de Dados Orientado a Objetos
Banco de Dados Orientado a Objetos MODELAGEM, ANÁLISE, PROJETO e CLASSIFICAÇÃO Interação combinando lógica, através de objetos que contém os dados. Estes divididos conforme seus tipos e métodos (classe),
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA*
PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA* Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2014 *Adaptado de PACHECO, R C S & RIEKE, R N INE UFSC Disponível em: http://wwwstelaufscbr/~pacheco/dsoo/htm/downloadshtm
Leia maisLinguagem de Programação Introdução a Linguagem Java
Linguagem de Programação Introdução a Linguagem Java Rafael Silva Guimarães Instituto Federal do Espírito Santo Campus Cachoeiro de Itapemirim Definição A linguagem Java foi desenvolvida pela Sun Microsystems,
Leia maisUNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura
Leia maisEdeyson Andrade Gomes. www.edeyson.com.br
Sistemas Operacionais Histórico e Estruturas Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Histórico de SOs Tipos de SOs Estruturas de SOs 2 Histórico de SOs Baseado em Francis Machado e Luiz
Leia maisParadigmas de Linguagens de Programação. Aspectos Preliminares
Aspectos Preliminares Cristiano Lehrer Motivação (1/6) Aumento da capacidade de expressar idéias: Difícil conceituar estruturas quando não se pode descreve-las. Programadores são limitados pelas linguagens.
Leia maisInfra-estrutura de Software
Infra-estrutura de Software Apresentação Ciência da Computação Professor: Carlos Ferraz Monitoria: em formação Horários: Quartas e Sextas, 08-10h (D-005) Laboratório: G4, normalmente URL: http://www.cin.ufpe.br/~cagf/if677/2013-1
Leia maisINTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO
Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele
Leia mais1. DADOS DE IDENTIFICAÇÃO
PLANO DE ENSINO 1. DADOS DE IDENTIFICAÇÃO Instituição: Universidade Alto Vale do Rio do Peixe Curso: Sistemas de Informação Professores: Marcos Eduardo Godinho Período/ Fase: 2º Semestre: 2º Ano: 2010
Leia maisConstrução de Compiladores. Construção de Compiladores. Motivação. Motivação. Contexto Histórico. Classificações: Gerações 09/03/2010
Construção de Compiladores Prof. Raimundo Santos Moura (http://www.ufpi.br/rsm) Construção de Compiladores Livro-Texto: AHO, Alfred V.; ULLMAN, Jeffrey D.; SETHI, R. Compiladores: princípios, técnicas
Leia maisCurso Técnico em Informática Organização Curricular. A carga horária total dos módulos é oferecida conforme quadro síntese abaixo:
FEDERAÇÃO DOS CÍRCULOS OPERÁRIOS DO RIO GRANDE DO SUL ESCOLA TÉCNICA SANTO INÁCIO Estrada Costa Gama, nº 1009 Belém Velho - Porto Alegre RS Fone: (51) 3374-2858 escola@stoinacio.com.br www.stoinacio.com.br
Leia maisDefinição de Programas de Computadores e Linguagem de Programação de Comutadores
Definição de Programas de Computadores e Linguagem de Programação de Comutadores O computador é um equipamento eletrônico composto por circuitos eletrônicos, que trabalham com o estado ligado(1) e desligado(0),
Leia maisnatureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues
Modelo De Desenvolvimento De Software É uma representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas e interrelacionadas
Leia maisIntrodução aos computadores, à Internet e à World Wide Web. 2005 by Pearson Education do Brasil
1 Introdução aos computadores, à Internet e à World Wide Web OBJETIVOS Neste capítulo, você aprenderá: Conceitos básicos de hardware e software. Conceitos básicos de tecnologia de objeto, como classes,
Leia maisProgramação de. Programa. Bibliografia. Páginas electrónicas de PM. Regras das aulas de laboratório. Métodos de Ensino - Aulas
Programa Programação de Microprocessadores 1º Ano 2º Semestre A arquitectura dos computadores A linguagem C 1 aula 7 aulas Talvez haja mais algum assunto a abordar nas aulas seguintes Mestrado Integrado
Leia maisLinguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres
Linguagem de Programação Orientada a Objeto Introdução a Orientação a Objetos Professora Sheila Cáceres Introdução a Orientação a Objetos No mundo real, tudo é objeto!; Os objetos se relacionam entre si
Leia maisPRÓ-REITORIA DE EXTENSÃO, PESQUISA E INOVAÇÃO DIRETORIA DE INOVAÇÃO E PESQUISA FORMULÁRIO II: Relatório de Atividades de Pesquisa
PRÓ-REITORIA DE EXTENSÃO, PESQUISA E INOVAÇÃO DIRETORIA DE INOVAÇÃO E PESQUISA FORMULÁRIO II: Relatório de Atividades de Pesquisa 1. IDENTIFICAÇÃO TÍTULO TMCAP Tecnologia Móvel para Captura e Armazenamento
Leia maisSistemas Distribuídos Processos I. Prof. MSc. Hugo Souza
Sistemas Distribuídos Processos I Prof. MSc. Hugo Souza Até agora vimos a organização como um todo dos SDS, com o mapeamento estrutural e suas devidas características descritas em elementos, regras, conceitos,
Leia maisCURSO DESENVOLVEDOR JAVA Edição 2010
CURSO DESENVOLVEDOR JAVA Edição 2010 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso
Leia maisLinguagem de Programação
Linguagem de Programação Introdução a Linguagem C Princípios de Programação em C Gil Eduardo de Andrade Conceitos Iniciais: Linguagem C Introdução É uma linguagem estruturada; Foi desenvolvida na década
Leia maisUNIP - UNIVERSIDADE PAULISTA. Arquitetura de computadores
UNIP - UNIVERSIDADE PAULISTA Arquitetura de computadores ORGANIZAÇÃO DE COMPUTADORES Bibliografia: MONTEIRO, M. A. Introdução à organização de computadores. 4 ed. RJ. LTC 2001. TANEMBAUM, A. S. Organização
Leia maisIB I M B - PC. 1982 ( C ( P C U U
Microinformática 1981 (CPU 80086 e 80088 8bits/16bits XT) O MS-DOS funciona em um protótipo do IBM- PC. 1982 (CPU 80286 16bits AT) Intel lança chip 286, com 134.000 transistores. Sai a planilha eletrônica
Leia maisIIH Introdução à Informática e Hardware
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SÃO PAULO - CAMPUS VOTUPORANGA Técnico em Manutenção e Suporte em Informática IIH Introdução à Informática e Hardware Aula: Linguagens de Programação
Leia maisLinguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas
Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures
Leia maisO modelo do computador
O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década
Leia maisARQUITETURA DE COMPUTADORES. Rogério Spindula Rosa
ARQUITETURA DE COMPUTADORES 1 Rogério Spindula Rosa 2 EXECUÇÃO DE PROGRAMAS PROGRAMA 3 4 INTRODUÇÃO Hoje é raro escrever um programa diretamente em linguagem de computador em virtude da enorme dificuldade
Leia maisINTRODUÇÃO À PROGRAMAÇÃO
O que é um programa? Matlab vs outras linguagens de programação Paradigma de programação Fases de desenvolvimento de um programa CPU Hardware Periféricos Sistema Software Aplicação O que é um programa?
Leia maisProgramação Orientada a Objetos OOP. IFES Campus Vitória Engenharia Elétrica 2015-2 Professor: Danilo A. Silva
Programação Orientada a Objetos OOP IFES Campus Vitória Engenharia Elétrica 2015-2 Professor: Danilo A. Silva Sobre a disciplina Carga horária : 60 horas (30 teóricas e 30 práticas) Material do curso estará
Leia maisMATA49 Programação de Software Básico
MATA49 Programação de Software Básico Leandro Andrade leandrojsadcc.ufba.br PROF. LEANDRO ANDRADE 1 Planejamento Avaliação Uma prova Dois trabalhos práticos Média Final = (P1 + T1 + T2) / 3 Provável
Leia maisPRÓ-REITORIA DE ENSINO DE GRADUAÇÃO (PROENG) ASSESSORIA DE DESENVOLVIMENTO ASSESSORIA JURÍDICA
FORMULÁRIO DE ALTERAÇÃO DE EMENTAS CURSO: SISTEMAS DE INFORMAÇÃO MATRIZ(ES) CURRICULAR(ES): 2011 ALTERAÇÕES PASSAM A VIGORAR A PARTIR DO SEMESTRE: 2015.1 Banco de Dados I Estudo dos aspectos de modelagem
Leia maisDesenvolvendo um Ambiente de Aprendizagem a Distância Utilizando Software Livre
Desenvolvendo um Ambiente de Aprendizagem a Distância Utilizando Software Livre Fabrício Viero de Araújo, Gilse A. Morgental Falkembach Programa de Pós-graduação em Engenharia de Produção - PPGEP Universidade
Leia maisProgramação de Computadores. Turma CI-180-B. Josiney de Souza. josineys@inf.ufpr.br
Programação de Computadores Turma CI-180-B Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 2 (06/03/15) Como está organizado um computador Computadores antigos Modelo von-neumann Quais suas partes
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava
Leia maisGame Programming Basic
ESCOLA DE COMPUTAÇÃO GRÁFICA AVANÇADA 3D E 2D 1 Game Programming Basic Formação em O treinamento de programação básica para jogos tem a duração de 6 meses. Durante o treinamento, o aluno terá contato com
Leia maisIntrodução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional
Introdução à Linguagem JAVA Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação Laboratório de Visão Computacional Vantagens do Java Independência de plataforma; Sintaxe semelhante às linguagens
Leia maisProgramação Funcional. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2015.
Programação Funcional Capítulo 1 Introdução José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2015.1 1/13 1 Paradigmas de programação 2 Programação funcional 3 A Crise
Leia maisEDITAL DE RECRUTAMENTO E SELEÇÃO INTERNO E EXTERNO Nº.001/2013
EDITAL DE RECRUTAMENTO E SELEÇÃO INTERNO E EXTERNO Nº.001/2013 1. DO PREÂMBULO A Faculdade de Rolim de Moura - FAROL, Portaria Ministerial nº 2960 de 22 de outubro de 2003 DOU de 23 de outubro de 2003.
Leia maisDescrição do Produto. Altus S. A. 1
Descrição do Produto O software MasterTool IEC é um ambiente completo de desenvolvimento de aplicações para os controladores programáveis da Série Duo. Esta ferramenta permite a programação e a configuração
Leia maisONE TOONE CURSOS PARTICULARES JAVASCRIPT
ONE TOONE CURSOS PARTICULARES JAVASCRIPT Plano do Curso. Curso One. Os Cursos desenvolvidos pela One To One, são reflexo da experiência profissional no âmbito da Formação, do Design e Comunicação, apresentando
Leia maisMetadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados
1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,
Leia maisPlanificação de. Aplicações Informáticas B
Escola básica e secundária de Velas Planificação de Aplicações Informáticas B Ano letivo 2011/2012 1- Introdução à Programação Planificação de Aplicações Informáticas B Unidade Sub-Unidades Objetivos Conteúdos
Leia maisMC-102 Aula 01. Instituto de Computação Unicamp
MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2015 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos
Leia maisConceitos e Evolução Capítulos 1 e 2
Aula 2 ARQUITETURA DE COMPUTADORES Conceitos e Evolução Capítulos 1 e 2 Prof. Osvaldo Mesquita E-mail: oswaldo.mesquita@gmail.com 1/48 CONTEÚDO DA AULA Conceitos Importantes O que é arquitetura de computadores?
Leia maisSoftware Básico. Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly. Prof. MSc. Hugo Vieira L. Souza
Software Básico Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly Prof. MSc. Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão reservados para o todo
Leia maisIntrodução ao Paradigma Orientado a Objetos. Principais conceitos
Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura
Leia maisProgramação Orientada a Objeto
Programação Orientada a Objeto Classes, Atributos, Métodos e Objetos Programação de Computadores II Professor: Edwar Saliba Júnior 1) Java é uma linguagem orientada a objetos. Para que possamos fazer uso
Leia maisProgramação de Computadores III
Programação de Computadores III Introdução a Linguagens de Programação Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157
Leia maisBreve Histórico & Conceitos Básicos
Breve Histórico & Conceitos Básicos compiladores interpretadores montadores filtros pré-processadores carregadores linkers compilador cruzado (cross-compiler) auto-compilável (bootstraping) auto-residente
Leia maisAlgoritmos DCC 119. Introdução e Conceitos Básicos
Algoritmos DCC 119 Introdução e Conceitos Básicos Sumário Sistemas de Numeração Sistemas Computacionais Estrutura de um Computador Digital Sistemas Operacionais Algoritmo Introdução Formas de representação
Leia maisSCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br
SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side
Leia maisc. Técnica de Estrutura de Controle Teste do Caminho Básico
1) Defina: a. Fluxo de controle A análise de fluxo de controle é a técnica estática em que o fluxo de controle através de um programa é analisado, quer com um gráfico, quer com uma ferramenta de fluxo
Leia maisLinguagens de Programação
68 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas instruem o computador a realizar
Leia maissendo bastante acessível e compreendido pelos usuários que o utilizarem.
APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA Claudiléia Gaio Bandt 1 ; Tiago Heineck 2 ; Patrick Kochan 3 ; Leila Lisiane Rossi 4 ; Angela Maria Crotti da Rosa 5 INTRODUÇÃO Este artigo descreve
Leia maisJinSol, uma interface em Java para solvers lineares.
JinSol, uma interface em Java para solvers lineares. Italo C. N. Lima, João Paulo K. Zanardi, Faculdade de Engenharia, PPGEM, UERJ, 20550-900, Rio de Janeiro, RJ E-mail: italonievinski@gmail.com, jpzanardi@gmail.com
Leia maisSistemas Operacionais
Sistemas Operacionais Bibliografia Base Capítulo I Sistemas Operacionais Modernos Andrew S. Tanenbaum Gabriel Pitágoras Silva e Brenner gabrielbrenner@gmail.com Um computador sem seu software nada mais
Leia maisUNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA
UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA FACILITADOR VIRTUAL DA APRENDIZAGEM EM QUÍMICA Campina Grande-
Leia maisTÉCNICAS DE PROGRAMAÇÃO
TÉCNICAS DE PROGRAMAÇÃO (Adaptado do texto do prof. Adair Santa Catarina) ALGORITMOS COM QUALIDADE MÁXIMAS DE PROGRAMAÇÃO 1) Algoritmos devem ser feitos para serem lidos por seres humanos: Tenha em mente
Leia maisOFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO
OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO Prof. Msc. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br APLICABILIDADE E CRITÉRIOS DE AVALIAÇÃO
Leia maisIntrodução às Linguagens de Programação
Introdução às Linguagens de Programação Histórico de Linguagens de Programação O computador não faz nada sozinho Precisamos informar, de forma clara, como ele deve executar as tarefas Ou seja, o computador
Leia maisFigura 01 Kernel de um Sistema Operacional
01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações
Leia mais