Sei sulla pagina 1di 4

Hace tiempo cuando inicie con el desarrollo me inquieto Python, primero por su

nombre y sus curiosidades; en este post voy a recopilar algunas de ellas para
luego avanzar con Django en su ultima versin (1.4), por el momento continuamos
con algunos conceptos bsicos, de pronto estars pensando que esto es OFF-
TOPIC, pero es bueno conocer las tecnologas y lenguajes que estn del lado
del servidor y llevarse una idea bsica de lo que puedes hacer con ello:

Python es creado por uno de los pocos dictadores benevolentes que


existen, llamado Guido Van Rossum, su nombre deriva de una comedia
televisada en los aos 60s y 70s llamada Monty Python.

Python es una excelente opcin para ensear conceptos


de programacin a personas sin experiencia previa pues tiene una
sintaxis simple y convencional.

Las Sentencias son muy similares a los algoritmos de pseudocdigo, pues


no requiere de puntos y comas (semicolons), incluso ni de llaves { } para
declarar funciones ni clases.

Python es un lenguaje interpretado, lo que ahorra un


tiempo considerable en el desarrollo de software, pues no es necesario
compilar.

Sus cambios o criterios son basados en unos documentos que contienen


los ndices de todas las propuestas de
mejoras llamados PEP (Python Enhancement Proposal), que a travs de
la lista de correo oficial se discuten de manera abierta y tcnica los cambios
o mejoras de Python, de all nace el nombre de dictador benevolente.

Dentro de sus PEP existe el Zen de Python como el PEP20, y no son ms


sino 19 reglas para tener en cuenta, claro esta que el autor sugiere que
deben cumplirse. Otro mucho ms importante, el es PEP8 y es la gua de
estilo para el cdigo de Python, cosa que le falta a muchos lenguajes y
esto realmente es ms importante que cualquier otra cosa ya que el 80% de
las personas entendern el cdigo que escribimos.

Y la Licencia?
Python es un lenguaje de programacin gratuito para todo uso (incluido el
comercial y/o privativo), pero tambin libre, ya que es explcito y permitido copiar,
modificar y redistribuir. La licencia de Python est reconocida como libre tanto por
la OSI como por el proyecto GNU, es compatible con la GNU-GPL, se puede
combinar con cualquier software bajo GPL. La licencia de Python no obliga a que
los trabajos derivados mantengan la misma licencia (no es copyleft, a diferencia de
la GPL), Ah y sus libreras tambin cumplen con esto.

Quin usa Python?

Voy a mencionar algunos de las empresas, proyectos y campos donde se usa:

Desarrollo: Yahoo Maps, Yahoo Groups, Google, Zope


Corporation, Ultraseek, ElasticHosts Cloud Servers, Mojam.com.

Video Juegos (Games): Battlefield 2, Star Trek Bridge


Commander, Civilization 4, QuArK (Quake Army Knife).

Industria Grafica: Industrial Light & Magic, Walt Disney Feature


Animation, Blender 3D, RoboFog

Industria financiera: Altis Investment Management, ABN AMRO Bank,


Treasury Systems, Bellco Credit Union, Journyx Timesheet and Resource
Management Software.

En el campo de la Ciencia: National Weather Service, NASA, Environmental


Systems Research Institute (ESRI), Los Alamos National Laboratory (LANL)
Theoretical Physics Division, AlphaGene, Inc., LLNL

Con estas empresas que usan, y desarrollan Python se puede llevar una idea de
la madurez y lo robusto que puede llegar a ser.

Con respecto a otros lenguajes como se encuentra posicionado?

Segn El ndice TIOBE que calcula la popularidad de los lenguajes de


programacin, se actualiza una vez al mes. Las calificaciones se basan en el
nmero de los ingenieros calificados en todo el mundo, cursos y
proveedores. Python en este mes se encuentra en el puesto nmero 8 y aun que
su verdadero auge aproximadamente data del 2002 sigue siendo de los lenguajes
ms cotizados a nivel mundial.

Los servicios y tecnologas lderes, pueden interactuar con Python?

Si a desplegar aplicaciones y uso de APIs se refiere, entonces si, por ejemplo:


Heroku: desplegar aplicaciones en Python y Django con la API propietaria
de Heroku.
Dotcloud: desplegar aplicaciones en Python.
stackato: desplegar aplicaciones en Python con virtualizacin.
Amazon EC2 y turnkey: Excelente appliance, que combina Amazon
EC2 y Django.
Rackspace Cloud Servers API: Rackspace actualmente servicio cloud con
calificacin lder en Gartner que aloja Github (prximamente un Post), tiene
su propia API para trabajar y manejar algunas cosas de la plataforma
con Python.
Dropbox tiene una API en REST para usarla de manera dedicada con
aplicaciones escritas en Python.
Evernote en su sitio oficial para desarrolladores tiene APIs para diferentes
lenguajes entre esos Python.
Google App Engine en este sitio para los desarrolladores pueden
desplegar sus aplicaciones con un completo SDK para Python y Django

Ahora te puedes dar una idea de que se puede implementar y donde lo puedes
hacer con Python.

Y Django, que tiene con respecto a otros Frameworks?

Django esta escrito en Python, y lo que me gusta de Python es que hay


pocos Frameworks y todos tienen filosofas interesantes y organizadas en la
forma en que se utilizan y se implementan aplicaciones. Se pronuncia Jang-
oh la D queda en silencio, creado por Adrian Holovaty y Jacob Kaplan-Moss, su
mascota es un curioso Pony que la verdad no es muy varonil. Caractersticas:

Bajo acoplamiento, puede modificar una aplicacin y no tiene que afectar


todo el desarrollo.
Patrn MTV (Model Template View)
ORM (Object Relational Mapping) Excelente API para que la base de
datos funcione acorde a la lgica del Negocio.
Diseo de URL, perfectas para el trabajo de SEO.
Sistema de Plantillas o templates, este posee un rico y
excelente pool de tags y filtros.
Internacionalizacin.
No necesita de un LAMP, XAMPP, MAMP, pues cuenta con su
propio servidor de desarrollo integrado.

Bueno pero esto lo tienen la mayora de Frameworks Si!, es totalmente cierto


pero adems de esta tiene otras caractersticas propias:

Virtualizacin de aplicaciones, para que no tengas que modificar todo el


ecosistema de su equipo.
Proteccin CSRF segn el documento Tecnico RFC2616
Shell interactiva para trabajar con el ORM , con la Logica del Negocio o con
los Templates.
Implementa el Framework de Test Unitario Unittest, lo que te garantiza
poder trabajar con la metodologia gil TDD
Tiene extensiones como django-devserver adems de que extiende el uso
del servidor de desarrollo bsico, puede medir la cantidad de tiempo que
toma una consulta (Query), teniendo aproximaciones sobre lo que ejecuta
en el motor de Bases de Datos.
Una rica coleccin de Snippets enfocadas al uso del Framework
Cuenta con una poderosa herramienta de Cache sobre el Framework

Potrebbero piacerti anche