domingo, 12 de mayo de 2013

Tutorial de PHP I: Introducción a PHP


PHP (acrónimo recursivo que significa PHP Hypertext Pre-processor) es un lenguaje de programación orientado a objetos orientado al desarrollo web con programación dinámica. Nos va a proporcionar toda la potencia de la que carece HTML para gestionar conexiones con bases de datos, crear contenido dinámico, etc...

CARACTERÍSTICAS DE PHP


La principal característica de PHP es su orientación a objetos. Ese paradigma de programación nos permite modelar la realidad en clases y objetos:

  • Clases: cualquier cosa del mundo real que queramos modelar (un coche, un impreso, una conexión...)
  • Objeto: ocurrencia de una clase concreta.
La mejor forma de entender este concepto es a través de un ejemplo: podemos modelar todos los coches como una clase de nombre coche. Esa clase tendrá una serie de características comunes a todos los coches (número de puertas, potencia, número de plazas, etc...). Un objeto sería un coche concreto, por ejemplo un Renault Clio con 5 puertas, 130 CV y 5 plazas.

Otra de sus características es su tipado dinámico. Como ya explicamos en el tutorial sobre Python, consiste en que el tipo de una variable se determina en tiempo de ejecución, es decir, en función del valor que le asignamos. A diferencia de Python, PHP tiene un tipado débil: el tipo de la variable puede cambiar si asignamos un valor de un tipo distinto (Python lanzaba una excepción).


<?
   a = "Hola Mundo";    //La variable es de tipo String
   a = 1;     //La variable ahora es de tipo entero
?>

Otra característica importante es que es interpretado en el propio servidor por lo que al cliente sólo le llegará código HTML. Esto viene muy bien ya que las conexiones con base de datos se hacen desde el servidor, con lo que aumenta la seguridad de nuestras aplicaciones.

Precisamente la conexión con base de datos está muy trabajado con PHP. Existen librerías de conexión y gestión con muchas bases de datos del mercado (comerciales y software libre). Las librerías de conexión con MySQL y PostgreSQL son de las más utilizadas (aunque podemos gestionar bases de datos Microsoft SQL Server y Access).


EL ENTORNO DE TRABAJO


Para ejecutar un script PHP necesitamos que nuestro servidor web lo soporte. La mayoría de los alojamientos actuales tienen soporte para PHP y si queremos trabajar en local existen unos paquetes instalables que contienen de forma conjunta un servidor web (Apache), soporte para el propio PHP y un servidor de bases de datos MySQL. Los tenemos disponibles para varias plataformas y disponéis de instrucciones de instalación en nuestro propio blog:


NUESTRO PRIMER SCRIPT


Un script PHP es un fichero de texto plano con extensión .php (para que el servidor web sepa de qué tipo de archivo se trata). Podemos encontrar otro tipo de extensiones como phtml, php5, etc... aunque lo más usual es trabajar con la extensión .php.

Su contenido puede ser exclusivamente php o tratarse de una página web escrita en HTML con php entre medias. Puede coexistir con lenguajes como JavaScript, JQuery...

El código PHP estará delimitado por los tags <?php y ?>, aunque es frecuente que nuestro servidor web soporte <? y ?> (la opción short_tags enabled en php.ini, ya os hablaremos de ello más adelante). Cada instrucción se separará de la siguiente con un punto y coma, y los bloques entre llaves (una notación muy similar a C++ o Java).

La primera instrucción de la que os vamos a hablar es echo. Esa instrucción imprime por pantalla la información que le pasemos (puede ser una cadena, una variable...). Podéis ver su funcionamiento en el siguiente fragmento de código:

<?php
    echo "hola mundo";
?>

Otra instrucción interesante es la siguiente:

<?php
   phpinfo();
?>

Esta segunda instrucción nos muestra por pantalla la configuración de PHP en nuestro servidor, muy interesante para saber con qué posibilidades y extensiones contamos (os lo explicaremos más adelante en otro post).

Por hoy ya está bien, id estirando los dedos que en el próximo post entraremos en más faena.

La cita del día

En realidad, prefiero la ciencia a la religión. Si me dan a escoger entre Dios y el aire acondicionado, me quedo con el aire.


Woody Allen (1935-?) Actor, director y escritor estadounidense.

sábado, 11 de mayo de 2013

La NASA migra equipos de la Estación Espacial Internacional a Linux

La NASA ha anunciado que migrarán los portátiles y PCs de la ISS de Windows a Linux, concretamente a Debian 6. Han contactado con la Linux Foundation para asesorar y formar a profesionales para el cambio.



Keith Chuvala (uno de los miembros de la United Space Alliance) decidió plantear el cambio: "Hemos migrado funciones clave de Windows a Linux porque necesitábamos un sistema operativo estable y confiable - uno que nos proporcione autocontrol. De ese modo si necesitamos parchearlo, ajustarlo o adaptarlo, podremos hacerlo".

Además de los equipos de los astronautas, el robot R2 también funcionará con Linux. Se trata del primer robot humanoide en el espacio. Actualmente se encuentra en modo experimental pero está previsto que realice las tareas demasiado peligrosas o tediosas para los astronautas.









La cita del día

La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  
George Bernard Shaw (1856-1950) Escritor irlandés.

viernes, 10 de mayo de 2013

Tutorial Python IV: funciones, clases y objetos

< Tutorial III:

Hasta ahora hemos visto fundamentos del lenguaje, pero para poder utilizar toda la potencia de un lenguaje de programación orientado a objetos necesitamos precisamente eso: aprender a diseñar clases e instanciar objetos.

CLASES


Usaremos la palabra reservada class para definir el nombre de la clase seguido de dos puntos y el cuerpo de la clase.

class persona:
     def __init__(self,nombre,edad):
          self.nombre = nombre
          self.edad = edad
     def mayordeedad(self):
          if self.edad > 18:
               print("Es mayor de edad")
          else
               print("No es mayor de edad)

Podemos observar la sentencia __init__, el constructor de la clase. Con la instrucción def podemos definir métodos (tanto el constructor como el resto).


OBJETOS


Instanciamos el objeto de la clase definida anteriormente mediante la sentencia:

empleado = persona("Pepe",33)

En esta sentencia invocamos el método constructor de la clase con los parámetros adecuados para inicializar las variables de clase.

Podemos acceder a los atributos de un objeto con el operador punto:

print(empleado.nombre,"tiene",edad)

FUNCIONES

Definimos las funciones del mismo modo que los métodos de una clase (con la palabra reservada def). Las funciones en Python siempre devuelven un valor usando return. Si no lo hacemos de forma explícita la función devolverá None.

def cuadrado(numero):
     print(numero ** 2)

Esta función se invoca con la sentencia
cuadrado(4)

Según comentamos antes, podemos devolver un valor con return

def cuadrado(numero)
     return numero ** 2

Y la invocación sería

print(cuadrado(4))


CONCLUSIÓN

Como habéis podido comprobar, Python es un lenguaje extraordinariamente sencillo. Pero que no os lleve a engaño, también es un potente y completo lenguaje orientado a objetos con el que podemos construir aplicaciones y sistemas.

Espero que os sea útil

Recomendaciones de Alcasoft