Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Slides linguagem de programação, Slides de Informática

SLIDES DE PROGRAMAÇÃO

Tipologia: Slides

2010
Em oferta
30 Pontos
Discount

Oferta por tempo limitado


Compartilhado em 25/09/2010

renata-alves-36
renata-alves-36 🇧🇷

4.6

(5)

6 documentos

Pré-visualização parcial do texto

Baixe Slides linguagem de programação e outras Slides em PDF para Informática, somente na Docsity! Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Linguagens de Programação Sintaxe e Linguagem C Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Outubro de 2008 Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Sumário 1 Linguagem de Programação 2 Níveis Linguagem de Alto Nível 3 Sintaxe 4 Programação x Algoritmos 5 Linguagem C 6 Sites interessantes Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Introdução Exemplos Linguagens não-proprietárias usadas atualmente Assembly, C, C++, Java, Pascal, Perl, Python, Ruby, PHP Linguagens proprietárias usadas atualmente C#, J#, Delphi, VB.NET, Cobol Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Introdução Programação de Computadores Sistema Computacional Hardware Software Software de Sistema (Sistema Operacional) Software Utilitário Software Aplicativo Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Níveis de Linguagens de Programação Linguagem de Máquina Sistema Binário Linguagem Hexadecimal Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Linguagem Assembly Características Acesso direto à maquina (otimização da programação). Pode ser até 300% mais rápido que um programa em linguagem de mais alto-nível. Necessidade de detalhamento e conhecimento da máquina Diculdade de leitura (deve ser bem documentado) Aplicações Sistemas com respostas em tempo real Otimização de subtarefas da programação de alto nível Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Linguagem de Alto Nível Linguagem de Alto Nível Características Sintaxe mais próxima à linguagem natural (read, write, etc.) Permite manipulação de dados em diversas formas (números, listas, matrizes, etc.) Exemplos Fortran, Cobol, Pascal Java, C/C++ Python, Ruby Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Linguagem de Alto Nível Linguagem de Alto Nível Características Programação independente das máquinas  uso de compiladores em cada sistema Portabilidade é comum nas linguagens de alto nível, mas podem haver variações Padronização Padrões para as linguagens: institutos ANSI e ISO Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Sintaxe e Características Características da Linguagem Palavras reservadas Conjunto de caracteres usados pela linguagem e que não podem ser usados como identicadores Exemplos (C/C++ e Java): while, if, for Case Sensitive Termo usado para denir que uma linguagem faz diferença entre letras maiúsculas e minúsculas (sensível à caixa) Exemplos (C/C++ e Java): o identicador Nome é diferente de nome e NOME Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Sintaxe e Características Hello, world! Exemplo mínimo de uma linguagem de programação Código que imprime na tela Hello, world! C #include <stdio.h> int main(void) { printf("Hello, world!\n"); return 0; } Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Sintaxe e Características Hello, world! Exemplo mínimo de uma linguagem de programação Código que imprime na tela Hello, world! C #include <stdio.h> int main(void) { printf("Hello, world!\n"); return 0; } Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Programação de Computadores x Algoritmos Método Sistemático Análise: estuda-se o problema, buscando a sua completa compreensão, Projeto: aplica métodos e técnicas que possibilitem a descrição necessária do problema com suas possíveis soluções, Codicação: implementação do projeto do programa, escrito em uma linguagem de programação, Teste: simulações, testes e vericações dos programa são analisados, podendo resultar em alterações no código elaborado. Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Programação de Computadores x Algoritmos Linguagem de Programação Computer language is not just a way of getting a computer to perform operations but rather that it is a novel formal medium for expressing ideas about methodology. Thus, programs must be written for people to read, and only incidentally for machines to execute. (ABELSON et al., 1985) Código Qualquer tolo consegue escrever código que um computador entenda. Bons programadores escrevem código que humanos possam entender. (FOWLER, 2004) Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Linguagem C Criação AT& T Bell Labs  1969 a 1973 Ken Thompson e Dennis Ritchie Nome C  derivado de uma linguagem anterior B Desenvolvimento ligado ao sistema operacional Unix (kernel escrito em C) Primeiro livro publicado em 1978 por Dennis Ritchie e Brian Kernighan (C - The Programming Language) gerou a versão conhecida como K&R C Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Características Nivel Médio É possível realizar operações mais próximas ao hardware Diversos drivers e sistemas operacionais são escritos em C Bibliotecas padronizadas com funcionalidades Entrada e saída Funções matemáticas Acesso a direto à memória por meio de ponteiros Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Aplicações Abre aspas Comparing C to Pascal is rather like comparing a Learjet to a Pipercub - one is meant for getting something done while the other is meant for learning  (Kerninghan) Figura: Pipercube e Learjet Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Sintaxe Linguagem Imperativa Uso livre de comentários e linhas em branco Uso obrigatório de ponto-e-vírgula no nal de cada linha Uso de comandos para especicar ações Elementos de linguagem estruturada e procedural Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Versões C99 C++ continuou evoluindo após 1989 Corrigidos alguns detalhes Extendido suporte a conjuntos de caracteres internacionais Incluiu recursos da linguagem C++ (tipos de dados, macros, comentários, etc.) Em 2007 foi iniciada nova revisão da linguagem C Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Sintaxe Básica Main é o programa principal, executado no início do programa Ponto-e-vírgula indicam m de uma linha Chaves indicam início e m de blocos (seja para programas, funções, estruturas de decisão ou de repetição) Hello, world! #include <stdio.h> // biblioteca int main(void) { // definição do programa principal printf("Hello, world!\n"); // escreve e vai para próxima linha return 0; // finaliza o programa principal } Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Sintaxe Básica Main é o programa principal, executado no início do programa Ponto-e-vírgula indicam m de uma linha Chaves indicam início e m de blocos (seja para programas, funções, estruturas de decisão ou de repetição) Hello, world! #include <stdio.h> // biblioteca int main(void) { // definição do programa principal printf("Hello, world!\n"); // escreve e vai para próxima linha return 0; // finaliza o programa principal } Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Geração de Código Fonte  Codicação Codicação: escrita usando uma linguagem de programação Uso de um editor como ferramenta para codicar É gerado o Código-fonte Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Tradução do Código Fonte  Compilação Código fonte não é executável diretamente pelo processador Tradução do código fonte para linguagem de máquina: Montadores (geração de linguagem de montagem) Compiladores (geração do código-objeto) Fases da compilação: Análise léxica Análise sintática Geração de código Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Tradução do Código Fonte  Compilação Análise Léxica Identicação de cada cadeia de caracteres Verica se cada item é válido classicando em: numérica, palavra, ou operador aritmético Análise Sintática Constrói árvores sintáticas para o programa fonte Identica a estrutura gramatical reconhecendo o papel de cada componente do código Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Tipos de Dados Cinco tipos principais char: dados alfanuméricos int: números inteiros oat: números reais  aproximadamente 7 dígitos de precisão (4 bytes) double: números reais  aproximadamente 15 dígitos de precisão (8 bytes) void: ausência de tipo, indica que não há dados a serem informados ou retornados Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Comentários int main(void) { /* comentario de varias linhas */ // comentario de uma linha } Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação Linguagem de Programação Níveis Sintaxe Programação x Algoritmos Linguagem C Sites interessantes Histórico, Aplicações e Sintaxe Linguagens Relacionadas Direta ou Indiretamente Inuenciou: C++ Unix C Shell Java PHP Perl Prof. Moacir P. Ponti Jr Prof. Marcelo R. Zorzan Universidade Federal de Viçosa SIN-110 (Programação I) Linguagens de Programação
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved