Paradigmas de Linguagens de Programação
|
|
|
- Larissa Campelo Vilalobos
- 10 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: [email protected]
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.
Paradigmas 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 [email protected] Bacharel em Ciência
INF1621 Linguagens de Programação I
INF1621 Linguagens de Programação I Prof.: Marcus Leal [email protected] 4as e 6as, 15-17hs, 17hs, sala 520L Todo o material apresentado em aula será disponibilizado na web http://www.inf.puc-rio.br/~
LINGUAGENS 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
Fonte (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.
1 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
Linguagens de Programação. Introdução. Carlos Bazilio [email protected] http://www.ic.uff.br/~bazilio/cursos/lp
Linguagens de Programação Introdução Carlos Bazilio [email protected] 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?
Linguagens de. Aula 01. Profa Cristiane Koehler [email protected]
Linguagens de III Aula 01 Profa Cristiane Koehler [email protected] Linguagens de III Horário das Aulas: 6as feiras das 7h40 às 10h55 Objetivo principal desta disciplina é: utilizar
Programaçã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.
Carga 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
Computador 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
Organização de Computadores Software
Organização de Computadores Software Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 [email protected] www.univasf.edu.br/~marcus.ramos Objetivos: Entender
Introduçã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
Linguagens de Programação Aula 10
Linguagens de Programação Aula 10 Celso Olivete Júnior [email protected] Na aula passada As sentenças de controle das LP imperativas ocorrem em diversas categorias: seleção, seleção múltipla, iteração
CONCEITOS 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
Nesta 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 é?
Indú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
Arquitetura de Computadores Moderna
Arquitetura de Computadores Moderna Eduardo Barrére ([email protected]) DCC/UFJF Baseado no material do prof. Marcelo Lobosco Agenda Visão Geral Objetivos do Curso Ementa Bibliografia Avaliações
Curso 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
Introduçã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
Sistemas 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
Programação Orientada a Objeto
Programação Orientada a Objeto Prof Márcio Bueno [email protected] Ementa Levar o aluno a discutir, exercitar e consolidar o uso de técnicas de programação que tenham um impacto considerável sobre
Introduçã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
Aná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
Algoritmos 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 [email protected] www.univasf.edu.br/~jorge.cavalcanti
Prof. 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
Programa 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: [email protected] ENG10082 Programação II 1 Ementa Programação orientada a objetos: classes e objetos, atributos e métodos, especificadores de
Introduçã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
Ló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
Apostila 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
Programação Orientada a Objetos
Programação Orientada a Objetos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno [email protected] Fonte: Material da Profª Karina Oliveira Introdução ao Paradigma OO
Algoritmos 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 [email protected] Baseado no material do Prof. Luis Otavio Alvares e do Prof. Dr. Rodrigo Fernandes de Mello
Programação para Internet II
Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://professor.fimes.edu.br/fernando [email protected] Prof. Fernando 1 Ementa Instalação e configuração básica do NetBeans e
Engenharia 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)
UNIVERSIDADE 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:
UNICE 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
Introduçã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
Banco 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),
PROGRAMAÇÃ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
Linguagem 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,
UNIVERSIDADE 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
Edeyson 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
Paradigmas 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.
INTRODUÇÃ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
Construçã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
Curso 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 [email protected] www.stoinacio.com.br
Definiçã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),
natureza 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
Introduçã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,
Programaçã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
Linguagem 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
Sistemas 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,
CURSO 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
Linguagem 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
UNIP - 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
IB 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
Linguagem 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
O 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
ARQUITETURA 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
INTRODUÇÃ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?
Programaçã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á
MATA49 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
PRÓ-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
Desenvolvendo 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
Programação de Computadores. Turma CI-180-B. Josiney de Souza. [email protected]
Programação de Computadores Turma CI-180-B Josiney de Souza [email protected] Agenda do Dia Aula 2 (06/03/15) Como está organizado um computador Computadores antigos Modelo von-neumann Quais suas partes
Programaçã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
Game 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
Introduçã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
Programaçã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
Descriçã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
Metadados. 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,
Planificaçã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
MC-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
Conceitos 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: [email protected] 1/48 CONTEÚDO DA AULA Conceitos Importantes O que é arquitetura de computadores?
Software 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
Introduçã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
Programaçã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
Programação de Computadores III
Programação de Computadores III Introdução a Linguagens de Programação Professor Leandro Augusto Frata Fernandes [email protected] Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157
Breve 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
Algoritmos 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
SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello [email protected]
SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello [email protected] 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side
c. 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
Linguagens 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
sendo 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
JinSol, 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: [email protected], [email protected]
Sistemas Operacionais
Sistemas Operacionais Bibliografia Base Capítulo I Sistemas Operacionais Modernos Andrew S. Tanenbaum Gabriel Pitágoras Silva e Brenner [email protected] Um computador sem seu software nada mais
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
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-
TÉ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
OFICINA 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 [email protected] www.oficinadapesquisa.com.br APLICABILIDADE E CRITÉRIOS DE AVALIAÇÃO
Introduçã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
Figura 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
