Introdução
Sumários
• Objectivos da cadeira
• História das linguagens de programação
• Classificação das Linguagens de programação
• Aplicação das linguagens de programação
• Noção de compiladores
• Software à usar na cadeira
Universidade Metodista de Angola, Departamento de Engenharias
1
Objectivos da cadeira
• Foco principal
– Aprender a Linguagem C
Universidade Metodista de Angola, Departamento de Engenharias
2
História das Linguagens de programação
Ano
Antes de 1951
1951
Nome da Linguagem
Linguagem de Máquina
(códigos)
Assembly Language
Objectivos,
Conjunto de instruções executada directamente pela CPU do PC
Ultrapassar os inconvenientes da linguagem de máquina
1954
FORTTRAN
Usada para o cálculo científico “FORmula TRANslator”
1958
LISP
Vocacionada à inteligência artificial “LISt Processor”
1959
COBOL
Processamento de registos “Common Business Oriented Linguage”
1964
1970
BASIC
Pascal
1972
C
1978
1980
SQL
C++
Beginner’s All-Prupose Simbolic Instrution Code
Criada por Niklaus Wirth para fins académicos
Criada por Dennis Ritchie e Ken Thompson, para o desenvolvimento de sistemas operativos,
actualmente muito utilizada na indústria electrónica para programação de micro
controladores,
Manipulação de base de dados
Tira vantagens do paradigma orientação por objectos e orientação ao processamento
1988
HTML
HyperText Marckup Language, criada por Tim Berners-Lee
1991
1993
1995
Python
Ruby
Java
Usada para o desenvolvimento de softwares
Usada para o desenvolvimento de softwares
Usada para o desenvolvimento de softwares, aplicativos de telemóveis, Web browsers, etc.
1995
1998
PHP
Visual Basic
Usada para o desenvolvimento de páginas Web
Usada para o desenvolvimento de páginas Web, aplicativos para bancos, etc.
2001
C#
Usada para o desenvolvimento de páginas Web, aplicativos para bancos, etc.
…
…
…
Universidade Metodista de Angola, Departamento de Engenharias
3
Classificação das linguagens de programação
– Quanto a estrutura
• Linguagens estruturadas
– Contêm estruturas de controlo de controlo de execução de instruções, estruturas de
repetição, etc. Exemplo: C, Java, Pascal, Python, etc.
• Linguagens não estruturadas
– Não contêm estruturas que manipulam conjunto de instruções. Exemplo: Linguagem de
Máquina, Linguagem Assembly.
– Quanto ao nível
• Linguagens de baixo nível
– Linguagens baseadas em códigos, Mnemónicas. Exemplo: Linguagem de Máquina,
Linguagem Assembly
• Linguagem de alto nível
– Linguagens que contêm instruções que se assemelham a linguagem humana. Exemplo: C,
C++, Java, Python, Lisp, Pascal, etc.
Universidade Metodista de Angola, Departamento de Engenharias
4
Classificação das linguagens de programação
– Quanto a orientação
• Linguagens orientadas ao objecto
•
Linguagens de programação cuja estruturas de dados são representadas por objectos e é
feito manipulação de objectos tais como herança (aproveitar as características de um
objecto), polimorfismo (reutilização de código), etc. Exemplo: Java, C#, Lisp, Python, etc
• Linguagens não orientadas ao objecto
•
Não usam conceito de polimorfismo, herança presente nas linguagens orientadas ao
objecto. Exemplo: C, Pascal, Basic, Fortran, etc.
Universidade Metodista de Angola, Departamento de Engenharias
5
Aplicações das linguagens de programação
– Linguagem C
• Desenvolvida para construção de sistemas operativos. O Unix, o Linux, o
Windows, o OSX, são sistemas operativos feitos em linguagem C.
• Muito utilizada na electrónica, para programação de micro-controladores.
– Java
• usado para o desenvolvimento de softwares.
– Lisp, Python
• usados em inteligência artificial.
– Pascal
• usada para aprender técnicas de programação.
– Cobol
• processamento de registos.
– Fortran
• usada para o cálculo científico.
Universidade Metodista de Angola, Departamento de Engenharias
6
Noção de Compiladores
• Inicialmente antes de 1951 existiam linguagens de máquina que
consistem em sequência de instruções binárias que são
interpretadas directamente pela CPU dos computadores.
• Mas essa linguagem apresenta um inconveniente, pelo facto de
ser bastante difícil de programar.
• Surgiram as linguagens de programação de alto nível que contêm
instruções que se assemelham à linguagem humana.
• Mas infelizmente essas instruções não são perceptíveis pela CPU ,
pois a CPU apenas interpreta linguagens de máquina.
• Os compiladores são programas que traduzem instruções de
linguagens de alto nível para instruções em linguagem de
máquina.
Universidade Metodista de Angola, Departamento de Engenharias
7
Noção de Compiladores
• Cada linguagem de programação possui um compilador
• Exemplo de compiladores:
– Compiladores de linguagem C:
• DevC++, TurboC, Cygwin,
• Compiladores standard presentes nos sistemas operativos Unix e Linux.
– Compiladores para linguagem Java:
• NetBeans, Eclipse
– Compilador para linguagem Pascal:
• TurboPascal 7.0
– Compilador de linguagem C++, Visual Basic, C#
• Microsoft Visual Studio
Universidade Metodista de Angola, Departamento de Engenharias
8
Softwares
• Recomendados
• Qualquer compilador standard de linguagem C
– por exemplo o aluno pode instalar de raiz qualquer Linux no seu computador
ou usar uma virtual machine (O VM Ware por exemplo) e instalar o Linux.
– O Cygwin é um software que contém um compilador de linguagem C standar.
– O Cygwin é um software que pode ser instalado no sistema operativo
Windows.
– O Cygwin simula uma consola de comandos Unix em ambiente Windows.
– O Cygwin é bastante simples de operar e é bastante importante para os
alunos pois os alunos vão já se familiarizando com comandos Unix tais como
rm, cp, mv, ls, ps, etc.
• Compiladores da Microsoft
– DevC++
– Visual Studio
• O Software recomendado é o Cygwin
Universidade Metodista de Angola, Departamento de Engenharias
9
Para os amantes do Linux
• No site www.darkstar.ist.utl.pt podem encontrar e
fazer download de diferentes versões do Linux tais
como:
–
–
–
–
–
–
–
–
Linux
Linux
Linux
Linux
Linux
Linux
Linux
Etc.
Red Hat
Knoppix
Fedora
Mandrake
Ubuntu
Slakeware
Mandriva
Universidade Metodista de Angola, Departamento de Engenharias
10
Download

Introdução à Cadeira