Perche' usarlo:
- E' facile da imparare
- Porta con se un semplice approccio alla programmazione ad oggetti
- Ha una efficiente struttura dati
- Una elegante sintassi
- E' ideale per lo scripting
- Si possono sviluppare in modo rapido applicazioni anche complesse
Peculiarita':
- E' Libero
- libero da licenze
condivide in pieno la filosofia di Open Source
- E' Portabile
- e' stato scritto in ANSI C
questo ha permesso la facile trasportabilita' in diversi
sistemi quali:
Unix, Linux, MS-DOS, MS-Windows, Macintosh, Amiga, BeOS,
OS/2, VMS, QNX
recentemente e' stato scritto un interprete anche in java
e anche sui Palmari
- E' Veloce
- nonostante sia un linguaggio interpretato il bytecode e' molto
efficiente.
in realta' python e' sia interpretato che compilato.
- la prima volta che un modulo viene richiesto questo viene
compilato
e convertito in bytecode con lo stesso nome del file ma
con estensione .pyc
- molte strutture dati e funzioni sono componenti intrinseche del
linguaggio.
chiamate "built-in types and tools"
sono state sviluppate con molta accuratezza per ottenere
il massimo dell'efficienza
(es: gestione dei file)
- Garbage collection
- la gestione della memoria e' automatica, come in java il
programmatore
non se ne deve piu' preoccupare
- Sintassi chiara
- presenta una sintassi pulita e sintetica.
l'indentazione diventa l'unico strumento per strutturare il
codice
questo permette un apprendimento piu' veloce e una maggiore
facilita'
nel leggere il codice scritto da altri.
- E' ricco di librerie
- la dotazione standard e quella che si trova in internet
(HTML, PDF, XML, formati grafici, CGI e anche interi web
servers)
- questo sta convincendo molti grandi attori del mercato
informatico
ad impiegarlo nello loro applicazioni:
* Red Hat, Gentoo (tool di installazione).
* Infoseek (ricerca sul web).
* Yahoo! (servizi di internet).
* La NASA (sistemi di controllo delle proprie missioni).
* Zope (intere applicazioni)
Esistono compilatori Python che producono codice per altre macchine virtuali:
- Jython produce bytecode per una JVM (file .class)
- Python.NET produce il codice-intermedio MSIL tipico della
piattaforma .NET
- C-Python e' la versione-base essendo stata scritta in C
Per finire agli amici del Perl posso offrire queste definizioni:
Perl: "post-moderno"
- (come e' stato descritto dal suo stesso inventore Larry Wall)
ricco, gioioso, caotico nella sintassi e nella semantica,
complesso, ridondante
- il suo motto ("C'e' piu' di un modo di farlo!") .
Python: "neo-classico"
- snello, limpido, cristallino
inteso ad offrire un modo (clamorosamente "giusto") di
svolgere un qualsiasi compito.