Laboratório de Programação de Computadores I

Slides:



Advertisements
Apresentações semelhantes
Estruturação de Linguagens (Pascal e C++)
Advertisements

PRÓ-INFORMÁTICA QUALIFICAÇÃO PROFISSIONAL
1.3.2 – Linguagem Assembly Um programa em linguagem de máquina sofre de total falta de clareza O programa é uma sequência de linhas numeradas Cada linha.
Programação em Java Prof. Maurício Braga
Introdução à Ciência da Computação Linguagens de Programação.
Versão – Prof.: Mauro César Lopes
Algoritmo Exemplo: faça um algoritmo para tocar todas as músicas de um cd. Após o usuário apertar o play Algoritmo Para as músicas de 1 até última música.
Histórico do Java 1990 James Gosling (Sun Microsystems)
Tipos de dados, Variáveis, Expressões e Operadores
1 Introdução (Informal) à Programação DI/FCT/UNL 1º Semestre 2004/2005.
ELEMENTOS DA INFORMÁTICA
Software Básico Silvio Fernandes
Universidade Federal de São Carlos Introdução à Linguagem C Comandos.
Algoritmos e Programação Linguagens de Programação Teoria Aula 5 (05/05) Universidade Federal do Vale do São.
Introdução a Programação Renata Freire
Orientação a Objetos: Encapsulamento e Classificação
INTRODUÇÃO À PROGRAMAÇÃO
Introdução Linguagem C
Ferramentas Programação
Disciplina: AAM Profa. Ana Watanabe vol.3
Curso Sistemas de Informação I Disciplina: Arquitetura de Software
1 Professor Rogério B. de Andrade - Aula 001- Dez/2008 Técnicas e Linguagem de Programação.
Capítulo 3 Operadores.
Paradigmas da Programação
Aula 3 Evolução da Principais Linguagens
Versão – Prof.: Mauro César Lopes
Linguagem C.
Versão – Prof.: Mauro César Lopes
Linguagem C Estruturas de Sequências
Unidades de Armazenamento
Ling. C - Variáveis Uma variável não é mais do que o nome que nós damos a uma determinada posição de memória para conter um valor de um determinado tipo.
Introdução a Linguagem de Programação C
Introdução a Programação Orientada a Objetos
Introdução a Programação JAVA
Introdução a Computação e Cálculo Numérico
PROGRAMAÇÃO I UNIDADE 1.
< declaração de variáveis > ( estrutura de dados )
Algoritmos Computacionais ( Programas )
Flávio Melo Gabriel Fornari
Estrutura de dados, pseudocódigo
Introdução a Linguagem de Programação C
Seminário 1: Revisão de C
Introdução a Linguagens de Programação
História dos computadores e da programação
Tipos de Dados Paradigmas de Programação
Expressões e Instrução de Atribuição
Programação em C++ Compiladores
Organização e Arquitetura de Computadores
02/08/2011 Professor Leomir J. Borba- –
Lógica Estruturada Aplicada
Programação Orientada a Objetos - Java Professor: Jean Carlo Mendes.
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Modelos de Linguagem de Programação I Aula 06
Programação Orientada a Objetos - Java
MSc. Marcelo Torres – professortorres.com.br. Linguagem de Programação 01 - Introdução à Linguagem C MSc. Marcelo Torres – professortorres.com.br.
Java Básico Instrutor: Davi Pires
Tipos de dados inteiro caracter real logico
Linguagens de Programação II
Conceitos Básicos e Manipulação de Objetos
Linguagem C.
Introdução a Programação Orientada a Objetos
ALGORITMIA. ALGORITMO Conjunto de instruções ou acções que ao serem executadas, permitirão realizar uma determinada tarefa.
Linguagens de Programação
Introdução Sintaxe Básica da Linguagem JAVA
Profa. Maria Augusta Constante Puget
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS LINGUAGEM DE PROGRAMAÇÃO I Aula /08/2011 Professor Leomir J. Borba-
PARADIGMAS DE LINGUAGENS EXPRESSÕES E INSTRUÇÕES DE ATRIBUIÇÃO
Módulo I – Softwares: Linguagens de Programação Prof.: Rogério Morais.
Linguagem de Programação II Escola Olímpio Professor Marcelo Josué Telles Linguagem de Programação II1 de 36.
Transcrição da apresentação:

Laboratório de Programação de Computadores I 1º Semestre/2009 Prof. Mauro César Lopes. maurocl@terra.com.br

Conceitos básicos Programação de computadores é definido como o processo de criação de um software de computador usando uma linguagem de programação Linguagem de programação: é uma linguagem usada para dar instruções a um computador Um programa é um conjunto de instruções para um computador Uma linguagem de programação contém uma coleção de palavras que são organizadas em sentenças que transportam a informação ao computador

Linguagens de Programação C, C++, C#, Pascal, Java, VisualBasic, Fortran, Cobol, Perl, Python, Ruby, TCL, Lisp, Prolog, ADA, SmallTalk, Erlang, PHP

Ambientes de desenvolvimento e compilação Compilação via linha de comando IDE (Integrated Development Environment) Desenvolvimento RAD (Rapid Application Development)

Ambientes Windows Visual Studio Express Edition Eclipse NetBeans

IDE (Ambiente de Desenvolvimento Integrado) Permitem o desenvolvimento integrado de aplicações, envolvendo a edição, compilação, execução e debug da aplicação

Compiladores e Linkers Compiladores: é responsável pela tradução do código fonte em linguagem de máquina (código objeto) Linkers: é responsável pela ligação do código objeto com outras bibliotecas (se necessário) a fim de gerar o código executável

Processo de Compilação Código fonte Compilação ligação executável Helllo.c Compilação ligação Hello.exe Hello.c  Hello.obj  Hello.c

Compilação x Interpretação Um programa compilado gera um executável dependente de plataforma Um programa interpretado é executado passo a passo por um interpretador

Exemplos de linguagens tipicamente compiladas COBOL Fortran Pascal

Exemplos de linguagens tipicamente interpretadas ActionScript ASP BASIC JavaScript (ECMAScript) Perl PHP Ruby Tcl

Programação Estruturada Programação estruturada é uma forma de programação de computadores que preconiza que todos os programas possíveis podem ser reduzidos a apenas três estruturas: sequência, decisão e iteração. Tendo, na prática, sido transformada na Programação modular, a Programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando as subrotinas e as funções.

Programação Orientada a Objetos Programação Orientada a Objetos (POO) ou Object-Oriented Programming (OOP) é um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.

Programação em linguagem C

Variáveis Uma variável é definida como um lugar onde podemos armazenar dados temporariamente e usá-los posteriormente Normalmente um variável possui um nome que é usado para acessar seu conteúdo Uma variável poderá armazenar um número inteiro, de ponto flutuante, um caracter, uma cadeia de caracteres (String) , um valor booleano, etc.

Tipos de variáveis Inteira Ponto flutuante Caracter Booleana int, short, long Ponto flutuante Float, double Caracter char Booleana 1 = sim, verdadeiro; 0=não, falso

Variáveis Uma variável poderá ser signed ou unsigned, isto é, com sinal ou sem sinal. Uma variável unsigned possui apenas valores positivos Uma variável signed possui valores positivos e negativos

Exemplos int a, idade; char ch, caracter; float f, valor; double d;

Atribuição de valores a variáveis Podemos atribuir o valor a uma variável usando o símbolo ‘=‘ Exemplos int a = 1; float f = -8.76; char c=‘a’;

Operadores Numéricos Lógicos Binários

Operadores Numéricos ++, -- Incremento, decremento +, -, *, /, % adição, subtração, multiplicação, divisão, módulo (resto)

Operadores Lógicos ==, != Igual, diferente >, >=, <, <= Maior, maior ou igual, menor, menor ou igual && “E” lógico || “OU” lógico ! “NÃO” lógico

Operadores Binários & “E” binário ^ “XOR” ou-exclusivo | “OU” binário ~ “NÃO” binário

Sequência de comandos Um programa é uma sequencia de comandos ... <comando N>;

Comandos condicionais Permitem uma expressão seja avaliada e que uma ação seja executada no caso da expressão ser avaliada verdadeira (1) ou falsa (0).

Comando if int a = 5; if(a<0) { print (“a é negativo\n”); } else { print (“a é positivo\n”);

Controle de Fluxo Loops com teste no início (while) Loops com testes no final (do/while) Loops de tamanho definido (for) Saindo de loops antes do término (break) Retestando a condição (ex: continue)

Comando while int i=0; while(i<5) { printf(“%d\n”,i); i = i + 1; }

Comando do/while int i=0; do { printf(“%d\n”,i); i = i + 1;

Comando for int i = 0; for(i=0;i<5;i++) { printf(“%d\n”,i); }

Comando break int 0=0; while (i<10) { printf(“%d\n”,i); i++; if(i==5) { break; }

Comando continue int 0=0; while (i<10) { if(i%2!=0) { continue; }

Funções Header file Cabeçalho da função Argumentos Tipo de retorno

Funções int soma(int x, int y) { return x+y; } Tipo de retorno Nome da função parâmetros int soma(int x, int y) { return x+y; }

Matrizes

Conceitos Básicos de Orientação a Objetos Classe É uma fábrica de objetos. Representa um conjunto de objetos com características afins. Uma classe define o comportamento dos objetos, através de métodos, e quais estados ele é capaz de manter, através de atributos. Exemplo de classe: Os seres humanos. Objeto é uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos. Exemplo de objetos da classe Humanos: João, José, Maria. Atributos são características de um objeto. Basicamente a estrutura de dados que vai representar a classe. Exemplos: Funcionário: nome, endereço,telefone, CPF, ....; Carro: nome, marca, ano, cor, ...; Livro: autor, editora, ano. Estado São os valores que cada atributo recebe. Exemplo: o estado do atributo cor é azul.

Conceitos Básicos de Orientação a Objetos Métodos definem as habilidades dos objetos. Bidu é uma instância da classe Cachorro, portanto tem habilidade para latir, implementada através do método deUmLatido(). Um método em uma classe é apenas uma definição. A ação só ocorre quando o método é invocado através do objeto, no caso Bidu. Dentro do programa, a utilização de um método deve afetar apenas um objeto em particular; Todos os cachorros podem latir, mas você quer que apenas Bidu dê o latido. Normalmente, uma classe possui diversos métodos, que no caso da classe Cachorro poderiam ser sente(), coma() e morda().

Conceitos Básicos de Orientação a Objetos Mensagem é uma chamada a um objeto para invocar um de seus métodos, ativando um comportamento descrito por sua classe. Também pode ser direcionada diretamente a uma classe (através de uma invocação a um método estático). Sobrecarga é a utilização do mesmo nome para símbolos ou métodos com operações ou funcionalidades distintas. Geralmente diferencia-se os métodos pela sua assinatura. Exemplo: Um método Carro que recebe como parâmetro dois atributos (cor, placa), e outro método Carro que recebe como parâmetro (cor, placa, modelo).

Conceitos Básicos de Orientação a Objetos Herança (ou generalização) é o mecanismo pelo qual uma classe (sub-classe) pode estender outra classe (super-classe), aproveitando seus comportamentos (métodos) e variáveis possíveis (atributos). Há Herança múltipla quando uma sub-classe possui mais de uma super-classe. Essa relação é normalmente chamada de relação "é um". Um exemplo de herança: Mamífero é super-classe de Humano. Ou seja, um Humano é um mamífero. Associação é o mecanismo pelo qual um objeto utiliza os recursos de outro. Pode tratar-se de uma associação simples "usa um" ou de um acoplamento "parte de". Por exemplo: Um humano usa um telefone. A tecla "1" é parte de um telefone. Encapsulamento consiste na separação de aspectos internos e externos de um objeto. Este mecanismo é utilizado amplamente para impedir o acesso direto ao estado de um objeto (seus atributos), disponibilizando externamente apenas os métodos que alteram estes estados. Exemplo: você não precisa conhecer os detalhes dos circuitos de um telefone para utilizá-lo. A carcaça do telefone encapsula esses detalhes, provendo a você uma interface mais amigável (os botões, o monofone e os sinais de tom).

Conceitos Básicos de Orientação a Objetos Abstração é a habilidade de concentrar nos aspectos essenciais de um contexto qualquer, ignorando características menos importantes ou acidentais. Em modelagem orientada a objetos, uma classe é uma abstração de entidades existentes no domínio do sistema de software. Polimorfismo é o princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma assinatura (lista de parâmetros e retorno) mas comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse. A decisão sobre qual o método que deve ser selecionado, de acordo com o tipo da classe derivada, é tomada em tempo de execução, através do mecanismo de ligação tardia. No caso de polimorfismo, é necessário que os métodos tenham exatamente a mesma identificação, sendo utilizado o mecanismo de redefinição de métodos. Esse mecanismo de redefinição não deve ser confundido com o mecanismo de sobrecarga de métodos.

Conceitos Básicos de Orientação a Objetos Interface é um contrato entre a classe e o mundo externo. Quando uma classe implementa uma interface, ela está comprometida a fornecer o comportamento publicado pela interface [1]. Pacotes são referências para organização lógica de classes e interfaces

Estratégias básicas de desenvolvimento de programas