conceitos iniciais de linguagens de programação
Post on 24-May-2015
2.724 Views
Preview:
TRANSCRIPT
Tecnologia em Sistemas para Internet - IFMS
Aula 01 - Conceitos Iniciais de Linguagens de Programação
Linguagem de Programação IProf.º Msc. Sidney Roberto de Sousa
Tec. em Sistemas para Internet - IFMS 2
Sumário
● Linguagem de programação? O que é isto?● História● Níveis de linguagens de programação● Tipos de linguagens de programação● Linguagens de programação quanto a
tipagem
Tec. em Sistemas para Internet - IFMS 3
Linguagem de programação? O que é isto?
“linguagem artificial desenvolvida para comunicar instruções para uma
máquina”
Tec. em Sistemas para Internet - IFMS 4
Linguagem de programação? Para o que serve?
● Criar programas que controlam o comportamento de uma máquina
● Expressar algoritmos
Tec. em Sistemas para Internet - IFMS 5
História: De 1800 a 1900
Jacguard Loom
Pianola
Tec. em Sistemas para Internet - IFMS 6
História: De 1800 a 1900
Ada Lovelace e a máquina anaĺitica
Tec. em Sistemas para Internet - IFMS 7
História: De 1800 a 1900
Cartões perfurados (utilizados até hoje!)
Tec. em Sistemas para Internet - IFMS 8
História: Primeira metade do século 20
ENIAC: Interruptores e cabos
Tec. em Sistemas para Internet - IFMS 9
História: Anos 50 e 60
● Assembly – meados dos anos 50: várias versões, criadas por pessoas e organizações diversas
● FORTRAN (FORmula TRANslator) - 1955: inventada por John Backus et al
● LISP (LISt Processor) - 1958: inventada por John McCarthy et al
● COBOL (COmmon Business Oriented Language) - 1959: criada pelo Short Range Committee
● BASIC (Beginner's All-purpose Symbolic Instruction Code) - 1964: inventada por John Kermeny et al
Tec. em Sistemas para Internet - IFMS 10
História: Anos 70
● C - 1973: criada por Dennis Ritchie● Smalltalk - 1972: Criada pela Xerox PARC ● Prolog - 1972: criada por Alan Comerauer et al● Pascal - 1970: criada por Niklaus Wirth● SQL (*) - 1974: criada por Donald Chamberlin
e Raymond Boyce
Tec. em Sistemas para Internet - IFMS 11
História: Anos 70
● C - 1973: criada por Dennis Ritchie● Smalltalk - 1972: Criada pela Xerox PARC ● Prolog - 1972: criada por Alan Comerauer et al● Pascal - 1970: criada por Niklaus Wirth● SQL (*) - 1974: criada por Donald Chamberlin
e Raymond Boyce
Tec. em Sistemas para Internet - IFMS 12
Dennis Ritchie (1941-2011)
Tec. em Sistemas para Internet - IFMS 13
História: Anos 80
● C++ - 1983: criada por Bjarne Stroustrup● Objective-C - 1983: criada por Brad Cox e
Tom Love● MATLAB (MATrix LABoratory) - fim dos anos
70: criada por Cleve Moler● Perl - 1987: criada por Larry Wall
Tec. em Sistemas para Internet - IFMS 14
História: Anos 90
● Python - 1991: Criada por Guido Van Rossum
● Visual Basic - 1991: criada pela Microsoft
● HTML (*) - 1991: criada por Tim Berners-Lee
● Ruby - 1995: criada por Yoshiro Matsumoto (o Matz!)
● Lua - 1993: criada por Roberto Ierusalimschy et al (100% brasileira!)
● Java - 1995: criada por James Gosling
● Delphi - 1995: criada pela Borland
● JavaScript - 1995: criada por Brendan Eich
● PHP - 1995: criada por Rasmus Lerdorf
Tec. em Sistemas para Internet - IFMS 15
História: Anos 90
● Python - 1991: Criada por Guido Van Rossum
● Visual Basic - 1991: criada pela Microsoft
● HTML (*) - 1991: criada por Tim Berners-Lee
● Ruby - 1995: criada por Yoshiro Matsumoto (o Matz!)
● Lua - 1993: criada por Roberto Ierusalimschy et al (100% brasileira!)
● Java - 1995: criada por James Gosling
● Delphi - 1995: criada pela Borland
● JavaScript - 1995: criada por Brendan Eich
● PHP - 1995: criada por Rasmus Lerdorf
Tec. em Sistemas para Internet - IFMS 16
Tim Berners-Lee: O WWW Man!
Tec. em Sistemas para Internet - IFMS 17
História: De 2000 até os dias atuais
● ActionScript - 2000: criada pela Macromedia, atual Adobe Systems
● C# (C Sharp) - 2000: criada pela Microsoft● VB.NET (Visual Basic .NET) - 2001: criada
pela Microsoft● Groovy - 2003: criada por James Strachan● Scala - 2003: criada por Martin Odersky
Tec. em Sistemas para Internet - IFMS 18
História: De 2000 até os dias atuais
● ActionScript - 2000: criada pela Macromedia, atual Adobe Systems
● C# (C Sharp) - 2000: criada pela Microsoft● VB.NET (Visual Basic .NET) - 2001: criada
pela Microsoft● Groovy - 2003: criada por James Strachan● Scala - 2003: criada por Martin Odersky
Quem vai substituir a linguagem Java?
Tec. em Sistemas para Internet - IFMS 19
Níveis de Linguagens de Programação
● Linguagens de programação costumam ser classificadas de várias formas
● Uma forma mais simples de classificação é a por níveis. Esta classificação pode conter os seguintes níveis:– Linguagens de baixo nível
– Linguagens de alto nível
– Linguagens de altíssimo nível
Tec. em Sistemas para Internet - IFMS 20
Linguagens de baixo nível
● Linguagens mais próximas à linguagem de máquina (bits zero e um)
● Exemplos:– Assembly
– C (depende do ponto de vista...)
Tec. em Sistemas para Internet - IFMS 21
Linguagens de alto nível
● Possuem um alto nível de abstração dos detalhes da máquina
● Pode utiliza elementos de linguagem natural● Exemplos:
– Java
– Python
– Ruby
– Scala
Tec. em Sistemas para Internet - IFMS 22
Linguagens de altíssimo nível
● Possuem um nível muito alto de abstração, sendo utilizadas a priori como uma ferramenta de produtividade ao programador
● Costumam ser limitadas a necessidades específicas
● Exemplos:– mIRC scripting language
– LiveCode
– Magic xpi
– Maker
Tec. em Sistemas para Internet - IFMS 23
Tipos de Linguagens de Programação
Linguagens de programação também podem ser divididas entre os seguintes tipos:
● Linguagens de script● Linguagens interpretadas● Linguagens compiladas
Tec. em Sistemas para Internet - IFMS 24
Linguagens de Script
● São executadas do interior de programas ou de outras linguagens de programação, não ficando restritas a estes ambientes
● Todas as linguagens de script são linguagens interpretadas; porém, a recíproca não é verdadeira
● Exemplos:
– JavaScript– Lua– PHP– Python
Tec. em Sistemas para Internet - IFMS 25
Linguagens Interpretadas
● Seu código fonte é executado por interpretadores, para depois ser executado pelo sistema operacional ou processador
● Em algumas destas linguagens, o código criado é traduzido para o que é chamado de bytecodes, o qual por sua vez é interpretado numa máquina virtual
● Exemplos:
– Java– Python– C#– PHP– VBScript
Tec. em Sistemas para Internet - IFMS 26
Linguagens Compiladas
● Seu código fonte é traduzido e executado diretamente pelo sistema operacional ou pelo processador
● Este processo de “tradução” é chamado de compilação e é realizado por um programa chamado de compilador
● Exemplos:– C– C++– Objective-C– Pascal
– Delphi– Fortran
Tec. em Sistemas para Internet - IFMS 27
Linguagens de Programação quanto a Tipagens
Além das questões vistas anteriormente, as linguagens de programação também podem ser
classificadas quanto a tipagem de suas variáveis, objetos, funções, métodos, classes,
etc.
Tec. em Sistemas para Internet - IFMS 28
Linguagens fortemente tipadas
Especificam uma ou mais restrições a respeito de como operações envolvendo valores de
diferentes tipos de dados podem ser “misturados”
Tec. em Sistemas para Internet - IFMS 29
Exemplo: Java
Integer numero = 1;
String palavra = “1”;
numero = numero + Integer.parseInt(palavra); //resultado: 2
Tec. em Sistemas para Internet - IFMS 30
Linguagens fracamente tipadas
Permitem conversões de tipos de dados de forma implícita.
Tec. em Sistemas para Internet - IFMS 31
Exemplo: JavaScript
var variavel = 1; //contém o número 1
var outraVariavel = “1”; //contém uma string com o único caractere '0'
variavel = variavel + outraVariavel; //resultado: “11”
Tec. em Sistemas para Internet - IFMS 32
Exemplo: Python
numero = 1
palavra = "0"
numero = numero + int(palavra) #resultado: 1
palavra = palavra + str(numero) #resultado: "01"
lista = [numero, palavra, False, True] #lista contendo valores de vários tipos
Tec. em Sistemas para Internet - IFMS 33
Referências
History of programming languages. Disponível em http://tinyurl.com/48cf4u. Acessado em 25 de março de 2013.
top related