Aula 05 Ferramentas de desenvolvimento
|
|
- Derek Fraga Borba
- 8 Há anos
- Visualizações:
Transcrição
1 Aula 05 Ferramentas de desenvolvimento Francisco Dantas e Alessandro Garcia LES/DI/PUC-Rio Agosto 2010 Especificação Objetivo dessa aula Apresentar algumas das ferramentas utilizadas ao desenvolver programas modulares Referência básica: Capítulo 7 Referências complementares Ierusalimschy, R.; Programming in Lua; Rio de Janeiro: Lua.org; 2004 Staa, A.v.; Utilitário GMAKE: Gerador de diretivas MAKE; LES - Laboratório de Engenharia de Software, Departamento de Informática, PUC-Rio; / 29 1
2 Sumário Ambientes de engenharia de software Atividades do desenvolvimento modular A ferramenta MAKE A ferramenta GMAKE Ferramentas feitas em casa 3/ 29 Ambientes de engenharia de software Processos de desenvolvimento documentos descrevendo, passo a passo, o que e quando deve ser realizado Procedimentos (métodos) documentos descrevendo como devem ser realizadas as atividades do processo Padrões conjuntos de regras, recomendações e diretrizes a serem obedecidas ao desenvolver determinada classe de artefatos Técnicas formas de apresentar ou habilidades de fazer algo 4/ 29 2
3 Ambientes de engenharia de software Plataformas de desenvolvimento hardware rede sistema operacional software de suporte... Repositórios arquivos organizados contendo todas as informações relativas aos sistemas objetivo Ferramentas software de apoio ao desenvolvimento CASE Computer aided software engineering 5/ 29 Ambientes de engenharia de software Papéis descrições das funções a serem desempenhadas d por pessoas Pessoas com proficiência experiência profissional formação know how habilitação 6/ 29 3
4 Atividades do desenvolvimento modular Especificar programa Revisar especificação Arquitetar programa Revisar arquitetura Para todos construtos Repositório de artefatos aprovados Especificar interfaces dos módulos Revisar especificação de módulos Módulo Script de teste Laudo do teste Revisar teste do módulo Para todos construtos Desenvolver casos de teste Testar módulo Para todos construtos Para todos módulos do construto Completar a especificação do módulo Implementar módulo Revisar código do módulo Integrar construto Testar construto Revisar teste do construto 7/ 29 Ferramentas básicas Editor de texto editor convencional editor sensível à sintaxe Editor de linguagens de representação gráficas editor de diagramas Processador de linguagem compilador de programas, pode gerar: linguagem nativa byte code Interpretador puro, ex. batch; printf byte code 8/ 29 4
5 Ferramentas básicas Bibliotecas e frameworks Framework de apoio aos testes Compositor de bibliotecas (LIB) compõe uma biblioteca de módulos objeto Ligador (LINK) MAKE controla a reconstrução de artefatos compostos Depurador (debugger) b executa um programas compilado de modo que se possa controlar, visualizar e modificar o progresso da execução Backup 9/ 29 Make Problema tenho 1000 módulos, altero o módulo m512 o que fazer para reconstruir o programa? Recompilar tudo é muito caro desnecessário: grande parte dos componentes não varia de uma compilação para outra 10 / 29 5
6 Make Problema tenho 1000 módulos, altero o módulo m512.c o que fazer para reconstruir o programa? recompilar m512 ligar tudo tenho 1000 módulos, altero o módulo m512.h o que fazer para reconstruir o programa? procurar todos os clientes de m512 e recompilá-los recompilar m512 ligar tudo Risco: não recompilar todos que deveriam ser recompilados Risco: recompilar vários que não deveriam ser recompilados Custo: trabalho para descobrir quem deve ser recompilado Que tal desenvolver uma ferramenta? 11 / 29 Make O make é uma ferramenta que interpreta um arquivo (.make) de diretivas (script file) contendo instruções de como deve ser regerado um determinado artefato composto Exemplo de um conjunto de diretivas modulo1.obj: modulo1.c modulo1.h modulo2.h tabdef1.inc compilac modulo1.c tabdef1.inc: tabdef1.def GeraDefinicoes /X /Y /Z tabdef1.def Coluna > 1 da linha linha em branco linha em branco Coluna 1 da linha 12 / 29 6
7 Make modulo1.obj : modulo1.c modulo1.h modulo2.h \ tabdef1.inc compilac modulo1.c Elementos de uma diretiva arquivo objetivo indica que a lista continua na próxima linha é o arquivo a ser gerado arquivos dependentes é a lista dos arquivos usados para gerar o objetivo uma ou mais linhas de comandos que realizam a geração terminado com linha em branco A partir do script, o make cria uma árvore de dependências e ao final interpreta esta árvore de dependências 13 / 29 Exemplo de um arquivo make 1 / 3 ### Nomes globais NOME = TesteArvore ### Nomes de paths diretórios onde procura por um arquivo Pinc =..\Tabelas Ph =..\Fontes Pobj =..\Objetos Perr =..\Produto PDEFAULT =..\Fontes Pc =..\Fontes ### Nomes de diretórios para geração diretório onde grava Finc =..\Tabelas Fh =..\Fontes Fobj =..\Objetos Ferr =..\Produto FDEFAULT =..\Fontes Fc =..\Fontes 14 / 29 7
8 Exemplo de um arquivo make 2 / 3 ### Macros da plataforma O = /D_CRT_SECURE_NO_DEPRECATE OD = /Zi /Od /D_CRT_SECURE_NO_DEPRECATE L = LD = /DEBUG /DEBUGTYPE:CV!IFDEF PRD O = /Ox /D_CRT_SECURE_NO_DEPRECATE!ENDIF OPT = /c /J /W4 /nologo INCLUDE = $(INCLUDE);$(PDEFAULT) ### Regras de geração all : limpa \ $(Fobj)\arvore.obj $(Fobj)\testarv.obj \ Construto ### Limpar arquivos limpa :..\..\Ferramnt\CompileBanner /c$(nome)..\..\ferramnt\compilebanner /c$(nome) >$(Ferr)\$(NOME).err 15 / 29 Exemplo de um arquivo make 3 / 3 ### Dependências de módulos objeto a compilar $(Fobj)\arvore.obj : {$(Pc)}\arvore.c \..\tabelas\idtiposespaco.def {$(Ph)}arvore.h {$(Ph)}cespdin.h \ {$(Ph)}conta.h {$(Ph)}generico.h ${(Pdef)}tiposespacosarvore.def \ {$(Ph)}tst_espc.h cl $(O) $(OPT) /Fo$(Fobj)\ $(Fc)\$(@B).c >> $(Ferr)\$(NOME).err $(Fobj)\testarv.obj : {$(Pc)}\testarv.c \ {$(Ph)}arvore.h {$(Ph)}cespdin.h {$(Ph)}generico.h \ {$(Ph)}lerparm.h {$(Ph)}tst_espc.h cl $(O) $(OPT) /Fo$(Fobj)\ $(Fc)\$(@B).c >> $(Ferr)\$(NOME).err ### Terminação Construto : \ $(Fobj)\arvore.obj $(Fobj)\testarv.obj cd $(Fobj) LINK >> $(Ferr)\$(NOME).err ### Fim de diretivas MAKE para o construto: TesteArvore 16 / 29 8
9 GMAKE - Gerador de script de make Redigir um script de make tende a ser enfadonho e sujeito a erros Solução: desenvolver uma ferramenta que gere o script make a partir de: um script de composição específico para um construto um script de plataforma de desenvolvimento genérico para todos os construtos de um projeto 17 / 29 GMAKE exemplo de composição [Diretorios] Nome = TesteArvoreDebug PathDefault =..\Fontes err =..\Produto obj =..\Objetos h =..\Fontes espstr =..\Tabelas lista =..\Tabelas [Modulos] Arvore TestArv /D_DEBUG [BuildInicio] /OUT:..\produto\TesteArvoreDebug.exe /INCREMENTAL:NO /MACHINE:IX86 [BuildFim] ArcaboucoTeste.lib [Fim] 18 / 29 9
10 GMAKE Exemplo plataforma [Comandos] c => obj cl $(O) $(OPT) /Fo$(Fobj)\ $(Fc)\$(@B).c >> $(Ferr)\$(NOME).err lista => tab geratab /L$(Ftab)\$(@B).lista /T$(Ftab)\$(@B).tab >> $(Ferr)\$(NOME).err espstr => inc geratbdf /E$(Ftab)\$(@B).espstr /T$(Ftab)\$(@B).inc >> $(Ferr)\$(NOME).err [MacrosGerais] O = /D_CRT_SECURE_NO_DEPRECATE L =!IFDEF PRD O = /Ox /D_CRT_SECURE_NO_DEPRECATE!ENDIF OPT = /c /J /W4 /nologo INCLUDE = $(INCLUDE);$(PDEFAULT) [Limpa] CompileBanner /c$(nome) CompileBanner /c$(nome) >$(Ferr)\$(NOME).err [DefaultLink] cd $(Fobj) LINK >> $(Ferr)\$(NOME).err [Fim] 19 / 29 Exemplo de script make gerado ################################################## ### ### Diretivas de MAKE para o construto: ExemploTabela ### Gerado a partir de: ExemploTabela.comp ### ### Arquivo gerado, NÃO EDITE!!! ### ################################################## ### Nomes globais NOME = ExemploTabela ### Nomes de paths Pobj =. Ptab =. Pinc =. Ph =. Perr =. PDEFAULT =. Pespstr =. Plista =. Pc =. 20 / 29 10
11 Exemplo de script make gerado ### Nomes de diretórios para geração Fobj =. Ftab =. Finc =. Fh =. Ferr =. FDEFAULT =. Fespstr =. Flista =. Fc =. ### Macros da plataforma O = /D_CRT_SECURE_NO_DEPRECATE OD = /Zi /Od /D_CRT_SECURE_NO_DEPRECATE L = LD = /DEBUG /DEBUGTYPE:CV!IFDEF PRD O = /Ox /D_CRT_SECURE_NO_DEPRECATE!ENDIF OPT = /c /J /W4 /nologo INCLUDE = $(INCLUDE);$(PDEFAULT) 21 / 29 Exemplo de script make gerado ### Regras de geração all : limpa \ $(Ftab)\TabelaString.tab $(Finc)\TesteTabelaString.inc $(Fobj)\Tabstr.obj \ $(Fobj)\TestTbs.obj \ Construto ### Limpar arquivos limpa : CompileBanner /c$(nome) CompileBanner /c$(nome) >$(Ferr)\$(NOME).err 22 / 29 11
12 Exemplo de script make gerado ### Dependências de módulos objeto a compilar $(Ftab)\TabelaString.tab : {$(Plista)}\TabelaString.lista \ {$(PDEFAULT)}STR_APIC.DEF {$(PDEFAULT)}STR_SEGL.DEF {$(Pespstr)}TesteTabelaString.espstr geratab /L$(Ftab)\$(@B).lista /T$(Ftab)\$(@B).tab >> $(Ferr)\$(NOME).err $(Finc)\TesteTabelaString.inc : {$(Pespstr)}\TesteTabelaString.espstr geratbdf /E$(Ftab)\$(@B).espstr /T$(Ftab)\$(@B).inc >> $(Ferr)\$(NOME).err $(Fobj)\Tabstr.obj : {$(Pc)}\Tabstr.c \ {$(PDEFAULT)}TabStr.H {$(Ptab)}TabelaString.tab cl $(O) $(OPT) /Fo$(Fobj)\ $(Fc)\$(@B).c >> $(Ferr)\$(NOME).err $(Fobj)\TestTbs.obj : {$(Pc)}\TestTbs.c c \ {$(Ph)}TST_Espc.h {$(Ph)}TabStr.h {$(Ph)}generico.h \ {$(Ph)}lerparm.h {$(Ph)}tst_espc.h cl $(O) $(OPT) /Fo$(Fobj)\ $(Fc)\$(@B).c >> $(Ferr)\$(NOME).err 23 / 29 Exemplo de script make gerado ### Terminação Construto : \ $(Fobj)\Tabstr.obj $(Fobj)\TestTbs.obj cd $(Fobj) LINK >> $(Ferr)\$(NOME).err ################################################## ### ### Fim de diretivas MAKE para o construto: ExemploTabela ### ################################################## 24 / 29 12
13 Ferramentas feitas em casa :.bat Exemplo de batch OFF REM Gera script de make REM Sintaxe GeraMake <NomeArquivoComposicao> pushd. if ""=="%1" goto erro cd..\composicao gmake /c%1 /b..\composicao goto sai :erro echo Falta nome do arquivo de diretivas de composicao :sai popd 25 / 29 Ferramentas feitas em casa :.lua function main( ) if arg[ 1 ] == nil then io.write( "\n\nmodo de usar: lua geramake.lua <composicao> " ) io.write( "\n <composicao> - nome do script de composicao" ) return end -- if os.execute( "cd..\\composicao" ) end comando = "gmake /c".. arg[ 1 ].. " /b..\\composicao" io.write( "\n!!! => ", comando, "\n" ) os.execute( comando ) main( ) 26 / 29 13
14 FIM 27 / 29 14
Utilitário GMAKE Gerador de diretivas MAKE versão 6.0
Utilitário GMAKE Gerador de diretivas MAKE versão 6.0 Arndt von Staa LES - Laboratório de Engenharia de Software Departamento de Informática, PUC-Rio Fevereiro 2006 1. Objetivo É objetivo do GMAKE gerar
Leia maisAula 08 Ferramentas de desenvolvimento. Alessandro Garcia Alexander Chávez Eduardo Fernandes Leonardo Sousa LES/DI/PUC-Rio Setembro 2017
Aula 08 Ferramentas de desenvolvimento Alessandro Garcia Alexander Chávez Eduardo Fernandes Leonardo Sousa LES/DI/PUC-Rio Setembro 2017 Especificação Objetivo dessa aula Apresentar algumas das ferramentas
Leia maisRoteiro. MC-102 Aula 01. Hardware e dispositivos. O que é um computador? Primeiro Semestre de 2008 3 A linguagem C
Roteiro Introdução à Programação de Computadores 1 Instituto de Computação Unicamp 2 Primeiro Semestre de 2008 3 O que é um computador? Computador: o que computa, calculador, calculista. (dicionário Houaiss).
Leia maisApresentação. Rio de Janeiro, 19 de fevereiro de 2002 Waldemar Celes
Apresentação A disciplina de Estruturas de Dados (ED) está sendo ministrada em sua nova versão desde o segundo semestre de 1998. Trata-se da segunda disciplina de informática oferecida no curso de Engenharia
Leia maisO COMPUTADOR. Introdução à Computação
O COMPUTADOR Introdução à Computação Sumário O Hardware O Software Linguagens de Programação Histórico da Linguagem C Componentes Básicos do Computador O HARDWARE: O equipamento propriamente dito. Inclui:
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 maisAula 06 Introdução à Teste de Módulos II e Exercícios. Alessandro Garcia LES/DI/PUC-Rio Março 2014
Aula 06 Introdução à Teste de Módulos II e Exercícios Alessandro Garcia LES/DI/PUC-Rio Março 2014 Princípios Discutidos até aqui Cada módulo deveria implementar uma única abstração similarmente: cada função
Leia maisPontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação
Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação Dr. Ítalo S. Vega ES-II/III: Engenharia de Software: Processos Projeto 1 c 2004, ISVega Ferramenta CASE: LiMAOO-PUC CONTEÚDO
Leia maisCapítulo 7 Nível da Linguagem Assembly
Capítulo 7 Nível da Linguagem Assembly Presente em quase todos os computadores modernos. Implementado por tradução. Linguagem fonte => Linguagem alvo. O programa no arquivo fonte não é executado diretamente
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 maisFORCE. Editor e Compilador de FORTRAN: Apresentação. João Manuel R. S. Tavares
FORCE Editor e Compilador de FORTRAN: Apresentação João Manuel R. S. Tavares Apresentação O FORCE é um sistema de desenvolvimento de programas em FORTRAN, de domínio público, que inclui um editor e ferramentas
Leia maisPLANO DA SITUAÇÃO DE APRENDIZAGEM CURSOS TÉCNICOS. 2. Tipo Estudo de Caso X Situação Problema Pesquisa Projeto
PLANO DA SITUAÇÃO DE APRENDIZAGEM CURSOS TÉCNICOS 1. Identificação Curso Técnico em Informática Unidade São José Coordenador da S.A Walter André de Almeida Pires Unidade(s) Curricular(es) Envolvida(s)
Leia maisConceitos Básicos sobre Programação Prática
Conceitos Básicos sobre Programação Prática Programa de computador conjunto de instruções e informação necessários ao alcance de um objectivo instruções + dados normalmente, guardados em ficheiros (em
Leia maisIntrodução à Engenharia ENG1000
Introdução à Engenharia ENG1000 Aula 14 Vetores, Matrizes e Tabelas 2016.1 Prof. Augusto Baffa Introdução Até agora nós temos usado variáveis simples para armazenar valores usados
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 maisRepresentação de Algoritmos - Linguagens de Programação
Representação de Algoritmos - Linguagens de Programação A representação de algoritmos em uma pseudo-linguagem mais próxima às pessoas é bastante útil principalmente quando o problema a ser tratado envolve
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 maisIntrodução sobre Scilab
Ivanovitch Medeiros Dantas da Silva Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação DCA0399 - Métodos Computacionais para Engenharia Civil Natal, 14 de
Leia maisDALUA: BIBLIOTECA PARA APLICAÇÕES DISTRIBUÍDAS
DALUA: BIBLIOTECA PARA APLICAÇÕES DISTRIBUÍDAS Aluno: Ricardo Gomes Leal Costa Orientadora: Noemi de la Rocque Rodriguez Introdução A biblioteca DALua [1], fruto do projeto anterior, tem por objetivo oferecer
Leia maisProgramação I. Departamento de Engenharia Rural Centro de Ciências Agrárias
Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Prof. Bruno Vilela Oliveira bruno@cca.ufes.br http://www.brunovilela.webnode.com.br Aula 08 Programação em pascal Pascal Pascal
Leia mais1/26/2009. Baseadas em http://www.voelter.de/services/mdsdtutorial.html. Experiência pessoal/profissional/acadêmica
Baseadas em http://www.voelter.de/services/mdsdtutorial.html Experiência pessoal/profissional/acadêmica 1 Metamodelo UML Meu Metamodelo Meu processo de negócios Meu processo de negócios Stereotypes Perfis
Leia maisEngenharia de Software
Engenharia de Software Processo de Software Thiago P. da Silva thiagosilva.inf@gmail.com Agenda Revisando Engenharia de Software Engenharia de Sistemas Processo de software Fases Genéricas de Modelos de
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 maisParadigmas de Linguagens de Programação
Paradigmas de Linguagens de Programação Faculdade Nova Roma Cursos de Ciências da Computação (6 Período) Prof. Adriano Avelar - Site: www.adrianoavelar.com Email: edson.avelar@yahoo.com.br Ementa Introdução
Leia maisO Processo de Programação
Programação de Computadores I Aula 04 O Processo de Programação José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/23 Algoritmo Um algoritmo é uma seqüência de
Leia maiscast poderia ser usado também para transformar um real (float) em inteiro. A sintaxe C (float)i pode ser substituída em C++ por float(i).
Cast (conversão) Um tipo de dado pode ser convertido momentaneamente em outro tipo com um cast. Em linguagem C a sintaxe usada é formada pelo tipo desejado entre parênteses precedendo a expressão a ser
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 maisProcesso de Software - Revisão
Processo de Software - Revisão Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Pressman, R. S. Engenharia de Software, McGraw-Hill, 6ª. Edição,
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 maisFormação de Administradores de Redes Linux LPI level 1. Aula 2 SENAC TI Fernando Costa
Formação de Administradores de Redes Linux LPI level 1 Aula 2 SENAC TI Fernando Costa Agenda Introdução ao Shell Variáveis do shell Usando símbolos coringa Síntese Exercícios O shell Como todo computador
Leia maisPolítica Gestão de Configuração e Mudança
Política Gestão de Configuração Histórico de Alteração Data Versão Descrição Autor 20/08/2011 1 Versão Inicial Danilo Costa Versão 1 Pág. 2 de 7 Índice 1. POLÍTICA 4 1.1 Aplicabilidade 4 2. CONCEITUAÇÃO
Leia maisIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de Computadores Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Uma instrução pode ser definida como um comando
Leia mais3 Revisão de Software
1 3 Revisão de Software O software é indispensável para a utilização do hardware. Sem o software para utilizar o computador precisaríamos ter um profundo conhecimento do hardware. Alguns softwares são
Leia maisCapítulo 7: Engenharia de Software
Capítulo 7: Engenharia de Software Ciência da computação: Uma visão abrangente 11a Edição by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Capítulo 7: Engenharia de software 7.1 A disciplina
Leia maisIntrodução à Sistemas Operacionais. Glauber Magalhães Pires
Introdução à Sistemas Operacionais Glauber Magalhães Pires Agenda O que são sistemas operacionais? Histórico Primeira geração (1945-1955) Segunda geração (1955-1965) Terceira geração (1965-1980) Quarta
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 maisEngenharia de Software II
Engenharia de Software II Aula 28 Revisão para a Prova 2 http://www.ic.uff.br/~bianca/engsoft2/ Aula 28-28/07/2006 1 Matéria para a Prova 2 Gestão de projetos de software Conceitos (Cap. 21) Métricas (Cap.
Leia maisUNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA
Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais
Leia maisProgramação. MEAer. Bertinho Andrade da Costa. Instituto Superior Técnico. Introdução ao Pré-Processador. 2011/2012 1º Semestre
Programação MEAer Bertinho Andrade da Costa 2011/2012 1º Semestre Instituto Superior Técnico Introdução ao Pré-Processador Programação 2011/2012 DEEC-IST Introdução ao Pré-Processador 1 Sumário Introdução
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 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 maisLinguagem de Montagem
Linguagem de Montagem Uma introdução à Programação Assembly do PC Slides baseados em material associado ao livro Introduction to Assembly Language Programming, Sivarama Dandamudi 1 A Visão do Usuário sobre
Leia maisLINGUAGEM C. Estrutura básica de um programa
LINGUAGEM C Estrutura básica de um programa Um programa em linguagem C é constituído por uma sequência de funções (módulos) que em conjunto irão permitir resolver o problema proposto. Estas funções contêm
Leia maisCapítulo 2. VARIÁVEIS DO TIPO INTEIRO
Capítulo 2. VARIÁVEIS DO TIPO INTEIRO OBJETIVOS DO CAPÍTULO Conceitos de: variáveis do tipo inteiro, atribuição, avisos e erros de compilação, erros de execução, comentários dentro do programa-fonte Operadores
Leia maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: O Computador como uma Máquina Multinível (cont.) José Gonçalves - LPRM/DI/UFES Introdução à Engenharia de Computação Máquina Multinível Moderna Figura 1 Máquina
Leia mais3 Qualidade de Software
3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo
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 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 maisAlgoritmo e Técnica de Programação - Linguagem C
Algoritmo e Técnica de Programação Linguagem C Gilbran Silva de Andrade 5 de junho de 2008 Introdução A liguagem C foi inventada e implementada por Dennis Ritchie em um DEC PDP-11 que utilizava o sistema
Leia maisApresentação da Disciplina Processo de Software
Apresentação da Disciplina Processo de Software Prof.ª Dra. Aida Araújo Ferreira aidaferreira@recife.ifpe.edu.br Modelos de Melhoria de Processo de Software Tecnologia em Análise e Desenvolvimento de Sistemas
Leia maisTipo de Dados em Linguagem C
Tipo de Dados em Linguagem C Principais tipos de dados em C int : tipo de dados inteiros (exemplo: 1, -3, 100, -9, 18, etc.) float : tipo de dados reais (exemplo: 1.33, 3.14, 2.00, -9.0, 1.8, etc.) Ocupa
Leia mais: Administração Produção : Linguagem de : Adminstração Banco 1 :Administração Storage Sistema z/os Sistema z/vm : Melhores Práticas em Gestão de Tecnologia - IL Módulo : : Administração Produção : Linguagem
Leia mais1. Modelagem de Sistemas 1.1. Os Desenvolvedores de Sistemas podem Escolher entre Quatro Caminhos
Sumário Modelagem de Processos Módulo 4 1. Modelagem de Sistemas 1.1. Os Desenvolvedores de Sistemas podem Escolher entre Quatro Caminhos M. Sc. Luiz Alberto lasf.bel@gmail.com Modelagem de Sistemas MP
Leia maisREGULAMENTO DO PROJETO DE CONCLUSÃO DE CURSO (PCC) CAPÍTULO I Da natureza e finalidade. Capítulo II
FUNDAÇÃO EDUCACIONAL DE ITUIUTABA ISEPI INSTITUTO SUPERIOR DE ENSINO E PESQUISA DE ITUIUTABA ISEDI INSTITUTO SUPERIOR DE EDUCAÇÃO DE ITUIUTABA UNIDADE ASSOCIADA À UNIVERSIDADE DO ESTADO DE MINAS GERAIS
Leia maisAULA 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 maisProgramação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre
Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Cap. 02 Fundamentos de Linguagens Sumário : Linguagem, alfabeto e gramática
Leia maisUniversidade Federal de Minas Gerais
1 Universidade Federal de Minas Gerais Escola de Engenharia Departamento de Engenharia Eletrônica Laboratório de Informática Industrial 11 a Aula - Programação IEC 61131-3 no ambiente ISaGRAF Objetivos:
Leia maisIntrodução a Computação
Introdução a Computação Aula 02 Introdução a Linguagem C Edirlei Soares de Lima Lógica de Programação Lógica de Programação é a técnica de criar sequências lógicas de ações para
Leia maisSistemas Operacionais
Multiprogramação 2 a edição Revisão: Fev/2003 Sistemas Operacionais Multiprogramação Capítulo 2 Tornar mais eficiente o aproveitamento dos recursos do computador Execução simultânea* de vários programas
Leia maisEduardo Bezerra. Editora Campus/Elsevier. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição
Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier 1 Capítulo 2 Processo de Desenvolvimento de Software Quanto mais livros você leu (ou escreveu), mais
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 maisIntrodução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização
Prof. Ricardo José Pfitscher Material elaborado com base em: José Luiz Mendes Gerson Volney Lagemann Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento
Leia maisJava. Marcio de Carvalho Victorino www.dominandoti.eng.br
Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a
Leia maisSistemas Operacionais Conceitos Básicos
1. Sistema Computacional: HARDWARE + SOFTWARE. Sistemas Operacionais Conceitos Básicos Hardware: Principais elementos de hardware de um Sistema Computacional: Processador Memória principal Dispositivos
Leia maisTutorial: Aprenda a criar seu próprio makefile. Darcamo (Forúns Ubuntu)
Tutorial: Aprenda a criar seu próprio makefile Darcamo (Forúns Ubuntu) 08 de Junho de 2007 Resumo Eu estava acostumado a sempre deixar a IDE criar o makefile pra mim e nunca liguei muito pra ele, mas recentemente
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 maisO que é um processo de software?
O que é um processo de software? Um conjunto de atividades realizadas por pessoas cujo objetivo é desenvolvimento ou evolução de software e sua documentação. Atividades genéricas em todos os processos:
Leia maisORGANIZAÇÃO DE COMPUTADORES MÓDULO 1
ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1 Índice 1. Introdução...3 1.1. O que é um Computador?... 3 1.2. Máquinas Multiníveis... 3 2 1. INTRODUÇÃO 1.1 O QUE É UM COMPUTADOR? Para estudarmos como um computador
Leia maisDell SupportAssist para PCs e Tablets Guia de implementação
Dell SupportAssist para PCs e Tablets Guia de implementação Notas, avisos e advertências NOTA: Uma NOTA indica informações importantes que ajudam você a usar melhor os recursos do computador. CUIDADO:
Leia maisConceitos básicos da linguagem C
Conceitos básicos da linguagem C 2 Em 1969 Ken Thompson cria o Unix. O C nasceu logo depois, na década de 70. Dennis Ritchie, implementou-o pela primeira vez usando o sistema operacional UNIX criado por
Leia maisIIIIIIII HAND PAPA FILA
MANUAL DE OPERAÇÃO IIIIIIII HAND PAPA FILA PAPA FILA e-mail: comercial.mobilitysistemas.com.br site: www.mobilitysistemas.com.br Versão 1.0 e-mail: comercial@mobilitysistemas.com.br site: www.mobilitysistemas.com.br
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 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 maisGERÊNCIA DE PROJETOS DE SOFTWARE. Introdução
GERÊNCIA DE PROJETOS DE SOFTWARE Introdução GERÊNCIA DE PROJETOS DE SOFTWARE - INTRODUÇÃO Um projeto é como uma viagem em uma rodovia. Alguns projetos são simples e rotineiros, como dirigir até uma loja
Leia maisAula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/
Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.
Leia maisBANCO DE DADOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com
BANCO DE DADOS Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Contexto Fazem parte do nosso dia a dia: Operações bancárias Matrícula na universidade Reserva de hotel Controle de biblioteca Comércio
Leia maisAlgoritmos e Programação. Curso de Engenharia de Produção Prof. Ms. Rogério Cardoso rogerio.cardoso@aedu.com professor@rogeriocardoso.com.
Algoritmos e Programação Curso de Engenharia de Produção Prof. Ms. Rogério Cardoso rogerio.cardoso@aedu.com professor@rogeriocardoso.com.br 2012 Conteúdo e Objetivos da Aula Introdução a Linguagem C Revisão
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 maisCapítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.
Capítulo 8. CICLOS OBJETIVOS DO CAPÍTULO Conceito de ciclo Comandos do FORTRAN: DO END DO, EXIT 8.1 programa8a.f90 Para inicializar as atividades deste capítulo, deve-se executar: 1) Para acessar o programa
Leia mais2. Conceitos e Arquitetura de Bancos de Dados
Bancos de Dados 2. Conceitos e Arquitetura de Bancos de Dados 1 Arquitetura Moderna de SGBD SGBD antigos eram monolíticos e rígidos, voltados para funcionamento em ambientes centralizados (mainframes e
Leia maisConvertendo Algoritmos para a Linguagem C
onvertendo Algoritmos para a Linguagem Notas de Aula Prof. Francisco Rapchan www.geocities.com/chicorapchan O objetivo deste texto é mostrar alguns programas em, dando uma breve descrição de seu funcionamento
Leia maisBanco de Dados. Profª. Ana Leda
Banco de Dados Profª. Ana Leda Introdução 1 DADO PROCESSAMENTO INFORMAÇÃO 2 Dados x Informação DADO = REPRESENTAÇÃO DE UM FATO, OBJETO, EVENTO, PESSOA, ETC. ENTIDADE = FATO, OBJETO, EVENTO, PESSOA, ETC,
Leia maisSumário. Parte I Filosofia e Modelagem Orientada a Objetos... 23
Sumário Prefácio... 17 Sobre o livro... 18 Como fazer download dos arquivos-fonte... 19 Como ler este livro... 19 Experiência do autor... 21 Parte I Filosofia e Modelagem Orientada a Objetos... 23 Capítulo
Leia maisAnálise de Sistemas. Contextualização. O Sucesso. Aula 4. Instrumentalização. Aula 4. Prof. Emerson Klisiewicz. Clientes satisfeitos
Análise de Sistemas Aula 4 Contextualização Prof. Emerson Klisiewicz Aula 4 Gerenciamento de Requisitos Refinamento de Requisitos Aprovação de Requisitos Matriz de Rastreabilidade O Sucesso Clientes satisfeitos
Leia maisAmbiente de desenvolvimento de Programação Assembly MCU 8051 IDE
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Prof. Evandro L. L. Rodrigues Ambiente de desenvolvimento de Programação Assembly MCU 8051 IDE http://mcu8051ide.sourceforge.net/ Tela inicial Criar novo projeto:
Leia maisAula 12: Funções. Pré-requisitos: Todas as aulas anteriores deste módulo. 1. Aproveitando Códigos no Programa
Aula 12: Funções Nesta aula explicaremos o que são e como usar funções nos seus programas em JavaScript. Você aprenderá como elas podem receber e retornar valores à estrutura que as acionou. Entenderá
Leia maisTrabalho de Conclusão de Curso
Trabalho de Conclusão de Curso PROTÓTIPO DE UM SOFTWARE EDUCACIONAL PARA AUXILIAR O PROCESSO ENSINO- APRENDIZAGEM ATRAVÉS DE RECURSOS COMPUTACIONAIS Orientador: Francisco Adell Péricas Acadêmico: Andrei
Leia maisSistema Datachk. Plano de Projeto. Versão <1.0> Z u s a m m e n a r b e i t I d e i a s C o l a b o r a t i v a s
Plano de Projeto Versão Z u s a m m e n a r b e i t I d e i a s C o l a b o r a t i v a s 2010 2 Histórico de Revisões Data Versão Descrição Autores 07/04/2010 1.0 Criação da primeira versão do Plano
Leia maisAnálise de Pontos de Função. Por Denize Terra Pimenta dpimenta_aula@yahoo.com.br
Análise de Pontos de Função Por Denize Terra Pimenta dpimenta_aula@yahoo.com.br 1 Não se consegue controlar o que não se consegue medir. 2 Bibliografia "Function Point Analysis: Measurement Practices for
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso
Leia maisGerenciamento de configuração. Gerenciamento de Configuração. Gerenciamento de configuração. Gerenciamento de configuração. Famílias de sistemas
Gerenciamento de Gerenciamento de Configuração Novas versões de sistemas de software são criadas quando eles: Mudam para máquinas/os diferentes; Oferecem funcionalidade diferente; São configurados para
Leia mais15 a Aula Subprogramação /Subalgoritmos Função e Procedimento
FISP 1/6 15 a Aula Subprogramação /Subalgoritmos Função e Procedimento Objetivo: Simplificação e racionalização na elaboração de algoritmos mais complexos Recursos: Estruturação de algoritmos e modularização
Leia maisXML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011
XML Básico Murillo Vasconcelos Henriques B. Castro 17 de maio de 2011 O QUE É? Sigla para extensible Markable Language É uma linguagem de marcação, assim como HTML Desenvolvida para ser auto explicativa
Leia maisLinguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação
Linguagem C: variáveis, operadores, entrada/saída Prof. Críston Algoritmos e Programação Linguagem C Linguagem de uso geral (qualquer tipo de aplicação) Uma das linguagens mais utilizadas Foi utilizada
Leia maisLTP-IV. Prof. Dr. Silvio do Lago Pereira. Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo
LTP-IV Prof. Dr. Silvio do Lago Pereira Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo Contato e-mail: slago@ime.usp.br home page: www.ime.usp.br/~slago apostila: Linguagem
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 maisGABARITO COMENTADO SISTEMAS OPERACIONAIS. PROF. Cláudio de C. Monteiro, Evanderson S. de Almeida, Vinícius de M. Rios
CURSO - TADS TURMA 2008.1 2 PERÍODO 3 MÓDULO AVALIAÇÃO MP2 DATA 02/10/2008 SISTEMAS OPERACIONAIS 2008/2 GABARITO COMENTADO SISTEMAS OPERACIONAIS PROF. Cláudio de C. Monteiro, Evanderson S. de Almeida,
Leia maisIntrodução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01
Introdução à Arquitetura de Computadores Renan Manola Introdução ao Computador 2010/01 Introdução Conceitos (1) Computador Digital É uma máquina que pode resolver problemas executando uma série de instruções
Leia mais