Documente Academic
Documente Profesional
Documente Cultură
Proyecto de Investigación:
Análisis de aplicaciones para la creación de contenido
dinámico en una página web con PHP
Taller de Investigación 2
Realizó:
Salvador Romero Chávez
Comité de revisión
Agradecimientos y Dedicatoria
Dedico el presente trabajo a mis padres que siempre me han apoyado en mis estudios.
Agradezco a mi maestra que fue la persona que me orientó y me ayudó a realizar esta
investigación.
Tabla de contenido.
ÍNDICE DE TABLAS............................................................................................................................ VI
ÍNDICE DE FIGURAS.........................................................................................................................VII
RESUMEN ............................................................................................................................................. IX
ABREVIATURAS ................................................................................................................................... X
ANTECEDENTES. ....................................................................................................................................1
1.2 OBJETIVO.........................................................................................................................................1
6.1.3 NETBEANS...................................................................................................................................42
6.2.7 FUNCIONES..................................................................................................................................54
6.2.8 TABLAS........................................................................................................................................55
8.1 TABLA COMPARATIVA DE LAS DISTINTAS PLATAFORMAS PARA EL DESARROLLO DE PHP. .......59
Índice de Tablas
Tabla 8.1. Tabla comparativa de los programas. .................................................................. 59
Índice de Figuras
Resumen
Esta investigación trata de las diferentes cosas que se tienen que tomar en cuenta para
crear o diseñar una página web.
Contiene un poco de historia de las páginas web, así como los dos tipos de páginas web que
hay, este documento también contiene las etapas por las cuales se debe de pasar para crear
la pagina web que es algo que hay que tomar en cuanta si es que se quiere diseñar una
página web con calidad.
Aquí se van a encontrar un poco de la usabilidad, navegabilidad y de la arquitectura de la
información que implica el diseño web.
También se habla un poco acerca de algunos lenguajes que están diseñados para programar
páginas web de contenido dinámico como el ASP, el Perl, el Java Script y el PHP que es al
lenguaje al que se enfoca esta investigación, y como esta investigación se enfoca en el
lenguaje PHP el objetivo de esta es analizar algunas plataformas para la generación de
contenido dinámico con el lenguaje ya mencionado, y por último se da una introducción al
lenguaje que viene siendo la sintaxis del mismo.
Abreviaturas
Abreviatura Significado
HTML Siglas de HyperText Markup Language (Lenguaje de Marcas de
Hipertexto).
CGI Common Gateway Interface, una tecnología que se usa en los servidores
web.
FTP Sigla en inglés de File Transfer Protocol - Protocolo de Transferencia de
Archivos.
CVS Concurrent Versions System, también conocido como Concurrent
Versioning System, es una aplicación informática que implementa un
sistema de control de versiones.
IDE Sigla en inglés de integrated development environment, entorno de
desarrollo integrado (IDE), también conocido como entorno de diseño
integrado o entorno de depuración integrada, es una aplicación de
software que proporciona las más completas instalaciones para los
programadores de computadoras para el desarrollo de software.
GUI Sigla en inglés graphical user interface, una interfaz gráfica de usuario,
es un tipo de elemento de la interfaz de usuario que permite a las
personas interactúan con programas en más de escribir, como
computadoras, dispositivos portátiles
UML Sigla en inglés Unified Modeling Language, es un general normalizado
lenguaje de modelado de propósito en el ámbito de la ingeniería de
software.
SOA Sigla en inglés Service Oriented Architecture, la Arquitectura Orientada
a Servicios, es un concepto de arquitectura de software que define la
utilización de servicios para dar soporte a los requisitos del negocio.
WYSIWYG Es el acrónimo de What You See Is What You Get (en inglés, "lo que ves
es lo que obtienes"). Se aplica a los procesadores de texto y otros
editores de texto con formato (como los editores de HTML) que
permiten escribir un documento viendo directamente el resultado final,
frecuentemente el resultado impreso.
STL Sigla en inglés Standard Template Library, biblioteca de plantillas
estándar es una biblioteca de software incluido parcialmente en el C + +
de la biblioteca estándar. Proporciona contenedores, iteradores,
algoritmos, y funtores.
API Siglas en inglés Application Programming Interface, es una interfaz que
un programa de software implementa a fin de que otro software para
interactuar con él, gran parte de la misma manera que el software puede
implementar un interfaz de usuario con el fin de permitir a los humanos
utilizan.
COBOL Acrónimo de COmmon Business -Oriented Language, Lenguaje Común
Orientado a Negocios.
PDF Acrónimo del inglés Portable Document Format, formato de documento
portátil, es un formato de almacenamiento de documentos.
GNU Licencia Pública General de GNU o más conocida por su nombre en
Salvador Romero Chávez x
Licenciatura en Informática I.T.D. Proyecto Final
Capítulo I. Introducción.
Antecedentes.
En un principio el diseño de páginas web era muy simple debido a que las primeras
páginas que se diseñaron contenían puro texto, pero a medida que ha evolucionado la
tecnología, tanto los ordenadores como las redes de telecomunicaciones, se ha generado
nuevas formas de desarrollar la web.
La inclusión de imágenes fue la evolución más significativa, pero también debemos
mencionar el video y la animación, o los espacios 3D, lo que aporta valores estilísticos, de
diseño y de interactividad jamás imaginados antes.
El diseño de páginas web se ha desarrollado a medida que ha evolucionado Internet, pero
también han evolucionado a medida que los lenguajes de programación han ido
evolucionando. Existen varios lenguajes de programación que son orientados al diseño web
y esto permite que las páginas se diseñen con mayor creatividad y sean más atractivas para
el usuario, mediante pequeños videos, imágenes, colores, entre otros.
El diseño web forma parte importante dentro de la sociedad, porque a medida que han ido
evolucionando se pueden hacer más cosas a través de ellas como por ejemplo pagar algún
recibo por medio de internet, comprar algún producto, inscribirse en las instituciones, entre
muchas otras cosas más, esto a su vez hace más fácil la vida de las personas, pero todo esto
implica muchas otras cosas dentro del diseño web.
Antes de que se comience a diseñar una página web, es necesario tener una idea de cómo es
que se quiere diseñar la pagina, como las imágenes que va a llevar, para que servirá la
pagina entre muchas otras cosas más. Las páginas web deben tener una buena arquitectura
de la información y tener organizada la información de tal manera que sea atractiva y muy
llamativa para el usuario y de tal manera que no lo aburran, esto es un poco de todo lo que
debe llevar una página web y se debe de tomar en cuenta para su diseño.
(Publicaciones Vértice, 2005)
1.2 Objetivo.
Lo que se pretende alcanzar al hacer esta investigación es analizar las diferentes
plataformas de desarrollo de páginas con contenido dinámico utilizando el lenguaje PHP, lo
que se quiere hacer con esta investigación es proporcionar o aportar información acerca de
las características que tienen las diferentes plataformas de desarrollo de lenguaje PHP, para
así hacer una comparación y ver cual plataforma es la más adecuada con respecto a la
facilidad de manejo de la misma.
El gran avance de Berners-Lee fue unir hipertexto e internet. Entre la WWW y los
sistemas de hipertexto disponibles en aquel entonces existían algunas diferencias, como por
ejemplo: WWW sólo requería enlaces unidireccionales en vez de bidireccionales, es decir,
una persona podía enlazar con otro recurso sin necesidad de obtener un permiso del parte
del propietario de dicho recurso. Con esto se facilitaba considerablemente la
implementación de servidores web y navegadores. Otra diferencia radicaba en que la
WWW era no-propietaria permitiendo desarrollar servidores y clientes independientes y
añadir extensiones sin restricciones de licencia. Fue en 1993, cuando el CERN anuncia que
la web será gratuita para todos (Publicaciones Vértice, 2005).
La web tiene actualmente al menos unas cuatro mil millones de páginas estáticas y un
número cientos de veces mayor de dinámicas (aquellas que sólo se crean producto de un
clic o de una consulta en un sitio web). Además, tenemos que agregar toda la web invisible,
en intranets o páginas con acceso restringido. La web oculta es seguramente miles de veces
más grande que la pública. La figura 1 muestra estas distinciones, minimizando el tamaño
tanto de la parte dinámica como de la oculta. Una última región, la web semántica, se
muestra en un tono más claro. En la actualidad, se estima que las páginas con información
semántica constituyen algo menos del 5%, aunque se espera que en el futuro sea mayor.
Esta información semántica, representada principalmente en los metadatos de cada página,
no es muy usada ya que existe un porcentaje mayor de páginas que tienen información no
fidedigna o directamente falsa (spamming de metadatos). Finalmente, la región con rayas
paralelas indica la zona que efectivamente poseen los buscadores web, que se corresponde
en gran parte con la zona pública estática y un poco de la dinámica (Baeza-Yates, 2004).
Las paginas estáticas son aquellas que se construyen con lenguaje HTML, pueden
presentar textos estáticos acompañados de imágenes o archivos multimedia (puede ser
sonido o video) y a parte de los enlaces no permiten interactividad con el usuario. Son
fáciles de crear, aunque ofrecen pocas ventajas a los visitantes.
Las páginas estáticas por lo general ya no se utilizan en ningún lado porque son muy poco
atractivas y lo que se quiere es que muchas personas visiten frecuentemente tu página web
(Publicaciones Vértice, 2005).
Un ejemplo de una página web estática es la de los derechos humanos, que es como
estaba anteriormente porque actualmente está modificada y es una página dinámica.
A continuación se muestra la imagen de la página web estática:
Figura 2.2 Página web estática de los derechos humanos. (Publicaciones Vértice, 2005)
Cómo se puede observar no existe ningún elemento en la página que permita al usuario
interactuar con ella. Como ya se mencionó actualmente resulta muy difícil encontrar
páginas web estáticas.
Las páginas dinámicas contienen elementos que permiten al usuario interactuar con
ellas o bien presentan efectos especiales.
Un ejemplo de una página dinámica sería la nueva página de de los derechos humanos:
http://www.cndh.org.mx
Como se puede observar en la imagen, la página tiene hipervínculos que hacen interactuar
a la página con el usuario, así como también las imágenes que se muestran en el centro de
la página web, se les da un clic y te llevan a la información que muestran.
Las páginas dinámicas de servidor son ejecutadas por el servidor. El archivo HTML de la
página web llega al servidor y éste ejecuta los script contenidos en él devolviendo al cliente
sólo código HTML. Las paginas dinámicas de servidor se usan en aplicaciones web tales
como: foros, chats, y más concretamente en aquellas aplicaciones que requieren el acceso a
una base de datos situada en el servidor, como por ejemplo un banco.
Los principales lenguajes de programación existentes del lado del servidor son: ASP, JSP,
CGI, PHP (Publicaciones Vértice, 2005).
Una vez determinado el equipo multidisciplinario que estará a cargo del proyecto, es
deseable que se reúna toda la información posible sobre creación de sitios Web, esto
incluye investigación sobre información tanto teórica como técnica, búsqueda de
bibliografía y normativa, así como la navegación y análisis de aquellos sitios referenciales,
próximos o pares, pasibles de ser emulados (García de León, 2002).
Es importante establecer cuál será la misión del sitio, por más obvio que pueda parecer es
básico para el equipo del trabajo (en acuerdo con el marco institucional mayor), formular la
misión del sitio Web por escrito, discutirla y perfeccionarla. Igualmente se deben
establecer objetivos cumplir por el sitio, es muy posible que estos se modifiquen con el
tiempo, pero es importante que se establezcan como referentes para el trabajo y la acción
futura. Se trata de premisas básicas para la acción: “Se presentará...”; “Contendrá...” ; “Se
priorizará..” ; “Se tendrá presente...” ; ”Se omitirá...” . Se trata de establecer un mínimo
acuerdo de trabajo inicial al que se volverá en forma constante (García de León, 2002).
Un sitio Web debe estar orientado a servir a las necesidades de sus usuarios. Quienes
elaboran una estructura Web deben conocer la audiencia a la cual se dirigen (usuarios
reales) y buscar, identificar y conocer a los posibles usuarios (usuarios potenciales). Toda
página Web debe presentar información útil a los intereses de la audiencia a la que se
dirige y declarar sus objetivos desde un comienzo dejando en claro que es lo que esas
páginas se proponen aportar. Existe un público específico para un producto específico y las
estructuras Web son más eficaces si se piensan y direccionan a audiencias específicas
constantemente estudiadas.
Es importante conocer nuestra primera audiencia destinada y contemplar otras audiencias
posibles, cada día es más frecuente que los sitios Web presente accesos por perfiles donde
toman en cuenta los distintos intereses que pueden llevar a un usuario a visitar un sitio
Web. Es fundamental en esta etapa recolectar la mayor información posible de los
usuarios, de lo contrario, nunca lograremos satisfacerlos ni con los contenidos, ni con los
caminos que diseñamos para ellos.
El conocimiento de la audiencia no se limita a esta primera etapa, deberá ser una acción
constante, a través de las mediciones de impacto ya sea con estudios estadísticos de uso del
servidor, encuestas o conociendo las preguntas de la audiencia, se trata de una tarea clave
para la retroalimentación (García de León, 2002).
Es necesario diseñar un plan de trabajo, un camino tentativo que guíe las acciones futuras
del equipo. El plan de trabajo estará presente a la hora de estructurar la información,
seleccionar los contenidos, elaborar, dar forma a los documentos y evaluar la gestión en su
conjunto. También se deberán establecer las etapas y los tiempos (García de León, 2002).
Se deberá establecer que contenidos presentará el sitio para cumplir su misión y satisfacer
los requerimientos de la institución y la audiencia. Es necesario elaborar un plan de
desarrollo de contenidos, con información básica (a brindar necesariamente en primera
instancia) y ampliatoria, pasible de ser presentada en una etapa posterior. Estas decisiones
deben tomarse en acuerdo con los miembros de la institución.
La información a presentar no puede provenir directamente de textos creados para otro tipo
de medios (textos “planos” básicamente en soporte papel), como aquellos de presentación
institucional en libros, congresos o folletería. Los textos deben ser redactados y
presentados de acuerdo a las exigencias particulares de la escritura Web ¿Cómo deben ser
los textos a presentar en un Web? Deben ser breves, concisos y puntuales (nadie lee la
Web como un libro), muy estructurados que permitan una visión general y la opción a
ampliaciones o profundizaciones mediante enlaces. Deben tener títulos y subtítulos claros y
directos, que permitan gran movilidad, que vinculen a otros textos dentro y fuera del sitio
Web, o sea que no sean planos y permitan un abordaje dinámico y directo.
Las frases deben ser, cortas, simples y claras, redactadas en estilo directo. Se debe prever
además el acceso a documentos de sustento a veces textos extensos como tratados, leyes y
declaraciones, pero deben ser opcionales. Se deben redactar también buenos textos de
anticipación que den a l usuario el mayor número de elementos para saber a qué
información puede acceder si elige seguir navegando. Se deben citar siempre las fuentes del
texto, y la fecha de actualización (García de León, 2002).
Un sitio Web es una estructura de información que posee una expresión gráfica que
permite su visualización y navegación. El formato gráfico debe estar centrado en el usuario
y su accesibilidad y crear un la lógica visual que represente y optimice la lógica de la
estructura de contenidos. Así como se han elaborados pautas para reunir contenidos y
estructurarlos, corresponde en esta etapa, establecer los criterios gráficos que guiarán la
construcción de una primera versión del sitio (García de León, 2002).
Se establecerá también la paleta de colores, los tipos de letras a usar y sus tamaños,
los cabezales y los pies de cada página también según niveles (García de León,
2002).
Caja de herramientas. Para reunir y normalizar todos los recursos gráficos usados
se crea las Cajas de Herramienta, que incluye cuándo y cómo usarlos. Las Cajas de
Herramientas sustentan la identidad visual corporativa. Muchas veces está
normalización se incorpora al Manual de Estilo o da inicio a este. Algunas
organizaciones desarrollan un Manual de Identidad Visual Corporativa.
El rojo que se ha adoptado como "rojo Universidad del Valle" en su versión para Internet
es el rojo puro, que resulta del número hexadecimal FF0000 (expresado en valor RGB).
Este color se deberá utilizar únicamente dentro del logo símbolo y si fuere necesario, en el
título principal del documento, pero nunca se deberá utilizar dentro de los colores de los
textos, enlaces, subtítulos y enlaces visitados de las páginas en HTML. Esto se hará para
mantener como un color independiente de todos los demás al "rojo Universidad del Valle"
(García de León, 2002).
Los sitios Web giran en torno a su la página de acceso. Esta cumple una función clave, es
la puerta de entrada a toda la estructura desarrollada, la representa. Desde la página de
acceso se debe poder visualizarse la estructura completa del sitio y las formas de recorrerlo.
Le corresponde responder al usuario las siguientes preguntas:
¿Dónde está?
¿Quién está a cargo?
¿Qué puede encontrar?
¿Cómo?
Ha de contener los datos completos del sitio, su nombre y el de la entidad que lo genera,
el o los logotipos, los acrónimos si los hubiera, datos de los responsables, dirección,
teléfonos, correo electrónico, derechos de autor y fecha de actualización. Deber suministrar
también una breve explicación breve del propósito del sitio, y si corresponde, de la misión
de la organización que lo presenta. El diseño de la página principal debe corresponderse
con las decisiones de navegación. La calidad de uno es paralela a la calidad del otro, una
buena estructura de navegación necesita un buen punto de acceso que la muestre y oriente
en su recorrido. Así como, una página de acceso solo es buena si representa con justicia la
estructura que se propone anticipar (García de León, 2002).
Una mala de navegación puede echar por tierra los esfuerzos de selección de contenidos
estructuración y diseño gráfico. Un sitio Web bien diseñado deber prever las necesidades
de sus usuarios y también velar porque éstos encuentren la información que necesitan con
el mínimo esfuerzo. Los contenidos requieren una forma adecuada tanto de ser
estructurados como de ser recorridos. Si una estructura muy rica, no es fácilmente
abordable está condenada a naufragar. En ese caso es muy posible que los usuarios escojan
sitios de menor calidad pero más accesibles.
Las opciones de navegación deben ser claras, de formato constante (siempre el mismo
icono en el mismo sitio). Poder recorrer el sitio sin perderse mediante la presencia de una
barra de navegación, de un mapa del sitio, un sumario, un buscador interno indica
preocupación por brindar orientación al usuario. Es recomendable que la estructura sea
simple, e indique, en cada paso, los caminos posibles, nada puede quedar escondido o “ser
descubierto” accidentalmente. Por otra parte la necesidad de “scroll” debe ser minimizada,
cuando los documentos lo requieran por su extensión debe permitirse accesos puntuales.
El número de clicks que debe efectuar el usuario para acceder a los contenidos buscados
debe minimizarse. Se debe atender si: el usuario sabe dónde está; puede ir a la página que
lo llevó a la actual; tiene acceso directo a la página principal; puede acceder al resto del
menú; puede acceder al nivel inmediatamente anterior; existe un enlace que lo lleve a lo
alto del documento; le es posible saltar a diferentes apartados dentro de una misma página
y, por supuesto, si sabe qué tiene para recorrer. Estas decisiones serán incorporadas a los
documentos de trabajo (García de León, 2002).
Todas las páginas de un sitio Web deben mantener una imagen homogénea. Un sitio
Web debe tener una identidad visual que permita identificarlo y asociarlo, no solo a partir
de un logotipo o del uso de determinados colores, es deseable: la utilización de los mismos
iconos, siempre en los mismos lugares. Si los iconos proliferan, si se usan distintos iconos
para acceder a una misma función, o si existe una infinidad de fondos, el usuario no
identifica claramente el sitio como un todo, además no lograra asociar un recurso gráfico
específico de una función determinada. Por otra parte la utilización de elementos gráficos
comunes a todas las páginas, favorece la rapidez de carga de éstas, al aprovechar el caché
que incorporan los navegadores.
Las páginas Web deben considerarse una extensión de la entidad que los crea, un espacio
de representación corporativa (García de León, 2002).
Se debe tener siempre presente que un sitio Web es un espacio de acción para un
producto, o la extensión de institución, un ámbito a ser cuidado y promocionado como una
herramienta más de mercadeo. La promoción de un sitio Web debe responder a un plan.
Existen muchas formas distintas de efectuar esa tarea, todas pueden coexistir, ninguna debe
ser descartada (García de León, 2002).
Conocer el impacto en los usuarios; así como las páginas más exitosas o menos
visitadas.
Existe una evaluación que se efectúa a lo largo de las etapas anteriores, donde el equipo
de trabajo confronta aquello que se propuso crear, que planificó y concibió con el producto
que está en curso. Así, cuando se materializa la construcción del sitio a partir del modelo
concebido, se contemplan la opiniones de la entidad responsable, de los usuarios próximos,
en sus distintos perfiles (si es que se trabaja con perfiles), y la operatividad y visualización
del sitio según los distintos navegadores, o la distintas resoluciones de pantalla (García de
León, 2002).
Apenas creado el sitio Web corresponde un análisis global que atienda a su calidad y
cohesión:
Es en esta instancia donde una grilla creada para el control de las pautas de calidad (check
list) es de gran utilidad.
Una vez en marcha el sitio Web debe ser evaluado también por su impacto:
En ese ámbito existe un criterio de medición de impacto llamado WIF (Web Impact
Factor), un indicador que nace del cociente entre el número de citas externas que
recibe un sitio Web y el tamaño de sí mismo expresado en su número páginas. El
WIF puede obtenerse a través de buscadores como Google (www.google.com)
(García de León, 2002).
De hecho, el WIF nunca sustenta por sí mismo una evaluación de calidad, aparece
como un dato más, es una medida relativa, que tiene que ver con la popularidad
(García de León, 2002).
Es posible realizar encuestas a los usuarios, incluso desde el mismo sitio Web en
forma interactiva para conocer en forma sus opiniones, el valor estadístico es
discutible pero pueden proporciona r información útil y de primera mano (García de
León, 2002).
Es deseable crear un plan de evaluaciones periódicas para los distintos aspectos a atender:
actualización de contenidos, chequeo de enlaces, incorporación de documentos, entre otros
mas, se debe designar también los responsables de cada evaluación dentro del equipo. Este
plan de evaluación debe ser también evaluado periódicamente (García de León, 2002).
4.1 Navegabilidad.
Son muchas las maneras a través de las cuales podemos definir el concepto de
“navegabilidad”. De cara al análisis que ahora estamos realizando, nos referiremos a la
capacidad que tiene el usuario de desplazarse por un sitio web en cuestión. La
navegabilidad se concentra, en primer lugar, en la página de inicio de un sitio web, y debe
guardar una relación estrecha con la satisfacción de necesidades de los diferentes tipos de
usuario que visitan el lugar. Diremos que hay una buena navegabilidad si un tipo de usuario
encuentra en la página de inicio (y también en el resto del sitio web) una buena
accesibilidad de enlaces que le conducen a lo que está buscando. Y diremos que el sitio
web posee una navegabilidad negativa si ocurre lo contrario.
Refiriéndonos al ejemplo que hemos planteado al hablar de un sitio web de una ONG,
diremos que hay una buena navegabilidad si un tipo de usuario –por ejemplo, aquel que
desea hacerse socio mediante una aportación económica fija todos los meses– encuentra de
una manera fácil, accesible, rápida y sencilla todos aquellos enlaces que le conducen a los
contenidos que le son necesarios para satisfacer esa necesidad (Jaime Alonso, 2007).
Puede llevarse a cabo un conjunto de preguntas sobre los enlaces, las cuales nos serán de
utilidad para mejorar la navegabilidad del sitio:
Se han establecido una serie de aspectos relacionados con la navegabilidad, que algunos
evaluadores incluyen en el criterio de funcionalidad.
La planificación de los recursos y estrategias de navegación a la hora de diseñar un sitio
web es fundamental para conseguir un resultado óptimo de localización de la información y
de orientación para el usuario. Por esa razón, se han valorado tres elementos en este
apartado (Pinto et al, 2004):
4.2 Usabilidad.
Todos somos conscientes de que la web se está convirtiendo en un elemento clave, tanto
en el desarrollo de las empresas como de las instituciones, ofreciendo información y una
amplia gama de servicios a través de la misma.
A pesar de ello, la web (o Internet) sigue sin ser indispensable para un extensa parte de la
población y conseguir que se conviertan en internautas y/o futuros clientes on-line
dependerá directamente de su facilidad de uso, es decir, de su usabilidad.
Dicha usabilidad aporta el enfoque imprescindible para que las páginas de una empresa o
entidad tengan el suficiente atractivo para que el visitante no sólo se quede y las visite, sino
que regrese en el futuro. Para ello el diseño de las páginas, sus funciones, mensajes y
contenidos deben estar diseñados e implantados para que lo pueda usar cualquier persona
(Lorés et al, 2004).
Los beneficios que la usabilidad puede aportar a la implementación de sitios web deben
mirarse desde varias ópticas distintas:
Desarrollo:
Usuario:
Permiten una mayor productividad y una reducción del esfuerzo.
La confianza que produce la facilidad de uso facilitará su “fidelización” (el
visitante volverá y posiblemente recomendará nuestro sitio a sus conocidos
y amistades).
Comercial:
Permite un mejor marketing.
Garantiza aplicaciones más competitivas.
Menor soporte al cliente.
Facilidad en sustituciones y rotación de personal (ventas) (Lorés et al, 2004).
La usabilidad es una característica que mide qué tan intuitiva y fácil de usar es una
página web para el usuario común (Ortega, 2006).
Mide 3 grandes aspectos como se muestra a continuación:
2.- El arte y la ciencia de organizar y rotular sitios web, intranets, comunidades en línea y
software para soportar la usabilidad y la buscabilidad (la capacidad de poder buscar y
encontrar un sitio).
En esta definición además llama la atención la referencia a “el arte y la ciencia”. Lo que
esta frase quiere decir es que la AI requiere tanto de rigurosidad y precisión como de
creatividad, talento y experiencia. El profesional de la AI debe ser tanto científico como
artesano.
Siguiendo con la definición consensuada por los fundadores de AIfIA, se da especial
importancia a la organización y rotulado de los sistemas. La organización de la información
es materia central de la biblioteconomía. El rotulado consiste en poner un nombre o
etiqueta a cada uno de los elementos de la clasificación, a las categorías. También pasa por
poner títulos a cada página y dar nombre a todos los botones que realizan una acción en el
sistema. Todos ellos deben ser descritos en el lenguaje de los usuarios y conservarán cierta
consistencia, formando parte de un único sistema.
AIfIA incorpora también en el segundo punto el diseño del software a que forma parte de
los sistemas de información, es una definición inclusiva que recoge todas las dimensiones
descritas por Garrett en su modelo “los elementos de la experiencia de usuario”, como se
muestra en la figura 4.2. Es bajo esta noción amplia de AI, que abarca elementos como el
diseño de información y diseño de interacción, que proponemos el presente artículo y su
modelo final (Baeza-Yates et al, 2004).
La arquitectura de la información se divide a su vez en dos grupos que son los siguientes:
Para crear interacción con las aplicaciones, y que sean intuitivas, deben ser diseñadas de
acuerdo con las estructuras mentales y lenguaje de los usuarios lo cual se logra a través de
una serie de métodos que incorporan la investigación de usuarios como parte central del
proceso de diseño (Baeza-Yates et al, 2004).
2.- Diseño de interfaces. Busca organizar cada página o pantalla del sistema de la manera
más clara posible. En esta área la clave es priorizar mediante el contraste. Las restricciones
de tamaño y resolución de pantallas no dejan espacio para la sutileza, todos los elementos
deberán estar ordenados en una clara prioridad visual que facilite su entendimiento (Baeza-
Yates et al, 2004).
Sin embargo esto no siempre es así. En muchas ocasiones, los sitios se convierten en
obstáculos de factor entre el usuario y la fuente de información. Una de las razones por lo
que esto puede ocurrir se debe a que los autores de las páginas las han elaborado sin tener
en consideración los más mínimos principios que garanticen que el documento sea
aprovechado en su plenitud. No los han elaborado considerando su usabilidad (Baeza-Yates
et al, 2004).
Las páginas ASP, también llamadas páginas activas son páginas que contienen el código
HTML, Script de cliente y un Script que se ejecuta en el servidor, dando como resultado
código HTML.
Especificando que al cargar una página ASP en nuestro navegador, no se carga la página
ASP como tal, sino el resultado de la ejecución de la página ASP o sea la salida de la
página ASP y que se trata de código HTML.
ASP (Active Server Page) es un lenguaje de programación para Web y con la ayuda de
HTML pues se puede crear una página Web.
Hay que destacar que ASP es una tecnología propietaria de Microsoft y que el uso de esta
tecnología implica el uso de los productos de Microsoft (Acosta, 2008).
Ciertamente ASP es una mezcla entre una página HTML y un programa que da como
resultado una página HTML que es enviada al cliente (navegador).
Para que ASP sea una página que hoy en día tenga bastante aceptación en el mundo
cibernauta ha tenido que sufrir diversas transformaciones; desde sus inicios que en un
principio no tenía mucha aceptación hasta hoy en que la mayoría de empresas desea
desarrollar sitios Web (Acosta, 2008).
El ASP ha ido evolucionando, desde sus inicios con CGI que sólo permitía escribir un
programa ejecutable en prácticamente cualquier lenguaje, que era capaz de leer lo que un
cliente enviaba desde un formulario; pasando por el ASP 1, ASP 2, ASP 3 y hasta ASP.
NET en el que se puede modificar (Acosta, 2008).
Ventajas:
Es liviano.
Se puede utilizar en cualquier computadora que esté conectada a la red que tenga
instalado un navegador.
Es muy fácil de programar y tiene muchas utilidades que con una breve línea de
aprendizaje pueden ser modificadas a su gusto.
Tiene la facilidad de conectarse con la base de datos, que hace que sea muy fácil.
Desventajas:
Tiene que correr en PCs normales que tengan Windows y un servidor Web (Acosta,
2008).
5.2 Perl.
Perl es la alternativa más popular a PHP, seguramente porque es el lenguaje más antiguo
también dentro de las alternativas. En internet nos encontramos numerosos recursos que
utilizan Perl, muchos de las aplicaciones "open source" requieren tener Perl instalado
correctamente. Perl tiene una ventaja y es que es muy flexible, y también tiene una gran
cantidad de módulos ya escritos.
Bien escritos los scripts en Perl se asemejan bastante a PHP. La principal causa de la sucia
apariencia de Perl es por la afición de sus desarrolladores a la escritura en "una línea"
empaquetando numerosas funcionalidades en una sola línea de código (Muñoz, 2007).
La razón de mayor peso es que es utilizado por millones de páginas webs para validar
formularios, crear cookies, detectar navegadores y mejorar el diseño, su fácil aprendizaje lo
hace un lenguaje muy demandado (Muñoz, 2007).
5.4 PHP.
PHP usa una mezcla entre interpretación y compilación para intentar ofrecer a los
programadores la mejor mezcla entre rendimiento y flexibilidad.
PHP compila para tu código una serie de instrucciones (llamadas opcodes) siempre que
estas son accedidas. Estas instrucciones son entonces ejecutadas una por una hasta que el
script termina. Esto es diferente a la manera convencional de compilación de lenguajes
como C++ donde el código es compilado a código ejecutable que es después ejecutado. Php
es recompilado cada vez que se solicita un script. Una ventaja importante de interpretar el
código es que toda la memoria usada por tu código es manejada por PHP, y el lenguaje
automáticamente vacía esta memoria cuando el script finaliza. Esto significa que no
tenemos que preocuparnos de las conexiones a la base de datos, porque PHP lo hará por
nosotros (Muñoz, 2007).
Está disponible para muchos sistemas (GNU/Linux, Windows, UNIX, entre otros).
Existen multitud de extensiones: para conectar con bases de datos, para manejo de
sockets, para generar documentos PDF, para generar dinámicamente páginas en
Flash, entre otros.
En caso de que un cliente falle (por error hardware, virus, entre otros) se puede
seguir usando el sistema desde otro cualquiera que tenga un navegador web con
conexión al servidor (Palomo et al, 2009).
Para incluir código PHP basta con precederlo de la etiqueta <?php, y cerrarlo con ?>. Si
el servidor web está correctamente configurado, detectará código PHP y, en vez de
proporcionarle el contenido de la página directamente al cliente (lo que significaría que
recibiría el código fuente del programa), ejecuta el programa y devuelve su resultado al
navegador (Palomo et al, 2009).
Es uno de los lenguajes de programación más populares, la gran fluidez y rapidez de sus
scripts y su prometedor futuro, desarrollar aplicaciones Webs utilizando lenguajes como C
o COBOL son cosas del pasado (Muñoz, 2007).
6.1.1. Notepad++.
Multi-Vista. Se puede usar dos vistas al mismo tiempo. Esto significa que puede
visualizar (editar) dos documentos diferentes a la vez como se ve en la figura 6.3.
También se puede visualizar y editar un mismo documento en vistas y posiciones
diferentes. La modificación del documento en una vista quedará reflejada también
en la otra (es decir se modifica el mismo documento a pesar de que en realidad está
viendo una copia (Belmonte, 2009).
Puntos de marca. Tan sólo con hacer clic en el margen de marcas (situado justo a
la derecha del margen de número de línea) o pulsar Ctrl+F2 puede establecer o
borrar un punto de marca de libro. Para ir a un punto de marca, pulse F2 (Siguiente
marcador) o Shift+F2 (Anterior marcador). Para borrar todos los marcadores, ir al
menú Buscar->Borrar todos los puntos de marca. Figura 6.6 (Belmonte, 2009).
6.1.3 NetBeans.
¿Qué es NetBeans?
Desarrollar aplicaciones:
De escritorio.
Web.
Mobile.
Enterprise.
Con:
Java.
C/C++.
Ruby on Rails.
PHP, Groovy, Python, Javascript.
Entre otras cosas más (Cerda, 2009).
Características de NetBeans:
Los sistemas operativos con los que funciona son los siguientes: Binarios para
OpenSolaris, Linux, Windows y Mac OS (Cerda, 2009).
Perfiles.
Analizador de Código.
Soporte para CVS.
Inspectores.
Soporte FTP.
Depuración Remota.
Descripción de funciones en la terminación de código.
Búsqueda de ficheros.
Impresión.
Sangrado de código (Möhrke, 2008).
Comentarios: como en C, /* … */ y //
Ejemplo:
<HTML>
<HEAD>
<TITLE>Mi primer programa en PHP</TITLE>
</HEAD>
<BODY>
<?PHP
print (“<P>Hola mundo</P>”);
?>
</BODY>
</HTML> (González, 2007)
a) Sin \n
print (“<P>Párrafo 1</P>”);
Código PHP print (“<P>Párrafo 2</P>”);
b) Con \n
Salida Párrafo 1
Párrafo 2
Ejemplo:
<HTML>
<HEAD>
<TITLE>Título</TITLE>
<?PHP
// Incluir bibliotecas de funciones
require ("conecta.php");
require ("fecha.php");
require ("cadena.php");
require ("globals.php");
?>
</HEAD>
<BODY>
<?PHP
include ("cabecera.html");
?>
// Código HTML + PHP
...
<?PHP
include ("pie.html");
?>
</BODY>
</HTML>
(González, 2007)
Funciones de interés:
Ejemplos:
$a = 9;
print ‘a vale $a\n’; // muestra a vale $a\n
print “a vale $a\n”; // muestra a vale 9 y avanza una línea
print “<IMG SRC=‘logo.gif’>”; // muestra <IMG SRC=‘logo.gif’>
print “<IMG SRC=\”logo.gif\”>”; // muestra <IMG SRC=“logo.gif”>
6.2.3 Variables.
Ejemplo:
$valor = 5;
print “El valor es: “ . $valor . “\n”;
print “El valor es: $valor\n”; // ojo: comillas dobles
Resultado:
El valor es: 5.
Variables variables.
Ejemplo:
$a = "hola";
$$a = "mundo";
print "$a $hola\n";
print "$a ${$a}";
Resultado:
hola mundo
hola mundo
<?PHP
$mensaje_es="Hola";
$mensaje_en="Hello";
$idioma = "es";
$mensaje = "mensaje_" .
$idioma;
print $$mensaje;
?>
<?PHP
$mensaje_es="Hola";
$mensaje_en="Hello";
$idioma = "en";
$mensaje = "mensaje_" .
$idioma;
print $$mensaje;
?>
6.2.4 Constantes.
Definición de constantes:
define (“CONSTANTE”, “hola”);
print CONSTANTE;
No llevan $ delante.
Sólo se pueden definir constantes de los tipos escalares (boolean, integer, double,
string).
Operadores aritméticos:
+, -, *, /, %, ++, --
Operador de asignación:
=
Operadores combinados: .=, +=, y otros más.
$a = 3; $a += 5; a vale 8
$b = “hola ”; $b .= “mundo”; b vale “hola mundo”
Equivale a $b = $b . “mundo”;
Operadores de comparación:
==, !=, <, >, <=, >= y otros.
Operadores lógicos:
and (&&), or (||), !, xor
and/&& y or/|| tienen diferentes prioridades
Operadores de cadena:
concatenación: . (punto)
asignación con concatenación: .=
Precedencia de operadores (de mayor a menor):
++, --
*, /, %
+,-
<, <=, >, >=
==, !=
&&
||
and
or
Estructuras selectivas:
if-else
switch
Estructuras repetitivas:
while
for
foreach
if if (condición1)
(condición) sentencia 1
else if (condición2)
sentencia 2
if ...
(condición) else if (condición n)
sentencia n
sentencia 1 else
else sentencia n+1
<?PHP
if ($sexo == ‘M’)
$saludo = "Bienvenida, ";
else
$saludo = "Bienvenido, ";
$saludo = $saludo . $nombre;
print ($saludo);
?> Figura 6.14 Ejemplo if-else (González, 2007)
Esto se ve en la figura 6.14.
switch (expresión)
{
case valor_1:
sentencia 1
break;
case valor_2:
sentencia 2
break;
…
case valor_n:
sentencia n
break;
default
sentencia n+1
}
Mismo comportamiento que en C, sólo que la expresión del case puede ser integer, float o
string.
switch ($extension)
{
case ("PDF"):
$tipo = "Documento Adobe PDF";
break;
case ("TXT"):
$tipo = "Documento de texto";
break;
case ("HTML"):
case ("HTM"):
$tipo = "Documento HTML";
break;
default:
$tipo = "Archivo " . $extension;
} Figura 6.15 Ventana del ejemplo
switch (González, 2007)
print ($tipo);
El resultado de esto se ve en la figura 6.15.
<?PHP
print ("<UL>\n");
$i=1;
while ($i <= 5)
{
print ("<LI>Elemento $i</LI>\n");
$i++;
}
print ("</UL>\n"); Figura 6.16 Ventana de ejemplo de la estructura
while repetitiva (González, 2007)
?>
El resultado de esto se ve en la figura 6.16.
<?PHP
print ("<UL>\n");
for ($i=1; $i<=5; $i++)
print ("<LI>Elemento $i</LI>\n");
print ("</UL>\n");
?>
El resultado de esto se ve en la figura 6.17.
Figura 6.17 Ventana de ejemplo de la
estructura for repetitiva. (González, 2007)
6.2.7 Funciones.
Ejemplo:
function suma ($x, $y)
{
$s = $x + $y;
return $s;
}
$a=1;
$b=2;
$c=suma ($a, $b);
print $c;
Por defecto los parámetros se pasan por valor.
Salida:
Estimado Sr.:
Estimado Prof.:
Los argumentos con valores por defecto deben ser siempre los últimos:
Salida:
6.2.8 Tablas.
Sintaxis:
array ([clave =>] valor, ...)
La clave es una cadena o un entero no negativo. El valor puede ser de cualquier tipo válido
en PHP, incluyendo otro array.
Ejemplos:
$color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255);
$medidas = array (10, 25, 15);
Acceso:
$color[‘rojo’] // No olvidar las comillas
$medidas[0]
El primer elemento es el 0.
Ejemplos:
foreach ($color as $valor)
print “Valor: $valor<BR>\n”;
foreach ($color as $clave => $valor)
print “Clave: $clave; Valor: $valor<BR>\n”;
Salida:
Valor: 101
Valor: 51
Valor: 255
Clave: rojo; Valor: 101
Clave: verde; Valor: 51
Clave: azul; Valor: 255
Algunos ejemplos:
rtrim(), ltrim(), trim(). Eliminan caracteres a la derecha, a la izquierda o por ambos lados
de una cadena.
stringrtrim ( string str [, string charlist])
Ejemplo:
$fecha = date ("j/n/Y H:i");
print ("$fecha");
Resultado:
26/9/2005 17:36
Ejemplo:
$fecha = date ("j/n/Y", strtotime(“5 april 2001"));
print ("$fecha");
Resultado:
5/4/2001
Funciones de arrays.
array_count_values(). Calcula la frecuencia de cada uno de los elementos de un array.
Programa/Car Idioma en Autocompleta Multidocu Resalt- Fácil Facilidad Manejo Multi- Gratu- Man- Base de To-
acteríst-ica español. do de código. mento. ado de man- de compila- de platafo- ito. ejo de datos tal.
sintaxis. ejo. ción. proye- rma. base integr-
ctos de ada.
grand- datos.
es.
Notepad++
8/11
PHP
Designer 8/11
NetBeans
10/11
PDT-
Eclipse 9/11
Zend
Studio 8/11
Como se ve, todos los programas que se compararon, en la actualidad son muy eficientes
para el desarrollo de PHP y la mayoría de ellos se pueden ejecutar en cualquier plataforma,
unos programas son más complejos que otros. Pero al aprender a utilizar uno de estos
programas nos ayuda mucho en el desarrollo de contenido dinámico para una página web.
En la tabla donde se hizo la comparación de los programas, el programa que salió más alto
según las características que yo consideré que debe tener el programa es el NetBeans, ya
que nada mas le falta tener una característica que es la de base de datos integrada.
Pero el que yo considero que es el mejor de estos programas es el Zend Studio porque trae
muchas características que facilitan mas el desarrollo de PHP, y el motivo por el cual salió
bajo es que este programa no es multiplataforma y aparte de esto no es gratuito, así que si
se quiere adquirir se tiene que pagar por él y no puedes ejecutarlo en cualquier sistema
operativo.
La conclusión a la que llegue es que si se quiere desarrollar PHP sin ningún costo y con un
buen programa que facilite la programación, yo recomiendo a NetBeans y si se cuenta con
el dinero suficiente para comprar el Zend Studio, lo recomiendo en lugar de NetBeans,
aunque este último también es muy bueno.
Referencias bibliográficas.
Acosta Pintado Eliana. “Lenguaje de programación para Web: ASP”. [En línea].
Universidad católica Santo Toribio de Mogrovejo. Facultad de educación. <http:
//www.scribd.com/doc/2413026/Lenguaje-de-programacion-para-Web-ASP>. [Consulta:
27 noviembre 2009].
Cerda Felipe. “Netbeans 6.5 El único IDE que necesitas.” [En línea]. Sun Campus
Ambassador. <http://www.techbloog.com/talks/netbeans65es_cl.pdf>.
[Consulta: 28 noviembre 2009].
García de León, Alicia. “Etapas en la creación de un sitio web”. En: Biblios, 2002, octubre-
diciembre, v. 14, pp. 18.<http://dialnet.unirioja.es/servlet/articulo?codigo=293019>
[Consulta: 26 octubre 2009].
Ortega Elodia. “La usabilidad y el diseño web". [En línea]. Universidad de sonora.
Departamento de psicología y ciencias de la comunicación. < psicom.uson.mx>. [Consulta:
16 noviembre 2009].
Pedregosa Pareja Miguel Ángel. Diseño y Programación de Páginas Web, España 2005, pp
385.
Pinto Molina María, José Luis Alonso berrocal, José Antonio Cordón García, Viviana
Fernández Marcial, Carlos García Figuerola, Javier García marco, Carmen Gómez
Camarero, Ángel Francisco Zazo y anne-vinciane Doucet. “Análisis cualitativo de la
visibilidad de la investigación de las universidades españolas a través de sus páginas web”.
[En línea]. Universidad de granada, universidad de salamanca, universidad de san pablo
CEU, universidad de Zaragoza, universidad de Málaga.
<http://redc.revistas.csic.es/index.php/redc/article/view/157/211>
[Consulta: 16 noviembre 2009].