Ir al contenido principal

Introducción al desarrollo de software para LAMP

LAMP son la siglas de Linux, Apache, MySQL y PHP que son paquetes de software intermedio o middleware. A estos en conjunto se les denomina LAMP o plataforma LAMP. La L en algunos casos suele reemplazarle por Windows o Mac, según sea el sistema operativo sobre el cual se instala y ejecuta el resto del software. La plataforma LAMP permite ejecutar aplicaciones Web eficientes con un mínimo de requerimientos.

Cada elemento de este conjunto cumple una función especifica así:
Linux/Windows/Mac: un sistema operativo que se encarga de comunicarse directamente con el hardware.
Apache: servidor Web, que se encarga de servir peticiones basadas en protocolo HTTP.
MySQL: motor de base de datos. Permite almacenar y gestionar información relacional.
PHP: lenguaje de programación similar en la sintaxis a C o Java, muy eficiente y comprensible.

Para conseguir ejecutar una aplicación Web sobre esta plataforma, es necesario instalar y realizar algunas configuraciones en el servidor Apache, así este sabrá que tiene que dirigir flujos de código PHP hacia el compilador, tomar la salida y devolverla al cliente en un formato atendible. Existen en la Internet recursos que explican acerca de estas configuraciones, aunque para empezar recomiendo descargar e instalar XAMPP, una distribución de LAMP disponible bajo la modalidad de código abierto y disponible para los sistemas operativos más populares.


Escribiendo código

Para escribir pequeñas aplicaciones basta con un editor de textos simple, pero si las necesidades son mayores es hora de pensar en herramientas profesionales.

Para iniciar, emplear un editor de "textos recargado", el excelente Notepad ++, es una buena idea.

Zend Studio es un excelente IDE (Entorno de Desarrollo Integrado), ideal para proyectos grandes, entre sus características principales se cuentan:
  • Analizar de código PHP.
  • Auto completación de código PHP y HTML.
  • Coloración de sintaxis PHP y HTML.
  • Gestión de proyectos y espacios de trabajo.
  • Asistentes.
  • Permite realizar conexiones FTP y SFTP.
  • Cuenta con un explorador de base de datos.
  • Permite hacer búsquedas en múltiples archivos.
  • Integración con sistemas de control de versiones.
  • Herramientas para trabajo colaborativo.
  • Depurador
Zend Studio es una herramienta software profesional excelente para trabajar proyectos PHP.

Para ver un listado de otras herramientas haga clic

Administrando datos

En aplicaciones grandes es necesario gestionar grandes volúmenes de datos, MySQL cumple esta función dentro de LAMP. MySQL es un de los motores de bases de datos más populares y, a decir de sus creadores, el más rápido.

Cuando se escribe aplicaciones algunas tareas comunes son crear usuarios, bases de datos, gestionar tablas, gestionar vistas. Aunque esto, se puede hacer desde la línea de comandos, una ayuda no viene mal. Una buena herramienta de gestión de MySQL es EMS MySQL Manager.
Esta herramienta es muy versátil y permite realizar TODO literalmente sobre el motor de base de datos MySQL.

phpMyAdmin es otra herramienta genial, se instala con XAMPP y permite administrar la base de datos desde el navegador web.

Configurando Apache y el Sistema Operativo
Finalmente, las configuraciones y administración de Apache y el Sistema Operativo son particulares a cada versión de distribución que se instale.

Por ejemplo Zend Plataform instala un frontal de configuración de Apache. XAMPP también presenta algo similar. Modificar estas configuraciones no es habitual cuando se desarrolla aplicaciones.

Algunos recursos en la red para aprender a desarrollar para LAMP
Para aprender a desarrollar para LAMP solo hay un camino empezar a escribir código. En la Internet existen muchos sitios donde se puede encontrar información, a mi juicio la más válida es www.php.net, aquí se encuentra la documentación del API de PHP y comentarios de usuarios que han tenido problemas y las soluciones, esto enriquece el aprendizaje.

Eqaula mantiene una oferta formal de cursos, entre ellos el de PHP, programación de sitios web, mismo que cubre tópicos como Instalación de la plataforma, configuraciones básicas de Apache, Sintaxis básica del lenguaje, estructuras de control, manejo de estructuras de datos, manejo de formularios HTML y conexiones con base de datos. A diferencia de consultar directamente en Internet, en el curso ofertado por Eqaula es posible aprender colaborando con otros compañeros e interactuar con el tutor o tutores del curso, a través de actividades de aprendizaje.

Comentarios

Entradas más populares de este blog

Los propios bocadillos de Catacocha

Me causo mucha sorpresa el frenaso del vehiculo, minutos antes, note que el conductor, trataba de ubicar algo, al margen derecho de la vía El empalme - Catacocha. Al volver, nos combido, lo que a su juicio era el mejor dulce de la provincia de Loja, y por tanto del Ecuador. Esos bocadillos, que sólo se hacen aca, un manjar hecho maní y miel de caña. Un manjar que no puedo dejar de probar cuando viajo hacia Pindal. Luego cuando tuvimos, mi familia y yo, la oportunidad de volver en auto por el mismo lugar del frenaso repentino. Senti personalmente, la sensación que aquel conductor sintio en su momento, pues parecia que hubiese perdido algo, y reduje la velocidad mientras miraba el filo del asfalto para ubicarlo. De pronto allí estaba la casita de adobe, con un gran corredor y una vitrina, que delataban que allí era el lugar. Al calor de la hornilla de leña; un pailón, miel casi a punto y, maní cocido y molido, se estaban preparando para ser más tarde aquel delicioso bocado de dulce. Pero...

Guía rápida para instanciar un Entorno Virtual de Aprendizaje basado en moodle

Este documento presenta una guía rápida para instanciar un Entorno Virtual de Aprendizaje basado en moodle en el servidor de virtualización [eva.utpl.edu.ec], muestra las actividades generales a llevar a cabo para realizar una instalación moodle, asumiendo que ya se tiene instalada la plataforma o software intermedio. Plataforma La plataforma de ejecución LAMP ya está en producción por lo que se omiten detalles acerca de la instalación y configuración. Paquete de distribución moodle El paquete de distribución moodle se encuentra almacenado en el directorio web del servidor y es sólo accesible para lectura/escritura por el administrador del sistema. La ruta el archivo es: /opt/www/moodle-latest-18.zip Instalación e instanciación Información preliminar necesaria Nombre de la instancia Imagen logo para las cabeceras URL de inicio Información de contacto del solicitante Dirección de correo para el administrador de la nueva instancia Con esta información preliminar se puede pr...

AJAX

Ya hace algún tiempo se vaticinó la llegada de la aplicaciones Web orientadas hacia la experiencia rica del usuario. Lo que significa: Asemejar la apariencia de las aplicaciones Web con la apariencia de las aplicaciones de escritorio. Respuesta rápida e intuitiva Respuesta inmediata a los estímulos del usuario Que las cosas pasen naturalmente, sin necesidad de que el usuario solicite hacer lo que es obvio. Una gran cantidad de la aplicaciones que usamos sobre la Internet, son aplicaciones Web convencionales; que una aplicación Web, sea convencional significa que la interacción de usuario sigue la secuencia: clic, esperar, refrescar -hacer clic en petición de una acción, esperar, y recibir una nueva página con los resultados de la acción solicitada- . Esta secuencia es lenta y el tiempo de respuesta esta sujeto a variables como la velocidad de conexión, la capacidad del equipo servidor, diseño de navegabilidad de la aplicación, etc. Ejemplos de este tipo de aplicaciones son: El Ento...