Práticas de Desenvolvimento de Software

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamanho: px
Começar a partir da página:

Download "Práticas de Desenvolvimento de Software"

Transcrição

1 Aula 3. 09/03/2015. Práticas de Desenvolvimento de Software Aula 3 - Introdução à linguagem de programação Ruby Oferecimento

2 Ruby (1) Ruby

3 Ruby (2) Ruby Linguagem de programação dinâmica, de código aberto, com foco em simplicidade e produtividade. Tem sintaxe elegante, natural para ler e fácil de escrever.

4 Ruby (3) Ruby Matz 2005 Multi Open source Yukihiro Matsumoto criou a linguagem em I was thinking about the possibility of an objectoriented scripting language. Perl was ugly. Python wasn t a true OO language.

5 Ruby (4) Ruby Matz 2005 Multi Open source Em 2005, Ruby ganhou popularidade junto com o framework de desenvolvimento web Ruby on Rails.

6 Ruby (5) Ruby Matz 2005 Multi Open source É uma linguagem multiparadigma (procedural, OO, funcional), multiplataforma (Linux, Mac, Windows) e tipicamente interpretada (Matz's Ruby Interpreter).

7 Ruby (6) Ruby Matz 2005 Multi Open source https://github.com/ruby/ruby

8 Ruby (7) Aplicações criadas com Ruby

9 Linguagem compilada vs. interpretada (1) Linguagem compilada vs. interpretada

10 Linguagem compilada vs. interpretada (2) Processo em uma linguagem compilada Desenvolvedor Usuário "compilar" "executar" Código fonte Código executável A compilação gera um arquivo binário nativo com instruções de máquina Executa nativamente

11 Linguagem compilada vs. interpretada (3) Processo em uma linguagem interpretada Desenvolvedor "executar" Código fonte Trecho executável Trechos de código são compilados dinamicamente por um interpretador Executa trecho

12 Linguagem compilada vs. interpretada (3) Processo em uma linguagem interpretada Desenvolvedor Usuário "executar" Código fonte Trecho executável Trechos de código são compilados dinamicamente por um interpretador Executa trecho

13 Linguagem compilada vs. interpretada (4) Java é uma linguagem compilada?

14 Linguagem compilada vs. interpretada (5) Processo em Java Desenvolvedor Usuário "compilar" "executar" Código fonte Código executável pela JVM A compilação gera um arquivo bytecode com instruções para a máquina virtual java (JVM) Interpreta com a JVM

15 Linguagem compilada vs. interpretada (6) E o que Ruby tem com isso?

16 Linguagem compilada vs. interpretada (7) Ruby Pode ser interpretada ou compilada. MRI mruby jruby ironruby RubyMotion Rubinius Matz Ruby Interpreter (interpretador mais popular de Ruby) Implementação leve/"embeddable" de Ruby Implementação em Java Implementação em.net Implementação comercial que roda em ios, OS X e Android Implementação em Ruby capaz de compilar Ruby

17 Instalação de um interpretador Ruby RVM é uma ferramenta em linha de comando que permite instalar, gerenciar e trabalhar com múltiplos ambientes (interpretadores/bibliotecas) de Ruby facilmente. https://rvm.io/

18 Scripts em Ruby (1) DEMO irb (Interactive Ruby) Permite interpretar código passo a passo

19 Scripts em Ruby (1) DEMO Execução de um script

20 Estrutura da linguagem de programação Ruby (1) Tipos de dados mais comuns Tipo Nulo Booleano Exemplos nil true, false Inteiro 1, 100, 3000, 3_000 Ponto flutuante String Símbolos 2.53, , , 3_ "duplas", 'simples' :username, :password, :name, :age Array [1, 2, 3] Hash { 'a' => 1, 'b' => 2, 3 => 'c' }

21 Estrutura da linguagem de programação Ruby (2) Operadores aritméticos Operador Exemplos # # 4 * 3 * 2 # 6 / 10 / 3 # 3 % 10 % 3 # 1

22 Estrutura da linguagem de programação Ruby (3) Operadores relacionais Operador Exemplos > 5 > 5 # false >= 5 >= 5 # true < 3 < 4 # true <= 3 <= 2.9 # false == 5 == 5.5 # false!= 5!= 5.5 # true

23 Estrutura da linguagem de programação Ruby (4) Operadores condicionais Operador && and Exemplos true && false # false true and false # false true false # true or true or false # true!!true # false not not true # false

24 Estrutura da linguagem de programação Ruby (5) Operadores de atribuição Operador Exemplos = num = 1 # 1 += -= *= /= %= num = 1 num += 1 # 2 num = 1 num -= 1 # 0 num = 2 num *= 3 # 6 num = 4 num /= 2 # 2 num = 3 num %= 2 # 1

25 Sintaxe da linguagem de programação Ruby (1) Comentário # This is an inline comment =begin # This is a multiline comment def todo end =end def done puts "Ready to go" end

26 Sintaxe da linguagem de programação Ruby (1) String # String concatenation. a = "Hello" b = "World" c = a + b # => "HelloWorld" # String interpolation. s = "2 * 3 = #{2*3}" # => "2 * 3 = 6"

27 Sintaxe da linguagem de programação Ruby (1) Array # Create a new array with numbers. a = [ 1, 2, 3, 4, 5 ] a[0] # 1 a[4] # 5 a[-1] # 5 a.pop # remove the last element (5) a.shift # remove the first element (1) a.push(10) # add 10 to the tail of the array a.unshift(20) # add 20 to the head of the array a.size a.index(2) # length/size of the array # position of the 1st occurrence # of element 2 in the array a.count(3) # how many times the element 3 # occurs in the array

28 Sintaxe da linguagem de programação Ruby (1) Hash # A Ruby Hash is an associative table. h = { :name => 'Rafael', :surname => 'Barbolo', :age => 27 } h[:name] # "Rafael" h[:surname] # "Barbolo" h[:age] # 27 a.size # 3, how many associations (keys/values) a.keys # [ :name, :surname, :age ] a.values # [ "Rafael", "Barbolo", 27 ]

29 Sintaxe da linguagem de programação Ruby (1) Funções (1) # It's a Ruby convention to use snake_case instead # of CamelCase for functions and variables names. def function_name(arg1, arg2 = 3) puts "This function receives arg1 and arg2." puts "The default value of arg2 is 3." puts "The result is the product of arg1 with arg2." return arg1 * arg2 # "return" can be omitted end function_name(2) # 6 function_name(2, 4) # 8

30 Sintaxe da linguagem de programação Ruby (1) Funções (2) def function_name puts "This function doesn't receive arguments." puts "The result will always be 1000." 1000 end function_name() # 1000 function_name # 1000

31 Sintaxe da linguagem de programação Ruby (1) Impressão # Examples of printing functions print "printing without line break" puts "printing with line break" p "p is an alias of puts" puts 2*5 # => 10

32 Sintaxe da linguagem de programação Ruby (1) Controle condicional: if/else # Example of conditional control with if/else if condition1 puts "condition 1 is met" elsif condition2 puts "condition 2 is met" else puts "no conditions met" end

33 Sintaxe da linguagem de programação Ruby (1) Controle condicional: case/when # Example of conditional control with case/when case condition when 1 puts "condition 1 is met" when 2 puts "condition 2 is met" else puts "no conditions met" end

34 Sintaxe da linguagem de programação Ruby (1) Controle de iteração: while # Example of loop control with while while some_condition next # jump to the next iteration redo # reexecute the current iteration break # break the loop end

35 Sintaxe da linguagem de programação Ruby (1) Controle de iteração: each # There is "for" in Ruby, however it's rarely used. # The convention is to use object's methods to navigate # throughout the elements. # Example on how to navigate in an Array's elements array = [ 1, 2, 3, 4, 5 ] array.each do element puts element*10 end

36 Sintaxe da linguagem de programação Ruby (1) Leitura/escrita em arquivo # Read from file contents = File.open("path/to/file", "r").read # Write to file contents = "this is the content to be written" f = File.open("path/to/file", "w") f.write(contents) f.close

37 Instalação de bibliotecas e dependências (1) RubyGems RubyGems é o serviço de hospedagem de gems (bibliotecas) da comunidade Ruby. https://rubygems.org/

38 Instalação de bibliotecas e dependências (2) DEMO RubyGems gem install rails (exemplo de como instalar a gem Rails) https://rubygems.org/

39 Exemplo de um programa que calcula o fibonacci de um número DEMO fibonacci.rb # fibonacci: def fibonacci(n) return n if [0, 1].include? n fibonacci(n - 1) + fibonacci(n - 2) end # Example on how to use: # fibonacci(6) # 8

40 Bibliografia: referência para esta aula Programming Ruby Dave Thomas Primeira edição gratuita:

Ruby. Conceitos básicos. Prof. Ms. Leonardo Botega. Diego Gabriel Pereira

Ruby. Conceitos básicos. Prof. Ms. Leonardo Botega. Diego Gabriel Pereira Ruby Conceitos básicos Prof. Ms. Leonardo Botega Diego Gabriel Pereira Quem somos nós Leonardo Botega Bacharel em Ciência da Computação UNIVEM Mestre em Ciência da Computação UFSCar Doutorando em Ciência

Leia mais

Ruby. Simplicidade e produtividade

Ruby. Simplicidade e produtividade Ruby Simplicidade e produtividade Ruby é... Uma linguagem de tipagem dinâmica e forte, com gerenciamento de memória automático, open source com foco na simplicidade e na produtividade. Tem uma sintaxe

Leia mais

Alunos. Hudson Martins da Silva Laércio Pedro Hoppe

Alunos. Hudson Martins da Silva Laércio Pedro Hoppe Alunos Hudson Martins da Silva Laércio Pedro Hoppe Desenvolvida no Japão em 1995, por Yukihiro "Matz" Matsumoto. Linguagem de script. Mais poderosa do que Perl, e mais orientada a objetos do que Python.

Leia mais

Ruby e Ruby on Rails

Ruby e Ruby on Rails Ruby e Ruby on Rails Universidade Federal de São Carlos Anderson Kenji Mise kenji@vardump.com Ruby? linguagem de programação orientada a objetos (tudo é objeto) Ruby on Rails? RoR é um framework para desenvolvimento

Leia mais

Começando com Ruby on Rails @gibsongabriel

Começando com Ruby on Rails @gibsongabriel Começando com Ruby on Rails @gibsongabriel Yukiriho 'Matz' Matsumoto http://ruby-lang.org/pt/ Ruby é uma linguagem de programação interpretada, com tipagem forte e dinâmica, que tem como foco a simplicidade

Leia mais

História. Nasceu em 1993, numa discussão entre Yuhikiro Matsumoto e um colega.

História. Nasceu em 1993, numa discussão entre Yuhikiro Matsumoto e um colega. 1 1. Overview 2 História Nasceu em 1993, numa discussão entre Yuhikiro Matsumoto e um colega. Matz procurava por uma linguagem de script orientada a objetos. A primeira versão estável de Ruby (1.2) foi

Leia mais

Bruno Jurkovski Lucas Fialho Zawacki. Site do curso: www.inf.ufrgs.br/pet/cursos/ruby

Bruno Jurkovski Lucas Fialho Zawacki. Site do curso: www.inf.ufrgs.br/pet/cursos/ruby Bruno Jurkovski Lucas Fialho Zawacki Site do curso: www.inf.ufrgs.br/pet/cursos/ruby Por que Ruby? Sintaxe limpa e intuitiva: Por que Ruby? Fortemente orientada à objetos Note que não temos os tipos primitivos,

Leia mais

Fundamentos de Programação II. Introdução à linguagem de programação C++

Fundamentos de Programação II. Introdução à linguagem de programação C++ Fundamentos de Programação II Introdução à linguagem de programação C++ Prof. Rafael Henrique D. Zottesso Material cedido por Prof. Msc. Everton Fernando Baro Agenda IDE HelloWorld Variáveis Operadores

Leia mais

Instituto Federal do Sertão-PE. Curso de PHP. Professor: Felipe Correia

Instituto Federal do Sertão-PE. Curso de PHP. Professor: Felipe Correia Instituto Federal do Sertão-PE Curso de PHP Professor: Felipe Correia Conteúdo Parte I Parte II Introdução Funções de strings Instalação Constantes Sintaxe Operadores Variáveis if else elseif Echo/Print

Leia mais

Python. Introdução à Programação SI1 - BSI

Python. Introdução à Programação SI1 - BSI Python Introdução à Programação SI1 - BSI Conteúdo História Instalação Apresentação da Interface Comandos Básicos Exercícios 07/06/2013 2 História Criada em 1989 pelo holandês Guido van Rossum no Centrum

Leia mais

Linguagens de programação

Linguagens de programação Prof. André Backes Linguagens de programação Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador deve ser descrito em termos de 1 s ou 0 s

Leia mais

Programação WEB. Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida. Aula III Introdução PHP

Programação WEB. Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida. Aula III Introdução PHP Programação WEB Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida Aula III Introdução PHP Introdução PHP PHP=Hypertext Pre-Processor Linguagem de script open

Leia mais

Oracle PL/SQL Overview

Oracle PL/SQL Overview Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade

Leia mais

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 1 Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Linguagem a ser Utilizada? Nossa disciplina é de Algoritmos e Estrutura de Dados, e não de linguagem

Leia mais

Quem sou eu? Daniel Coelho de Andrade. Graduando em Engenharia de Computação - UEFS. Membro da Empresa Júnior de Engenharia de Computação da UEFS

Quem sou eu? Daniel Coelho de Andrade. Graduando em Engenharia de Computação - UEFS. Membro da Empresa Júnior de Engenharia de Computação da UEFS Quem sou eu? Daniel Coelho de Andrade Graduando em Engenharia de Computação - UEFS Membro da Empresa Júnior de Engenharia de Computação da UEFS Ruby? Linguagem dinâmica Foco na simplicidade e produtividade

Leia mais

Linguagem de Programação. Helder Lucas S. Silas Valdemar

Linguagem de Programação. Helder Lucas S. Silas Valdemar Linguagem de Programação Helder Lucas S. Silas Valdemar Perl, Smalltalk, Eiffel, Ada e Lisp. Mais poderosa do que Perl, e mais orientada a objetos do que Python. Yukihiro Matsumoto Matz Coral ou Ruby?

Leia mais

Tudo o que Você Sempre Quis Saber Sobre Linguagens de Programação* (*Mas Tinha Medo de Perguntar) Diego Padilha Rubert FACOM

Tudo o que Você Sempre Quis Saber Sobre Linguagens de Programação* (*Mas Tinha Medo de Perguntar) Diego Padilha Rubert FACOM Tudo o que Você Sempre Quis Saber Sobre Linguagens de Programação* (*Mas Tinha Medo de Perguntar) Diego Padilha Rubert FACOM Por quê? O aprendizado em Algoritmos e Programação visa lógica de programação

Leia mais

UFRPE Prof. Gustavo Callou gcallou@gmail.com

UFRPE Prof. Gustavo Callou gcallou@gmail.com UFRPE Prof. Gustavo Callou gcallou@gmail.com 1 Algoritmos Representação Exercícios Linguagens de Programação Compilador Interpretador Ambiente de Desenvolvimento Python Característica Para que serve Onde

Leia mais

Minicurso de Python Aula 1. Raphael Lupchinski Marcelo Millani

Minicurso de Python Aula 1. Raphael Lupchinski Marcelo Millani Minicurso de Python Aula 1 Raphael Lupchinski Marcelo Millani Introdução Python é uma linguagem de programação poderosa e fácil de aprender Possui estruturas de dados eficientes e de alto nível, além de

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 2 (07/08/15) Introdução ao Python História Características Estrutura dos código-fonte Primeiros elementos

Leia mais

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 CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs

Leia mais

Curso de Programação Web com PHP Aula 01

Curso de Programação Web com PHP Aula 01 Curso de Programação Web com PHP Aula 01 Igor Rafael igor at dcc.ufmg.br 4 de fevereiro de 2013 Pré-requisitos Ambiente PHP Apache+PHP+MySQL - XAMPP Versões: Linux, OS X, Windows Instruções de instalação

Leia mais

5/10/10. Implementação. Building web Apps. Server vs. client side. How to create dynamic contents?" Client side" Server side"

5/10/10. Implementação. Building web Apps. Server vs. client side. How to create dynamic contents? Client side Server side 5/10/10 Implementação Mestrado em Informática Universidade do Minho! 6! Building web Apps How to create dynamic contents?" Client side" Code runs on the client (browser)" Code runs on a virtual machine

Leia mais

PHP. Hypertext Pre-Processor

PHP. Hypertext Pre-Processor PHP Hypertext Pre-Processor O que é o PHP? Uma linguagem de scripting é uma linguagem cujo código não tem de ser compilado para ser executado! O código escrito é interpretado em tempo de execução para

Leia mais

2 Orientação a objetos na prática

2 Orientação a objetos na prática 2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos

Leia mais

Panorâmica geral sobre PHP. PHP é uma linguagem que permite fazer. um ficheiro em PHP contem código PHP misturado com HTML.

Panorâmica geral sobre PHP. PHP é uma linguagem que permite fazer. um ficheiro em PHP contem código PHP misturado com HTML. Panorâmica geral sobre PHP PHP é uma linguagem que permite fazer páginas dinâmicas. um ficheiro em PHP contem código PHP misturado com HTML. em vez de PHP podíamos utilizar outra linguagem qualquer desde

Leia mais

Allisson Barros 12/0055619 Daniel Luz 13/0007714 Leandro Bergmann 14/0149007 Luiz Fernando Vieira 13/0013757 Uriel Silva 12/0137232

Allisson Barros 12/0055619 Daniel Luz 13/0007714 Leandro Bergmann 14/0149007 Luiz Fernando Vieira 13/0013757 Uriel Silva 12/0137232 Allisson Barros 12/0055619 Daniel Luz 13/0007714 Leandro Bergmann 14/0149007 Luiz Fernando Vieira 13/0013757 Uriel Silva 12/0137232 Início da Implementação Python 0.9.0 alt.sources Python 1.0 Python 2.0

Leia mais

Para testar seu primeiro código utilizando PHP, abra um editor de texto (bloco de notas no Windows) e digite o código abaixo:

Para testar seu primeiro código utilizando PHP, abra um editor de texto (bloco de notas no Windows) e digite o código abaixo: Disciplina: Tópicos Especiais em TI PHP Este material foi produzido com base nos livros e documentos citados abaixo, que possuem direitos autorais sobre o conteúdo. Favor adquiri-los para dar continuidade

Leia mais

2 echo "PHP e outros.";

2 echo PHP e outros.; PHP (Hypertext Preprocessor) Antes de qualquer coisa, precisamos entender o que é o PHP: O PHP(Hypertext Preprocessor) é uma linguagem interpretada gratuita, usada originalmente apenas para o desenvolvimento

Leia mais

Slides_Java_1 !"$ % & $ ' ' Output: Run java. Compile javac. Name of program. Must be the same as name of file. Java source code.

Slides_Java_1 !$ % & $ ' ' Output: Run java. Compile javac. Name of program. Must be the same as name of file. Java source code. Slides_Java_1!"#$!" $ % & $ Sistemas Informáticos I, 2005/2006 ( Java source code Compile javac Java bytecode Run java Output:!"#) %& Name of program. Must be the same as name of file.!"#$!"$ % & $ Where

Leia mais

Arduino e Python. Do It Yourself! Luís Bruno Jefferson Jarden Francisco Marcelino

Arduino e Python. Do It Yourself! Luís Bruno Jefferson Jarden Francisco Marcelino Arduino e Python Do It Yourself! Luís Bruno Jefferson Jarden Francisco Marcelino Arduino e Python Faça Você Mesmo! Quem Somos Jefferson Jardem Luís Bruno jeffersonjardem@gmail.com luisbrunu@gmail.com Francisco

Leia mais

Técnicas de Programação II

Técnicas de Programação II Técnicas de Programação II Aula 01 Introdução à Linguagem Java Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na

Leia mais

Ambientes Visuais. Ambientes Visuais

Ambientes Visuais. Ambientes Visuais Ambientes Visuais Inicialmente, apenas especialistas utilizavam os computadores, sendo que os primeiros desenvolvidos ocupavam grandes áreas e tinham um poder de processamento reduzido. Porém, a contínua

Leia mais

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]

Leia mais

FBV - Linguagem de Programação II. Um pouco sobre Java

FBV - Linguagem de Programação II. Um pouco sobre Java FBV - Linguagem de Programação II Um pouco sobre Java História 1992: um grupo de engenheiros da Sun Microsystems desenvolve uma linguagem para pequenos dispositivos, batizada de Oak Desenvolvida com base

Leia mais

Estruturas de controle no nível de sentença

Estruturas de controle no nível de sentença Estruturas de controle no nível de sentença Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional.

Leia mais

Aprendendo Python na Prática. Dante Moreira Zaupa Mestrando em Computação Aplicada Bolsista de Pesquisa

Aprendendo Python na Prática. Dante Moreira Zaupa Mestrando em Computação Aplicada Bolsista de Pesquisa Aprendendo Python na Prática Dante Moreira Zaupa Mestrando em Computação Aplicada Bolsista de Pesquisa Introdução ou Não pensem besteira Por que usar Python? produtivo Por que usar Python? produtivo portável

Leia mais

A Linguagem Python: Uma visão geral. Prof. Alberto Costa Neto Programação em Python

A Linguagem Python: Uma visão geral. Prof. Alberto Costa Neto Programação em Python A Linguagem Python: Uma visão geral Prof. Alberto Costa Neto Programação em Python Python é a linguagem do interpretador Python e daqueles que são capazes de conversar com ele. Um indivíduo que fala Python

Leia mais

e à Linguagem de Programação Python

e à Linguagem de Programação Python Introdução a Algoritmos, Computação Algébrica e à Linguagem de Programação Python Curso de Números Inteiros e Criptografia Prof. Luis Menasché Schechter Departamento de Ciência da Computação UFRJ Agosto

Leia mais

Programando em C++ Histórico da Linguagem C

Programando em C++ Histórico da Linguagem C Programando em C++ Joaquim Quinteiro Uchôa joukim@comp.ufla.br DCC-UFLA, 2002 Programando em C++ p.1/38 Histórico da Linguagem C Linguagem C: 1972 - Laboratório Bells, por Dennis Ritchie, a partir da linguagem

Leia mais

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora OOP - Java Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora 1 Sumário Java Aviso! História do Java Programação Orientada à Objetos Os quatro pilares da OOP Abstração

Leia mais

Programação Web com PHP. Prof. Wylliams Barbosa Santos wylliamss@gmail.com Optativa IV Projetos de Sistemas Web

Programação Web com PHP. Prof. Wylliams Barbosa Santos wylliamss@gmail.com Optativa IV Projetos de Sistemas Web Programação Web com PHP Prof. Wylliams Barbosa Santos wylliamss@gmail.com Optativa IV Projetos de Sistemas Web Agenda O que é PHP? O que da pra fazer com PHP? Como a web funciona? Onde, quando e por que

Leia mais

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro ! Transact-SQL (T-SQL) Extensão ao SQL Permite controlo do fluxo de execução Permite comandos DDL (contrariamente ao PLSQL) T-SQL combina: poder de manipulação de dados

Leia mais

Programação para Dispositivos Móveis Aula 1. Prof. William Yamamoto

Programação para Dispositivos Móveis Aula 1. Prof. William Yamamoto Programação para Dispositivos Móveis Aula 1 Prof. William Yamamoto Visual Studio É uma ferramenta de desenvolvimento completa que atende praticamente a todas as plataformas de desenvolvimento, como: Web

Leia mais

ENG1000 Introdução à Engenharia

ENG1000 Introdução à Engenharia ENG1000 Introdução à Engenharia Aula 04 Introdução a Linguagem Lua Edirlei Soares de Lima Linguagem Lua Lua é uma linguagem de programação projetada para dar suporte à programação

Leia mais

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Resumo da Introdução de Prática de Programação com C. A Linguagem C Resumo da Introdução de Prática de Programação com C A Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

Organização de Computadores Software

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 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Objetivos: Entender

Leia mais

Python: Comandos Básicos. Claudio Esperança

Python: Comandos Básicos. Claudio Esperança Python: Comandos Básicos Claudio Esperança Primeiros passos em programação Até agora só vimos como computar algumas expressões simples Expressões são escritas e computadas imediatamente Variáveis podem

Leia mais

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br Java - Introdução Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Agenda O que é Java? Sun / Oracle. IDE - NetBeans. Linguagem Java; Maquina Virtual; Atividade Prática. Identificando Elementos

Leia mais

Ruby on Rails. Aprendizado evolutivo do Ruby até o desenvolvimento de aplicações em Rails

Ruby on Rails. Aprendizado evolutivo do Ruby até o desenvolvimento de aplicações em Rails on Rails Aprendizado evolutivo do até o desenvolvimento de aplicações em Rails on Rails Aprendizado evolutivo do até o desenvolvimento de aplicações em Rails http://www.hut8.com.br/minicursos Roteiro Primeiro

Leia mais

Groovy & Grails. Arian Pasquali. quarta-feira, 12 de outubro de 11

Groovy & Grails. Arian Pasquali. quarta-feira, 12 de outubro de 11 Groovy & Grails Arian Pasquali Arian Pasquali 24 anos eu Formado em Sistemas de Informação Java, Objective-C, Flex, Groovy SCJP, SCJA, ACE 6 anos de Java Orientação a Objetos Plataforma Multi-plataforma

Leia mais

Mini Curso DESCOMPLICANDO C# Professor Hélio

Mini Curso DESCOMPLICANDO C# Professor Hélio Mini Curso DESCOMPLICANDO C# Professor Hélio Requisitos Para o Curso Não é necessário conhecimentos prévios em programação Matemática Básica Nível básico de operador Bom senso Objetivos do Curso Esse curso

Leia mais

CURSO DE PROGRAMAÇÃO EM JAVA

CURSO DE PROGRAMAÇÃO EM JAVA CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro

Leia mais

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas O que é PHP? Acrônimo de PHP: Hipertext Language PostProcessor Inicialmente escrita para o desenvolvimento de aplicações Web Facilidade para iniciantes e recursos poderosos para programadores profissionais

Leia mais

Accessing the contents of the Moodle Acessando o conteúdo do Moodle

Accessing the contents of the Moodle Acessando o conteúdo do Moodle Accessing the contents of the Moodle Acessando o conteúdo do Moodle So that all the available files in the Moodle can be opened without problems, we recommend some software that will have to be installed

Leia mais

Programação Web Aula 11 - PHP

Programação Web Aula 11 - PHP Programação Web Aula 11 - PHP Departamento de Informática UFPR 4 de Maio de 2015 1 Origens 2 Exemplo Exemplo - arquivo PHP Exemplo: arquivo cliente Características Sintáticas Variáveis Tipos Expressões

Leia mais

Especialização em Engenharia e Administração de Banco de Dados SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I

Especialização em Engenharia e Administração de Banco de Dados SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I Especialização em Engenharia e Administração de Banco de Dados SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I José Alberto F. Rodrigues Filho beto@beto.pro.br Firebird É a primeira geração, descendente do

Leia mais

Introdução à estrutura de dados com Python

Introdução à estrutura de dados com Python Introdução à estrutura de dados com Python CLEIBSON APARECIDO DE ALMEIDA UFPR Universidade Federal do Paraná PPGMNE Programa de Pós Graduação em Métodos Numéricos em Engenharia Centro Politécnico CEP 81.531-980

Leia mais

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream> Aula 1 C é uma linguagem de programação estruturada desenvolvida por Dennis Ritchie nos laboratórios Bell entre 1969 e 1972; Algumas características: É case-sensitive, ou seja, o compilador difere letras

Leia mais

Desenvolvimento de Aplicações Interativas para o Sistema Brasileiro de TV Digital (SBTVD)

Desenvolvimento de Aplicações Interativas para o Sistema Brasileiro de TV Digital (SBTVD) Lua Pós graduação em Telemática - Desenvolvimento de Aplicações Interativas para o Sistema Brasileiro de TV Digital (SBTVD) Manoel Campos da Silva Filho Mestre em Engenharia Elétrica / UnB http://manoelcampos.com

Leia mais

Treinamento Python/Zope/Plone. terça-feira, 4 de agosto de 15

Treinamento Python/Zope/Plone. terça-feira, 4 de agosto de 15 Treinamento Python/Zope/Plone Apresentação Luiz Gustavo da Fonseca Ferreira Formação e experiência: Ciência da Computação (UFMG) Mestrado em Ciência da Informação (UFMG) Doutorando em Ciência da Informação

Leia mais

Ruby Uma Linguagem Atraente

Ruby Uma Linguagem Atraente Ruby Uma Linguagem Atraente Marcello Moura Diego Roriz Centro de Recursos Computacionais Katon Agência Digital Universidade Federal de Goiás (UFG) Avenida C-104, Quadra 317, Lote 02, Loja 04 Caixa Postal

Leia mais

Treinamento em PHP. Aula 1. Ari Stopassola Junior stopassola@acimainteractive.com

Treinamento em PHP. Aula 1. Ari Stopassola Junior stopassola@acimainteractive.com Treinamento em PHP Aula 1 Ari Stopassola Junior stopassola@acimainteractive.com Introdução PHP Hypertext Preprocessor Nome original era Personal Home Page Tools Criada por Rasmus Lerdorf e atualmente mantida

Leia mais

Easy Linux! FUNAMBOL FOR IPBRICK MANUAL. IPortalMais: a «brainware» company www.iportalmais.pt. Manual

Easy Linux! FUNAMBOL FOR IPBRICK MANUAL. IPortalMais: a «brainware» company www.iportalmais.pt. Manual IPortalMais: a «brainware» company FUNAMBOL FOR IPBRICK MANUAL Easy Linux! Title: Subject: Client: Reference: Funambol Client for Mozilla Thunderbird Doc.: Jose Lopes Author: N/Ref.: Date: 2009-04-17 Rev.:

Leia mais

Introdução sobre Scilab

Introduçã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 mais

Linguagem de Programação III Aula 2 - Apresentação da Disciplina

Linguagem de Programação III Aula 2 - Apresentação da Disciplina Linguagem de Programação III Aula 2 - Apresentação da Disciplina Prof. Moser Fagundes Curso Técnico em Informática (Modalidade Integrada) Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas

Leia mais

Plugins TerraView. Última revisão: 12/12/32006 Versão TerraLib: 3.1.4

Plugins TerraView. Última revisão: 12/12/32006 Versão TerraLib: 3.1.4 Plugins TerraView Última revisão: 12/12/32006 Versão TerraLib: 3.1.4 Requisitos Código completo da TerraLib na estrutura de diretórios sugerida no site da TerraLib 1. Código completo do TerraView na estrutura

Leia mais

Programação de Computadores. Professor Ilaim Costa Junior ilaim@ic.uff.br Www.ic.uff.br/~ilaim

Programação de Computadores. Professor Ilaim Costa Junior ilaim@ic.uff.br Www.ic.uff.br/~ilaim Programação de Computadores Professor Ilaim Costa Junior ilaim@ic.uff.br Www.ic.uff.br/~ilaim Roteiro da Aula de Hoje Introdução ao FORTRAN (Parte I) Organização de programas Tipos de dados Variáveis Programação

Leia mais

Programando em C# Orientado a Objetos. By: Maromo

Programando em C# Orientado a Objetos. By: Maromo Programando em C# Orientado a Objetos By: Maromo Agenda Módulo 1 Plataforma.Net. Linguagem de Programação C#. Tipos primitivos, comandos de controle. Exercícios de Fixação. Introdução O modelo de programação

Leia mais

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem. 1 - O que é JAVASCRIPT? É uma linguagem de script orientada a objetos, usada para aumentar a interatividade de páginas Web. O JavaScript foi introduzido pela Netscape em seu navegador 2.0 e posteriormente

Leia mais

Linguagem de Programação. Introdução ao PHP. Prof Mauricio Lederer Ciência da Computação - UNIANDRADE 1

Linguagem de Programação. Introdução ao PHP. Prof Mauricio Lederer Ciência da Computação - UNIANDRADE 1 Linguagem de Programação Introdução ao PHP 1 O que é PHP? - significa: Hypertext Preprocessor - uma das linguagens mais utilizadas para web - transforma sites estáticos em dinâmicos - atualização de páginas

Leia mais

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP AGRUPAMENTO DE ESCOLAS DE SANTA COMBA DÃO CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGRAMAÇÃO DE SISTEMAS INFORMÁTICOS 2012-2015 PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO MÓDULO 2 Mecanismos de Controlo de

Leia mais

SQL Procedural. Josino Rodrigues Neto josinon@gmail.com

SQL Procedural. Josino Rodrigues Neto josinon@gmail.com SQL Procedural Josino Rodrigues Neto josinon@gmail.com SQL Procedural Agregada em SQL-92 As ferramentas têm nomes para suas linguagens SQL procedurais/embutidas Oracle : PL/SQL Postgres PL/Pgsql SQL Server

Leia mais

MC-102 Aula 01. Instituto de Computação Unicamp

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

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 3: Métodos LEEC@IST Java 1/45 Métodos (1) Sintaxe Qualif Tipo Ident ( [ TipoP IdentP [, TipoP IdentP]* ] ) { [ Variável_local Instrução ]* Qualif: qualificador (visibilidade,

Leia mais

IIH Introdução à Informática e Hardware

IIH Introdução à Informática e Hardware INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SÃO PAULO - CAMPUS VOTUPORANGA Técnico em Manutenção e Suporte em Informática IIH Introdução à Informática e Hardware Aula: Linguagens de Programação

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA PROGRAMA DE DISCIPLINA Disciplina: INTRODUÇÃO À PROGRAMAÇÃO Carga horária total: 60 h Carga horária teórica: 30 h Carga horária prática: 30 h Código da Disciplina: CCMP0041 Período de oferta: 2015.2 Turma:

Leia mais

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL BRUNO GUIMARÃES SOUSA LUÍS BERNARDO SOUZA BRAGA TIMÓTEO ARAÚJO OLIVEIRA DE

Leia mais

Aula 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/ 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 mais

Organização de programas em Python. Vanessa Braganholo vanessa@ic.uff.br

Organização de programas em Python. Vanessa Braganholo vanessa@ic.uff.br Organização de programas em Python Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Python! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem

Leia mais

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura UFPI CCN DIE Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura O projeto Desenvolver um compilador de um subconjunto básico da linguagem PORTUGOL.

Leia mais

Introdução a ActionScript 3.0

Introdução a ActionScript 3.0 Introdução a ActionScript 3.0 Profa. Flávia Pereira de Carvalho Fontes: Adobe Flash CS4 Design para Web Processor Alfamídia Classroom in a Book Guia de Treinamento Oficial da Adobe Crie, Anime e Publique

Leia mais

Algoritmos e programação

Algoritmos e programação Algoritmos e programação Introdução à Programação Prof. Bonadia dos Santos Conceitos básicos Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho. Dentre

Leia mais

Introdução à Programação

Introdução à Programação Aula Teórica 5: ciclos e funções Getchar e putchar Escrever e ler caracteres A função getchar da biblioteca stdio.h permite de receber exatamente um (1) carácter da o "teclado"ou stdin Definição: int getchar(void)

Leia mais

Telefonia IP MOT. Prática 1

Telefonia IP MOT. Prática 1 Prática 1 Instalando o proxy SIP Kamailio, configurando os usuários e interligando proxies. Objetivo: Criar um ambiente VoIP básico utilizando o proxy SIP Kamailio que terá suas informações de usuário

Leia mais

Conteúdo. Linguagem Estática x Dinâmica O que é PHP? Configurando o Ambiente do PHP Sintaxe

Conteúdo. Linguagem Estática x Dinâmica O que é PHP? Configurando o Ambiente do PHP Sintaxe Unidade IV Introdução à Linguagem PHP Parte 1 Professor Fabiano de Paula Soldati fpsoldati@yahoo.com.br http://br.groups.yahoo.com/group/professorsoldati/ Conteúdo Linguagem Estática x Dinâmica O que é

Leia mais

Fundament n os s da platafo f rm r a. NE N T André Menegassi

Fundament n os s da platafo f rm r a. NE N T André Menegassi Fundamentos da plataforma.net André Menegassi O que é o.net Framework?.NET é uma plataforma de software para desenvolvimento de aplicações que conecta informações, sistemas, pessoas e dispositivos através

Leia mais

Representação de Algoritmos - Linguagens de Programação

Representaçã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 mais

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva Introdução à Linguagem Java Departamento de Informática Prof. Anselmo C. de Paiva Breve Histórico Sun Microsystems, 90/91: projeto de uma linguagem de programação pequena que pudesse ser usada em dispositivos

Leia mais

Computação e Programação

Computação e Programação Computação e Programação 8ª Aula de Problemas Cell arrays Estruturas Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Problema 1 Escreva uma função que recebe um cell array de strings e

Leia mais

Tutorial Ruby versão 0.3 djalmaoliveira@gmail.com SOBRE O TUTORIAL

Tutorial Ruby versão 0.3 djalmaoliveira@gmail.com SOBRE O TUTORIAL SOBRE O TUTORIAL Este tutorial cobre alguns aspectos da linguagem Ruby, mostra de forma simples algumas de suas características através de exemplos e curtas descrições de conceitos, não se propondo ser

Leia mais

Introdução ao FORTRAN (Parte I)

Introdução ao FORTRAN (Parte I) Programação de Computadores III Aula 7 Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2011.1/tcc-03.063 Roteiro da Aula

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores LAMP Gustavo Reis gustavo.reis@ifsudestemg.edu.br Acrônico para a combinação de Linux, Apache, MySQL e PHP ou Perl ou Python; Recentemente a letra P começou a fazer referência a Perl

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Introdução ao PHP. Prof. Késsia Marchi

Introdução ao PHP. Prof. Késsia Marchi Introdução ao PHP Prof. Késsia Marchi PHP Originalmente PHP era um assíncrono para Personal Home Page. De acordo com convenções para atribuições de nomes recursivas do GNU foi alterado para PHP Hypertext

Leia mais

Introdução à linguagem Python. Slides extras

Introdução à linguagem Python. Slides extras Introdução à linguagem Python Slides extras 1 Linguagem de uso geral Internet: YouTube, Globo.com, Bitly, Mozilla... Computação gráfica: Disney, ILM, AutoDesk... Desktop: Dropbox, BitTorrent, OpenOffice...

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA PROGRAMA DE DISCIPLINA Disciplina: Introdução à Programação Carga horária total: 60 Carga horária teórica: 0 Carga horária prática: 60 Código da Disciplina: CCMP0041 Período de oferta: 2010.2 Turma: CA

Leia mais

Bruno Jurkovski Lucas Fialho Zawacki. Site do curso: www.inf.ufrgs.br/pet/cursos/ruby

Bruno Jurkovski Lucas Fialho Zawacki. Site do curso: www.inf.ufrgs.br/pet/cursos/ruby Bruno Jurkovski Lucas Fialho Zawacki Site do curso: www.inf.ufrgs.br/pet/cursos/ruby Recapitulando... Escopos Constantes Tipagem Métodos Input Estruturas de Controle e Repetição Classes Nativas Blocos

Leia mais