Trabajo
Diapositiva
Dorielys - Programaciòn
domingo, 24 de julio de 2016
Bluefish
Bluefish es un software editor HTML multiplataforma
POSIX y con licencia GPL, lo que lo convierte en software libre.
Bluefish está dirigido a diseñadores web experimentados
y programadores y se enfoca en la edición de páginas dinámicas e interactivas.
Es capaz de reconocer diversos lenguajes de programación y de marcas.
Bluefish corre en muchos de los sistemas operativos
compatibles con POSIX (Portable Operating System Interface) tales Linux,
FreeBSD, MacOS-X, OpenBSD, Solaris y Tru64.
Emplea principalmente las bibliotecas GTK y C posix. La
última versión que trabajó con GTK 1.0 ó 1.2 es la 0.7. La versión actual
requiere como mínimo GTK versión 2.0 (o superior), libpcre 3.0 (o superior),
libaspell 0.50 o superior (opcional) para corrección de ortografía y gnome-vfs
(opcional) para archivos remotos.
Es importante anotar que el programa no es oficialmente
parte del proyecto Gnome, pero es utilizado a menudo en dicho entorno.
Los usuarios también pueden acceder a los recursos en
línea, tales como servidores FTP o directorios WebDAV, de forma transparente, a
través de Gnome VFS, una capa de abstracción al sistema de archivos.
Bluefish es un proyecto de software libre en el cual
las listas de correo juegan un papel muy importante. A través de ellas,
usuarios, desarrolladores y probadores pueden dar su opinión respecto a nuevas
características, bugs y mejoras respecto a la GUI. Como todo buen proyecto de
software libre sigue las pautas marcadas en el bazar, teniendo como motivación
principal el bien común, del que todos se pueden obtener beneficio.
Historia
El desarrollo del proyecto Bluefish inicia bajo un
nombre diferente. Un buen (y a la vez libre) editor de texto dirigido al
desarrollo web no estaba disponible. Es por ello que Olivier Sessink inicia el
proyecto Prosite en el año de 1997, es importante resaltar que prácticamente
simultáneamente Chris Mazuc trabajaba en un editor HTML. Gracias a una lista de
correo de GTK ambos desarrolladores comentan sus iniciativas y deciden trabajar
juntos. Olivier tiene un editor básico mientras que Chris posee muchos diálogos
HTML. Mezclan su código y este nuevo proyecto recibe el nombre de Thtml.
Posteriormente se incorpora al equipo de trabajo Neil
Millar quien se encarga de agregarle el selector de colores y la integración
con Weblint. Surge entonces la necesidad de un logo, mucho más fresco y
llamativo, pues iban a aparecer las primeras versiones públicas y se quería
ofrecer un producto con una imagen y un nombre más atrayente. Es en este
momento, cuando Neil plantea como nuevo nombre: Bluefish y acompaña su
propuesta de un hermoso pez azul que sugiere como logo. Estos continúan siendo los
nombres y logo actuales.
Con el paso del tiempo se unieron más desarrolladores y
Bluefish comenzó a acaparar la atención de la comunidad de código abierto.
Desde un principio Bluefish ha tenido como ideal
principal la libertad. Olivier Sessink se ha destacado por su interés hacia el
desarrollo de propuestas open-source. Esta misma preocupación la tenía Chris Mazuc.
Bluefish, como otros proyectos, tiene siempre dos
versiones de la aplicación: una estable y otra de desarrollo (svn). La versión
de desarrollo incluye las correcciones efectuadas y nuevas funcionalidades. Con
este sistema, siempre tienen una versión estable para ofrecer a los usuarios y
una versión de desarrollo que refleja la dirección que tomará el proyecto.
Adicionalmente se tiene una versión “Snapshot”. Los Snapshot son hechos con
regularidad para proveer a usuarios de las últimas funcionalidades sin
necesidad tratar con SVN.
Bluefish cuenta con características tales como:
- Rapidez, posibilidad de abrir múltiples archivos simultáneamente.
- Soporte multiproyecto.
- Soporte para archivos remotos mediante gnome-vfs, marcado de sintaxis personalizable basado en expresiones regulares compatibles con Perl,
- Soporte para sub-patrones y patrones predefinidos (para HTML, PHP, Javascript, JSP, SQL, XML, Python, Perl, CSS, ColdFusion, Pascal, R, Octave/Matlab).
- Diálogos para etiquetas HTML.
- Asistentes para creación fácil de documentos.
- Creación de tablas.
- Marcos (frames)
- Soporte para múltiples codificaciones
- Trabajo con diferentes juegos de caracteres.
- Numeración de líneas
- Menús desplegables.
- Barras de herramientas configurables.
- Diálogo para insertar imágenes.
- Buscador de referencia de funciones.
- Integración personalizable con varios programas (make, javac, etc).
- Resaltado de sintaxis (C, Java, JavaScript, Python, Perl, ColdFusion, Pascal, R y Octave).
- Traducciones completas a aproximadamente veintidós idiomas entre ellos: portugués brasileño, búlgaro, chino, danés, finés, francés, alemán, húngaro, italiano, noruego, polaco, portugués, español, sueco, japonés, y tamil.
Los desarrolladores pretenden producir un código que no
genere accidentes ni pérdidas de memoria, eso no siempre es fácil de hacer. Las
fugas y accidentes a menudo se fijan en CVS tan pronto como son descubiertos y
perseguidos además de la gran base de usuarios de Bluefish, los desarrolladores
lo utilizan para su trabajo diario, por lo tanto la fijación de los errores y
la prevención de accidentes es siempre una prioridad. Un ejemplo es la cuestión
de las funciones de copiar / pegar un poco lento.
El objetivo de Bluefish no es tanto para escribir
código para el aspirante o autor, ya que es proporcionar una manera fácil de
programar por la gran cantidad de etiquetas disponibles para la creación de
contenidos web sin necesidad de llevar un libro de referencia. Para ello,
ofrece no menos de 10 barras de herramientas con pestañas, con botones que
proporcionan todo, desde el formato de texto básico (que favorece marcado
estructural), de Javascript (se proporciona una plantilla mouseover útil, por
ejemplo) para PHP (en forma de una referencia en línea para funciones comunes.)
Compilación
La Compilación Bluefish requiere unos paquetes
adicionales. Sin embargo, éstos existen para muchas plataformas, motivo por el
cual es probable que no sea necesario compilar. No obstante, si quiere hacerlo
las exigencias son: Archivos de Desarrollo (Development files)
- gcc - Bluefish ha sido probado para compilar sobre los 2.95, 3.x, y 4.0.x.
- gmake o BSD make.
- autoconf - sólo si va a compilar desde CVS.
- gtk v2.4 como mínimo - sólo si va a compilar desde CVS.
- gnome_vfs 2.6 – sólo si va a compilar desde CVS.
- libxml 2.0 – sólo si va a compilar desde CVS.
martes, 12 de julio de 2016
Arquitectura de Desarrollo Web
El modelo
Cliente/Servidor reúne las características necesarias para proveer esta
infraestructura, independientemente del tamaño y complejidad de las operaciones
de las organizaciones públicas o privadas y, consecuentemente desempeña un
papel importante en este proceso de evolución.
Modelo
Cliente Servidor
Éste
es un modelo que intenta proveer usabilidad, flexibilidad, interoperabilidad y
escalabilidad en las comunicaciones.
término Cliente/Servidor fue usado por primera vez en 1980 para a PC’s en red.
El
modelo cliente-servidor consiste básicamente en un cliente que realiza
peticiones a otro programa (el servidor) que le da respuesta.
La
tecnología denominada Cliente -Servidor es utilizada por todas las aplicaciones
de Internet/Intranet. Un cliente funciona en su ordenador local, se comunica
con el servidor remoto, y pide a éste información. El servidor envía la
información solicitada
El
cliente es el proceso que permite al usuario formular los requerimientos y
pasarlos al servidor, se le conoce con el término front-end.
Las
funciones que lleva a cabo el proceso cliente se resumen en los siguientes
puntos: • Administrar la interfaz de usuario. • Interactuar con el usuario. •
Procesar la lógica de la aplicación y hacer validaciones locales. • Generar
requerimientos de bases de datos. • Recibir resultados del servidor. •
Formatear resultados.
TIPOS DE
CLIENTES
1. "cliente flaco":
·
Servidor
rápidamente saturado.
·
Gran
circulación de datos de interfase en la red.
2. "cliente gordo":
·
Gran
circulación de datos inútiles en la red.
![]() |
Servidor:
Es el proceso encargado de atender a múltiples clientes que hacen peticiones de
algún recurso administrado por él. Al proceso servidor se le conoce con el
término back-end [15]. El servidor normalmente maneja todas las funciones
relacionadas con la mayoría de las reglas del negocio y los recursos de datos.
Las
funciones que lleva a cabo el proceso servidor se resumen en los siguientes
puntos: • Aceptar los requerimientos de bases de datos que hacen los clientes.
• Procesar requerimientos de bases de datos. • Formatear datos para
trasmitirlos a los clientes. • Procesar la lógica de la aplicación y realizar
validaciones a nivel de bases de datos.}
TIPOS DE
SERVIDOR
Características
de sistema cliente servidor:
Tipos
Los sistemas Cliente-Servidor pueden ser de muchos tipos, dependiendo de las aplicaciones que el servidor pone a disposición de los clientes. Entre otros, existen:
Ventajas
Desventajas
Modelo de tres capas
La arquitectura está basada en un
modelo de tres capas: Capa de datos, Capa de lógica de negocio y Capa de presentación, que soportan todas las
funcionalidades necesarias.
La
programación por capas es una arquitectura cliente-servidor en el que el
objetivo primordial es la separación de la lógica de negocios de la lógica de
diseño; un ejemplo básico de esto consiste en separar la capa de datos de la
capa de presentación al usuario.
La ventaja principal de este estilo es que el desarrollo se
puede llevar a cabo en varios niveles y, en caso de que sobrevenga algún
cambio, solo se ataca al nivel requerido sin tener que revisar entre código
mezclado.
1. Capa de datos:
Sobre un
modelo de base de datos predefinido sobre el que se aplican las distintas
especificaciones de datos tales como:
Dicho
modelo puede nutrirse de la exportación de los datos contenidos en diferentes
aplicaciones de Base de datos, por
ejemplo Microsoft SQL Server.
El
repositorio de datos descansa sobre XML para la
correcta construcción posterior de la capa de presentación y está formada por
uno o más gestores de bases de datos que realizan todo el almacenamiento de
datos, reciben solicitudes de almacenamiento o recuperación de información
desde la capa de negocio. Es donde residen los datos y es la encargada de
acceder a los mismos. Está formada por uno o más gestores de bases de datos que
realizan todo el almacenamiento de datos, reciben solicitudes de almacenamiento
o recuperación de información desde la capa de negocio.
2. Capa de negocio:
En esta capa se establecen todas las reglas que deben cumplirse en el comercio
electrónico. Esta capa se comunica con la capa de presentación, para
recibir las solicitudes y presentar los resultados, y con la capa de datos,
para solicitar al gestor de base de datos almacenar o recuperar datos de él.
Es donde residen los programas que se ejecutan, se reciben las peticiones del usuario y se envían
las respuestas tras el proceso. Se denomina capa de negocio (e incluso de
lógica del negocio) porque es aquí donde se establecen todas las reglas que
deben cumplirse. Esta capa se comunica con la capa de presentación, para
recibir las solicitudes y presentar los resultados, y con la capa de datos,
para solicitar al gestor de base de datos almacenar o recuperar datos
de él. También se consideran aquí los programas de aplicación.
3. Capa de presentación:
Por último existe una tercera
capa denominada de Presentación, en la que se representan todos los aspectos
relacionados con la presentación y diseño de la solución de comercio
electrónico.
La que ve el usuario (también se la denomina
"capa de usuario"), presenta el sistema al usuario, le comunica la
información y captura la información del usuario en un mínimo de proceso
(realiza un filtrado previo para comprobar que no hay errores de formato).
También es conocida como interfaz gráfica y debe tener la característica de ser
"amigable" (entendible y fácil de usar) para el usuario. Esta capa se
comunica únicamente con la capa de negocio.
Todas estas capas pueden residir en un único ordenador, si
bien lo más usual es que haya una multitud de ordenadores en donde reside la
capa de presentación (son los clientes de la arquitectura cliente/servidor).
Las capas de negocio y de datos pueden residir en el mismo ordenador, y si el
crecimiento de las necesidades lo aconseja se pueden separar en dos o más ordenadores.
Así, si el tamaño o complejidad de la base de datos aumenta, se puede separar
en varios ordenadores los cuales recibirán las peticiones del ordenador en que
resida la capa de negocio.
|
Suscribirse a:
Comentarios (Atom)

















