miércoles, 22 de agosto de 2007

Manual de Perl (II): Antes del código

Antes de empezar a escribir código hay una serie de tareas a tener en cuenta si queremos hacerlo correctamente. Claro que podemos simplemente abrir un editor de texto, escribir algunas líneas de código y ejecutarlo; si necesitamos algo corto, rápido y dulce podría estar bien, pero si estamos escribiendo un script que vamos a usar en el futuro o que pasará a otra persona o grupo debemos seguir algunas pautas básicas y muy recomendables:

  • Planear el flujo del programa
  • Organizarlo para poder reutilizar partes, si es necesario
  • Documentar, documentar, documentar.

Comentarios

Un comentario no es más que un texto o anotación dentro del código, el cual no es interpretado, el interprete de Perl simplemente lo ignora.
Se usa para agregar información sobre el código o secciones de éste.

Para escribir comentarios en Perl se utiliza el símbolo #. Cualquier texto después de # y hasta el final de línea es un comentario.

# Esto es un comentario

Perl no tiene marcador de comentarios multilínea, por lo que para comentar varias líneas pondremos un # al comienzo de cada una de ellas.

# Ejemplo de comentario
# multilínea.



Plantillas, un buen hábito

Una buena costumbre es realizar una plantilla que servirá de base para nuestros scripts, así conseguimos que todos los que escribimos tengan parecido y sentido consistente con la misma.
En ella deberiamos incluir información sobre quién lo escribió, cuándo, qué hace y que versión es. Además, si estamos creando cualquier subrutina en el script, también deberiamos indicar qué es lo que se debe pasar, qué se retorna y una descripción de la función.

Un ejemplo de plantilla sería:

[Encabezado del script]
#!/usr/bin/perl -w
#--------------------
#Script Name:
#Script Version:
#Date:
#Author:
#Description:
#Revision History:
# 1.0/: original version
#--------------------
[FIN Encabezado del script]


[Encabezado de función]
#--------------------
#Function
#Version Adde
#Input:
#Output:
#Description:
#--------------------
[FIN Encabezado de función]


Primera línea

La primera línea de nuestros programas debe empezar con #! y la ruta al intérprete de Perl. No siempre es necesaria pero si muy recomendable, ya que indica al programa donde debe buscar el interprete y sirve para pasarle opciones en tiempo de ejecución.
Por ejemplo, para ejecutar el script en modo Warning (y el interprete está en /usr/bin) nuestra primera línea deberia ser:

#!/usr/bin/perl -w

Esto ejecutará nuestro script activando varios warnings útiles, pero existen muchas opciones diferentes, para más información lo mejor es consultar el manual de perl.



Artículos relacionados:
Manual de Perl: Introducción

martes, 21 de agosto de 2007

Bug en Bux.to para evitar el contador

Según leo en el foro de elhacker.net existe un pequeño error en Bux.to que nos permite saltar el tiempo de espera de los anuncios y navegar entre ellos más rápidamente.


jackl007 nos deja un vídeo donde se explica detalladamente como explotarlo. En el mismo foro tenéis más información útil para sacar partido a este tipo de webs.

Manual de Perl: Introducción

1. Introducción

Perl es uno de los lenguajes de "scripting" (LdS) actuales más conocidos y utilizados.
Se puede instalar en casi todas las plataformas y sistemas operativos existentes y es muy versátil.
Además es libre y hay miles de sitios en Internet con contenido relacionado con Perl incluyendo, por ejemplo, scripts CGI para utilizar en páginas WWW. También existen disponibles un montón de módulos (o bibliotecas) destinados a las más variadas tareas de programación (funciones matemáticas, compresión/descompresión de archivos, cifrado de información, generación/interpretación de archivos HTML y XML, comunicación, acceso a bases de datos, etc.)

La web oficial de Perl es http://www.perl.com y contiene muchos enlaces a otras fuentes de información útiles. Existe un directorio llamado CPAN ('Comprehensive Perl Archive Network'), con mirrors por todo el mundo, donde se pueden obtenet los principales módulos de extensión disponibles para este lenguaje.

Perl comparte las virtudes y defectos de otros LdS, de las que podemos destacar python, ruby, Tcl/Tk y, en menor medida ya que no es tan versátil, awk.
Es un lenguaje semi-interpretado/semi-compilado, aunque podemos considerarlo interpretado ya que no existen las fases intermedias de compilación y enlace (link) de los programas, lo que nos permite ejecutarlo inmediatamente después de escribir un programa.

El apodo de Perl es "There's more than one way to do it" (TMTOWTDI). De hecho, para hacer algo en Perl siempre hay muchas maneras.

En esta serie de artículos intentaré explicar los fundamentos de Perl intentando destacar sus ventajas en lo que a eficiencia y rapidez de escritura se refiere.

Mente Hack, Comenzamos

¿Por qué existe este blog?

Como aficionado a la informática en general y a la programación y hacking ético en particular pensé que era mi deber compartir conocimientos con la comunidad. Además es un ejercicio excelente para para mejorar mis habilidades y obtener otras nuevas al mismo tiempo.


¿A quién va dirigido?

A todo aquél que quiera aprender nuevos lenguajes de programación, sistemas operativos, técnicas y trucos que le ayuden en su trabajo diario, etc.
En resumen, a toda persona con actitud y hambre de conocimientos constantes.


Comenzamos!