Você está na página 1de 24

Aula 01

Linguagens de Scripts:
Potencialidades e Aplicações
Leonardo Lemes Fagundes
llemes@unisinos.br
São Leopoldo, 27 de fevereiro de 2007
Sumário
Introdução
Linguagens Compiladas versus linguagens Interpretadas
Paradigmas de Programação
Porque utilizar outras Linguagens de Programação?

Linguagens de Script
Características
Exemplos de Linguagens de Scripts e suas Aplicações

Referências

:: Programação em Linguagens Scripts :: 2


Introdução
Linguagens Compiladas versus linguagens Interpretadas
Compiladores
Um compilador é um programa que transforma o código escrito em
linguagem de alto nível em uma sequência de instruções (programa)
que será executada por um sistema computacional.
A arquitetura convencional de um compilador divide-se em Análise e
Síntese. A Análise pode ser subdividida ainda em análise léxica,
análise sintática e análise semântica.
A Síntese é mais variada, podendo ser composta pelas etapas de
Geração de código intermediário, otimização de código e geração
de código final (ou código de máquina). Somente esta última etapa
é obrigatória.

:: Programação em Linguagens Scripts :: 3


Introdução
Linguagens Compiladas versus linguagens Interpretadas
Interpretadores
Interpretadores são programas que lêem um código fonte de uma
linguagem de programação e os convertem em código executável.
Seu funcionamento pode variar de acordo com a implementação.
Em muitos casos o interpretador lê linha-a-linha e converte em
código objeto a medida que vai executando o programa.

:: Programação em Linguagens Scripts :: 4


Introdução
Modelos de Programação
Visão Geral
Lógico
Funcional
Imperativo
Orientado a Objetos

:: Programação em Linguagens Scripts :: 5


Introdução
Porque Utilizar Outras Linguagens de Programação?
Java, C, C++ não são suficientemente poderosas?

:: Programação em Linguagens Scripts :: 6


Linguagens de Script
Características
Desenvolvimento Rápido
Acesso a uma Grande Variedade de Banco de dados (BDs)
Interfaces Gráficas
Implementam Modelos Atuais de Programação
Curva de Aprendizado Curta
etc, etc, etc ...

:: Programação em Linguagens Scripts :: 7


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Shell Script
Perl
Python
PHP
Outras Linguagens ...

:: Programação em Linguagens Scripts :: 8


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
O que é Shell Script?
Um poderoso interpretador de linha de comando que fornece uma
série de recursos e ferramentas (cut, paste, find, etc) para
automatizar diferentes tipos de tarefas.
Tempo de desenvolvimento reduzido

echo `who|awk '{print $1}' | sort | uniq` | sed 's/ /,/g'

Total de linhas
echo (177) + who (755) + awk (3412) + sort (2614) + uniq (302)
+ sed (2093)

:: Programação em Linguagens Scripts :: 9


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Quem usa Shell Script?
O mundo UNIX ...

Exemplos de Aplicações
Funções ZZ (http://aurelio.net/zz)
txt2regex (http://txt2regex.sf.net)
txt2tag (http://txt2tags.sf.net/pt)
Muitas Outras ...

:: Programação em Linguagens Scripts :: 10


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Shell Script: Interfaces Gráficas
dialog
Xdialog
Kdialog

O que mais pode ser feito com Shell Script?


Acesso a BD
PL/sh
Pergunte ao Julio Neves ...

:: Programação em Linguagens Scripts :: 11


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
O que é Perl?
Perl (Practical Extraction and Report Language) é uma linguagem
de programação criada por Larry Wall em dezembro de 1987,
bastante utilizada por administradores de sistema e
desenvolvedores de aplicações web.
É especialmente versátil no processamento de cadeias (strings),
manipulação de texto e no pattern matching implementado através
de (expressões regulares), além de permitir tempos de
desenvolvimento curtos.

Fazer uma única tarefa de mil formas diferentes ...

:: Programação em Linguagens Scripts :: 12


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Quem usa Perl?
Administradores de BD
Administradores de redes
Desenvolvedores web
Pesquisadores

:: Programação em Linguagens Scripts :: 13


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Perl: Exemplos de Aplicações
MRTG (The Multi Router Traffic Grapher)
HoneyPotBR
Ferramentas para Gerenciamento de Sistemas
Programação web - CGI (Common Gateway Interface)
Parsers
Aplicações na área da Bioinformática

:: Programação em Linguagens Scripts :: 14


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Perl: Interfaces Gráficas
Perl / TK
Perl / GTK
O que mais pode ser feito com Perl?
Aplicações utilizando:
Web Services
XML (eXtensible Markup Language)
SNMP (Single Network Management Protocol)
PL/Perl
Acesso a Banco de Dados

:: Programação em Linguagens Scripts :: 15


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
O que é Python?
Python é uma linguagem de altíssimo nível (VHLL - Very High Level
Language), de sintaxe moderna, orientada a objetos, interpretada
via bytecode, dinâmicamente tipada (não há declaração de variáveis
e elas podem conter diferentes objetos), de tipos fortes (não há
conversões automáticas), modular, multiplataforma, de fácil
aprendizado e de implementação livre. Python foi criada por
GuidoVanRossum

Deveria haver um -- e preferentemente só um --


modo óbvio para fazer as coisas .

:: Programação em Linguagens Scripts :: 16


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Quem usa Python?
Google
Yahoo!
Nasa
Red Hat Linux
Industrial Light & Magic

:: Programação em Linguagens Scripts :: 17


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Python: Exemplos de Aplicações
OpenOffice
Zope
Plone
Blender
Skencil

:: Programação em Linguagens Scripts :: 18


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Python: Interfaces Gráficas
Tkinter (wiki.python.org/moin/TkInter)
PyGTK (www.pygtk.org)
PyQT (www.riverbankcomputing.co.uk/pyqt)
wxPython (www.wxpython.org)
Wax (www.zephyrfalcon.org/labs/wax.html

:: Programação em Linguagens Scripts :: 19


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
O que mais pode ser feito com Python?
Aplicações utilizando:
Web Services
XML (eXtensible Markup Language)
SNMP (Single Network Management Protocol)
PL/Python
Acesso a Banco de Dados

:: Programação em Linguagens Scripts :: 20


Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
O que é PHP?
Essa questão precisa de resposta?
Quem usa PHP?
A IBM e a torcida do flamengo ...
PHP: Exemplos de Aplicações
Agata Report, SAGU, phpPGadmin, aplicações de gerenciamento
(web-based)
PHP: Interface Gráfica
PHP – GTK (http://www.php-gtk.org.br/)
O que mais pode ser feito com PHP?
“tudo” ...
:: Programação em Linguagens Scripts :: 21
Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Ainda Sobre PHP ...
O News.com publicou uma notícia sobre o novo apoio da IBM à
linguagem PHP no desenvolvimento Web, através de uma parceria
com a Zend Technologies. As duas empresas pretendem dedicar
esforços para fazer o PHP trabalhar melhor com bases de dados
corporativas e com web services, e a IBM pretende dedicar ao PHP
uma área de seu website para desenvolvedores. Na nota, a IBM
esclarece oficialmente que vai continuar investindo no Java, e que a
adição do PHP busca alcançar mais desenvolvedores para os quais
as linguagens de script são uma boa solução. Mas a mesma nota
menciona a declaração de um executivo afirmando que a nova
opção pelo PHP reflete a desilusão da IBM com o processo de
padronização do Java, e com a incapacidade da indústria de
transformar o Java em algo muito fácil de usar.
Julho de 2005.
:: Programação em Linguagens Scripts :: 22
Linguagens de Script
Exemplos de Linguagens de Scripts e suas Aplicações
Mais Linguagens ...
Rubby
Power Shell
VBScript
JavaScript
SED (Stream EDitor)
awk
Tcl/tk
Nasl (Nessus Attack Script Language)

:: Programação em Linguagens Scripts :: 23


Referências
[1] Ousterhout, John K. Scripting: Higher-Level Programming for the 21st
Century.
[2] RNP. Segurança em Scripts CGI - Disponível em:
http://www.rnp.br/newsgen/9803/scripts.html

:: Programação em Linguagens Scripts :: 24