Upload
bbva-innovation-center
View
30
Download
1
Embed Size (px)
DESCRIPTION
En este ebook se recopilan todas las herramientas con las que debes contar para desarrollar en cualquier lenguaje de programación: desde HTML hasta Java, PHP o Python entre otros.BBVA Open4U lanza una serie de ebooks para recopilar la información más interesante para un desarrollador emprendedor. El segundo de estos números se centra en las herramientas de programación haciendo un recorrido por seis de los principales lenguajes que un desarrollador debe conocer y controlar.Si eres desarrollador y quieres sacar el máximo provecho a las diferentes herramientas de programación, en este ebook se recopilan análisis en profundidad sobre seis lenguajes de programación: Python, HTML5, Java, Javascript, PHP y Perl.En este ebook puedes encontrar todos los elementos que un desarrollador debe saber manejar para convertirse en un desarrollador full-stack.
Citation preview
Herramientas de programacioacuten01 Python
02 Html5
03 Java
04 Javascript
05 PHP
06 Perl
PythonUna de las uacuteltimas apuestas del mercado web con una enorme
implantacioacuten entre la comunidad de desarrolladores americana es
el lenguaje de programacioacuten Python que permite la realizacioacuten de
proyectos de forma aacutegil y versaacutetil
BeeWare es algo maacutes que una herramienta de hecho es una caja de herramientas de ayuda
para desarrollar y depurar software en Python
BeeWare
La gran diferencia de BeeWare con un IDE
(entorno de desarrollo integrado) es que cada
herramienta de esa caja puede usarse de forma
independiente del resto
Cada una puede usarse para hacer pequentildeas
tareas y todas a la vez por separado sirven para
poner en marcha grandes proyecto en Python
01 PYTHON BEEWARE
Las herramientas la caja de servicios BeeWare son
CRICKETHerramienta graacutefica para
ejecutar pruebas unitarias No
ofrece muchos detalles de la
ejecucioacuten mientras la suite estaacute
en marcha y no es posible
empezar a buscar fallos hasta
que la ejecucioacuten estaacute completa
Cricket tiene soporte para
Django un framework de
coacutedigo abierto que estaacute escrito
en Python y sirve para
desarrollar aplicaciones web de
forma maacutes raacutepida
BUGJARDepurador de errores de
coacutedigo Los antiguos
depuradores eran buenos por
sus entornos de desarrollo
integrado y por la posibilidad de
depurar errores de forma visual
mientras se produciacutea la
ejecucioacuten El modelo de
depuracioacuten de Python contiene
buenos ganchos de depuracioacuten
Ademaacutes dispone de una
interfaz graacutefica que permite
desplazarse por el coacutedigo para
corregir errores
DUVET Interfaz graacutefica que ayuda a los
desarrolladores a visualizar los
resultados de cobertura de
pruebas devuelto por
coveragepy una herramienta
que funciona para medir la
cobertura de coacutedigo de
programas en Python Este tipo
de acciones sirven para medir la
efectividad de las pruebas
mostrando por separado queacute
partes del coacutedigo se ejercen por
medio de pruebas y cuaacuteles no
01 PYTHON BEEWARE
BeeWare tambieacuten tiene una serie de libreriacuteas para proyectos en Python
TOGAPaquete de herramientas nativo
para cada sistema hecho en
Python y que puede ser usada
para escritorio y moacutevil
iOS TEMPLATEPlantilla que nos permite el
desarrollo de aplicaciones en
lenguaje Python pero
ejecutadas en iOS
ANDROID TEMPLATE Una plantilla para implementar
coacutedigo Python en Android
RUBICONHerramientas que permiten
establecer relaciones entre el
entorno de programacioacuten de
Python y el resto
CASSOWARYImplementacioacuten del algoritmo de
soluciones de limitaciones (el
mismo que usa el motor graacutefico
de Mac OS X e iOS desde 2011)
01 PYTHON BEEWARE
Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con
una interfaz graacutefica de usuario incorporada (GUI) para wxPython Esta herramienta incluye un
inspector de objetos jerarquiacuteas de herencia un depurador especialmente bueno y ayuda
integrada Evidentemente estaacute escrito en Python
BOA Constructor
01 PYTHON BOA CONSTRUCTOR
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PythonUna de las uacuteltimas apuestas del mercado web con una enorme
implantacioacuten entre la comunidad de desarrolladores americana es
el lenguaje de programacioacuten Python que permite la realizacioacuten de
proyectos de forma aacutegil y versaacutetil
BeeWare es algo maacutes que una herramienta de hecho es una caja de herramientas de ayuda
para desarrollar y depurar software en Python
BeeWare
La gran diferencia de BeeWare con un IDE
(entorno de desarrollo integrado) es que cada
herramienta de esa caja puede usarse de forma
independiente del resto
Cada una puede usarse para hacer pequentildeas
tareas y todas a la vez por separado sirven para
poner en marcha grandes proyecto en Python
01 PYTHON BEEWARE
Las herramientas la caja de servicios BeeWare son
CRICKETHerramienta graacutefica para
ejecutar pruebas unitarias No
ofrece muchos detalles de la
ejecucioacuten mientras la suite estaacute
en marcha y no es posible
empezar a buscar fallos hasta
que la ejecucioacuten estaacute completa
Cricket tiene soporte para
Django un framework de
coacutedigo abierto que estaacute escrito
en Python y sirve para
desarrollar aplicaciones web de
forma maacutes raacutepida
BUGJARDepurador de errores de
coacutedigo Los antiguos
depuradores eran buenos por
sus entornos de desarrollo
integrado y por la posibilidad de
depurar errores de forma visual
mientras se produciacutea la
ejecucioacuten El modelo de
depuracioacuten de Python contiene
buenos ganchos de depuracioacuten
Ademaacutes dispone de una
interfaz graacutefica que permite
desplazarse por el coacutedigo para
corregir errores
DUVET Interfaz graacutefica que ayuda a los
desarrolladores a visualizar los
resultados de cobertura de
pruebas devuelto por
coveragepy una herramienta
que funciona para medir la
cobertura de coacutedigo de
programas en Python Este tipo
de acciones sirven para medir la
efectividad de las pruebas
mostrando por separado queacute
partes del coacutedigo se ejercen por
medio de pruebas y cuaacuteles no
01 PYTHON BEEWARE
BeeWare tambieacuten tiene una serie de libreriacuteas para proyectos en Python
TOGAPaquete de herramientas nativo
para cada sistema hecho en
Python y que puede ser usada
para escritorio y moacutevil
iOS TEMPLATEPlantilla que nos permite el
desarrollo de aplicaciones en
lenguaje Python pero
ejecutadas en iOS
ANDROID TEMPLATE Una plantilla para implementar
coacutedigo Python en Android
RUBICONHerramientas que permiten
establecer relaciones entre el
entorno de programacioacuten de
Python y el resto
CASSOWARYImplementacioacuten del algoritmo de
soluciones de limitaciones (el
mismo que usa el motor graacutefico
de Mac OS X e iOS desde 2011)
01 PYTHON BEEWARE
Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con
una interfaz graacutefica de usuario incorporada (GUI) para wxPython Esta herramienta incluye un
inspector de objetos jerarquiacuteas de herencia un depurador especialmente bueno y ayuda
integrada Evidentemente estaacute escrito en Python
BOA Constructor
01 PYTHON BOA CONSTRUCTOR
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
BeeWare es algo maacutes que una herramienta de hecho es una caja de herramientas de ayuda
para desarrollar y depurar software en Python
BeeWare
La gran diferencia de BeeWare con un IDE
(entorno de desarrollo integrado) es que cada
herramienta de esa caja puede usarse de forma
independiente del resto
Cada una puede usarse para hacer pequentildeas
tareas y todas a la vez por separado sirven para
poner en marcha grandes proyecto en Python
01 PYTHON BEEWARE
Las herramientas la caja de servicios BeeWare son
CRICKETHerramienta graacutefica para
ejecutar pruebas unitarias No
ofrece muchos detalles de la
ejecucioacuten mientras la suite estaacute
en marcha y no es posible
empezar a buscar fallos hasta
que la ejecucioacuten estaacute completa
Cricket tiene soporte para
Django un framework de
coacutedigo abierto que estaacute escrito
en Python y sirve para
desarrollar aplicaciones web de
forma maacutes raacutepida
BUGJARDepurador de errores de
coacutedigo Los antiguos
depuradores eran buenos por
sus entornos de desarrollo
integrado y por la posibilidad de
depurar errores de forma visual
mientras se produciacutea la
ejecucioacuten El modelo de
depuracioacuten de Python contiene
buenos ganchos de depuracioacuten
Ademaacutes dispone de una
interfaz graacutefica que permite
desplazarse por el coacutedigo para
corregir errores
DUVET Interfaz graacutefica que ayuda a los
desarrolladores a visualizar los
resultados de cobertura de
pruebas devuelto por
coveragepy una herramienta
que funciona para medir la
cobertura de coacutedigo de
programas en Python Este tipo
de acciones sirven para medir la
efectividad de las pruebas
mostrando por separado queacute
partes del coacutedigo se ejercen por
medio de pruebas y cuaacuteles no
01 PYTHON BEEWARE
BeeWare tambieacuten tiene una serie de libreriacuteas para proyectos en Python
TOGAPaquete de herramientas nativo
para cada sistema hecho en
Python y que puede ser usada
para escritorio y moacutevil
iOS TEMPLATEPlantilla que nos permite el
desarrollo de aplicaciones en
lenguaje Python pero
ejecutadas en iOS
ANDROID TEMPLATE Una plantilla para implementar
coacutedigo Python en Android
RUBICONHerramientas que permiten
establecer relaciones entre el
entorno de programacioacuten de
Python y el resto
CASSOWARYImplementacioacuten del algoritmo de
soluciones de limitaciones (el
mismo que usa el motor graacutefico
de Mac OS X e iOS desde 2011)
01 PYTHON BEEWARE
Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con
una interfaz graacutefica de usuario incorporada (GUI) para wxPython Esta herramienta incluye un
inspector de objetos jerarquiacuteas de herencia un depurador especialmente bueno y ayuda
integrada Evidentemente estaacute escrito en Python
BOA Constructor
01 PYTHON BOA CONSTRUCTOR
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Las herramientas la caja de servicios BeeWare son
CRICKETHerramienta graacutefica para
ejecutar pruebas unitarias No
ofrece muchos detalles de la
ejecucioacuten mientras la suite estaacute
en marcha y no es posible
empezar a buscar fallos hasta
que la ejecucioacuten estaacute completa
Cricket tiene soporte para
Django un framework de
coacutedigo abierto que estaacute escrito
en Python y sirve para
desarrollar aplicaciones web de
forma maacutes raacutepida
BUGJARDepurador de errores de
coacutedigo Los antiguos
depuradores eran buenos por
sus entornos de desarrollo
integrado y por la posibilidad de
depurar errores de forma visual
mientras se produciacutea la
ejecucioacuten El modelo de
depuracioacuten de Python contiene
buenos ganchos de depuracioacuten
Ademaacutes dispone de una
interfaz graacutefica que permite
desplazarse por el coacutedigo para
corregir errores
DUVET Interfaz graacutefica que ayuda a los
desarrolladores a visualizar los
resultados de cobertura de
pruebas devuelto por
coveragepy una herramienta
que funciona para medir la
cobertura de coacutedigo de
programas en Python Este tipo
de acciones sirven para medir la
efectividad de las pruebas
mostrando por separado queacute
partes del coacutedigo se ejercen por
medio de pruebas y cuaacuteles no
01 PYTHON BEEWARE
BeeWare tambieacuten tiene una serie de libreriacuteas para proyectos en Python
TOGAPaquete de herramientas nativo
para cada sistema hecho en
Python y que puede ser usada
para escritorio y moacutevil
iOS TEMPLATEPlantilla que nos permite el
desarrollo de aplicaciones en
lenguaje Python pero
ejecutadas en iOS
ANDROID TEMPLATE Una plantilla para implementar
coacutedigo Python en Android
RUBICONHerramientas que permiten
establecer relaciones entre el
entorno de programacioacuten de
Python y el resto
CASSOWARYImplementacioacuten del algoritmo de
soluciones de limitaciones (el
mismo que usa el motor graacutefico
de Mac OS X e iOS desde 2011)
01 PYTHON BEEWARE
Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con
una interfaz graacutefica de usuario incorporada (GUI) para wxPython Esta herramienta incluye un
inspector de objetos jerarquiacuteas de herencia un depurador especialmente bueno y ayuda
integrada Evidentemente estaacute escrito en Python
BOA Constructor
01 PYTHON BOA CONSTRUCTOR
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
BeeWare tambieacuten tiene una serie de libreriacuteas para proyectos en Python
TOGAPaquete de herramientas nativo
para cada sistema hecho en
Python y que puede ser usada
para escritorio y moacutevil
iOS TEMPLATEPlantilla que nos permite el
desarrollo de aplicaciones en
lenguaje Python pero
ejecutadas en iOS
ANDROID TEMPLATE Una plantilla para implementar
coacutedigo Python en Android
RUBICONHerramientas que permiten
establecer relaciones entre el
entorno de programacioacuten de
Python y el resto
CASSOWARYImplementacioacuten del algoritmo de
soluciones de limitaciones (el
mismo que usa el motor graacutefico
de Mac OS X e iOS desde 2011)
01 PYTHON BEEWARE
Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con
una interfaz graacutefica de usuario incorporada (GUI) para wxPython Esta herramienta incluye un
inspector de objetos jerarquiacuteas de herencia un depurador especialmente bueno y ayuda
integrada Evidentemente estaacute escrito en Python
BOA Constructor
01 PYTHON BOA CONSTRUCTOR
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con
una interfaz graacutefica de usuario incorporada (GUI) para wxPython Esta herramienta incluye un
inspector de objetos jerarquiacuteas de herencia un depurador especialmente bueno y ayuda
integrada Evidentemente estaacute escrito en Python
BOA Constructor
01 PYTHON BOA CONSTRUCTOR
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
La interfaz de usuario estaacute formada por un conjunto de herramientas separadas que se
emplean para crear y depurar aplicaciones desarrolladas con Python
PALETA Esta herramienta permite al desarrollador
acceder a los objetos como botones cuadros
de texto marcos y bien crear paquetes y
moacutedulos para nuestras aplicaciones Es el
primer paso para generar un nuevo de
desarrollo para Python
INSPECTOR A traveacutes de esta herramienta
podemos acceder a los objetos
EDITOR Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al coacutedigo fuente
de la aplicacioacuten que estaacute creando Es en el
editor donde se pueden corregir errores y
ejecutar la aplicacioacuten para identificarlos
Existe alguacuten tutorial interesante en la Red que
puede servir de pauta para iniciados
EXPLORADOR Nos permite navegar y revisar
elementos de datos
01 PYTHON BOA CONSTRUCTOR
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Un entorno de desarrollo integrado es una aplicacioacuten de software que permite al
desarrollador el disentildeo de software de una forma sencilla Dispone de todas las herramientas
necesarias integradas en un mismo entorno un editor de coacutedigo fuente herramientas de
construccioacuten automaacutetica y un depurador En el mercado hay varios
Entornos de desarrollo integrado para Python
01 PYTHON ENTORNOS DE DESARROLLO
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse un IDE muy versaacutetil preparado para permitir no solo el
lenguaje Python sino tambieacuten muchos otros Tiene caracteriacutestica especialmente interesantes si quieres
programar aplicaciones
bull Integracioacuten con Django un framework de
desarrollo web de coacutedigo abierto escrito en
Python Lo que permite Django a los
desarrolladores es la creacioacuten de proyectos web
complejos a traveacutes de un desarrollo raacutepido
mediante el principio de computacioacuten Donrsquot
Repeat Yourself (No te repitas) que busca la
eliminacioacuten de duplicidades en los procesos de
desarrollo
bull Finalizacioacuten de coacutedigo
bull Resaltado de sintaxis
bull Anaacutelisis de coacutedigo
bull Depurador y depurador remoto
bull Navegador interactivo
bull Refactorizacioacuten
bull Integracioacuten de pruebas unitarias
bull Cobertura de coacutedigo fuente
01 PYTHON ENTORNOS DE DESARROLLO
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PYCHARM Es un IDE creado por JetBrains Dentro de la comunidad de desarrolladores Python tiene una fama
increiacuteble Algunos llegan a calificarlo del mejor IDE para Python Es un entorno de desarrollo integrado con
cientos de funciones lo que puede convertir a la herramienta en un entorno pesado pero sin duda es una
gran eleccioacuten para programar
Alguna de sus caracteriacutesticas fundamentales son
bull Integracioacuten
bull Integracioacuten con frameworks como Django
Flask Pyramid o Web2Py
bull Compatibilidad con herramientas y lenguajes de
programacioacuten para desarrolladores en Python
como SQLAlchemy (ORM) Google App Engine
o Cython
bull Autocompletado
bull Resaltador de sintaxis
bull Herramienta de anaacutelisis
bull Refactorizacioacuten
bull Depurador avanzado de Python y JavaScript
bull Sistema de control de versiones como Git CVS
y Mercurial
Por ejemplo en este viacutedeo uno de los
desarrolladores de JetBrains disentildea un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm
01 PYTHON ENTORNOS DE DESARROLLO
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
WXGLADE Es un disentildeador de interfaz graacutefica de usuarios wxWidgets escrito en Python pero que puede generar
coacutedigo fuente para otros lenguajes de programacioacuten como C++ Lisp o Perl wxGlade no es un entorno de
desarrollo integrado con todas las herramientas para hacer un desarrollo en Python soacutelo es un disentildeador
que te permite visualizar los widgets creados
01 PYTHON ENTORNOS DE DESARROLLO
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Html5Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del disentildeo HTML CSS y JavaScript Esto
pretende ser un listado de las mejores herramientas para
programadores en lenguaje HTML
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
02 HTML5 EDITORES DE HTML
El editor HTML ideal debe ser capaz de validar que el coacutedigo HTML se ajuste a los
estaacutendares asiacute como de obtener una vista previa de la paacutegina en diferentes navegadores de
soportar meta etiquetas (metatags) y de permitir editar las imaacutegenes a un nivel baacutesico A
continuacioacuten te proponemos diferentes herramientas
Editores de HTML y de lenguajes de lsquofront-endrsquo
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
SUBLIME TEXT Este editor de coacutedigo no es gratuito la licencia tiene un coste de 70 doacutelares aunque se puede descargar
una versioacuten gratuita para probarlo Es una solucioacuten muy popular entre los desarrolladores con una
experiencia de usuario bastante cuidada De hecho muchos desarrolladores usan Sublime y lo califican
como el mejor editor de coacutedigo
bull Disponible para Windows Mac OS X y Linux
bull Soporta un gran nuacutemero de lenguajes de
programacioacuten HTML C C++ Groovy Java
JavaScript Lisp Perl PHP Python Ruby
bull Atajos raacutepidos para la buacutesqueda
bull Modo libre de distracciones para la escritura de
coacutedigo
bull Funcioacuten de autocompletar
bull Editor muy personalizable
bull Admite macros
bull Mejora de sus funcionalidades con plugins
Algunas de sus caracteriacutesticas fundamentales son
02 HTML5 EDITORES DE HTML
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
ATOMEditor gratuito de coacutedigo abierto y muy personalizable lanzado desde GitHub Es una herramienta que
estaacute generando una gran sensacioacuten dentro de la comunidad de desarrolladores Lo bueno de este editor es
que muchos programadores estaacuten aportando mejoras al editor a traveacutes de GitHub
bull Disponible para Windows Mac OS X y Linux
bull Totalmente personalizable sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto incluso el core
bull Integracioacuten de Nodejs esto permite que cualquier
usuario pueda usar los cientos de paquetes y
libreriacuteas
bull Sistema de navegacioacuten de archivos
bull Buscar y reemplazar en los archivos de trabajo
bull Paneles cursores y selectores muacuteltiples
bull Interfaz de usuario sencilla y limpia
bull Disentildeo de moacutedulos personalizados el editor permite
crearlos para incorporar nuevas funcionalidades
Caracteriacutesticas interesantes de Atom
02 HTML5 EDITORES DE HTML
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
NOTEPAD++Es posiblemente uno de los editores de coacutedigo maacutes conocidos del mercado Es una herramienta bajo
licencia GNU (Licencia Puacuteblica General) Se podriacutea definir como un blog de notas con esteroides Dispone
de caracteriacutesticas muy interesantes para desarrolladores y programadores
bull Dispone de coloreado de coacutedigo para facilitar la
programacioacuten no soacutelo para HTML tambieacuten para
otros lenguajes a los que Notepad++ da soporte
Python Ruby PHP o JavaScript
bull Autocompletado de coacutedigo No es necesario
teclear todas la etiquetas HTML Los comandos
de teclado se pueden configurar
bull Posibilidad de trabajar en varios documentos
distintos a la vez
bull Multivista El usuario puede tener varias vistas de
un mismo coacutedigo
bull Expresiones regulares para automatizar
acciones
bull Deteccioacuten automaacutetica del estado del documento
Buena caracteriacutestica si un equipo de
desarrolladores trabaja colectivamente
bull Grabacioacuten y reproduccioacuten de macros Posibilidad
de hacer zoom
bull Permite para varios idiomas
02 HTML5 EDITORES DE HTML
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
EDITRAEditor de texto multiplataforma Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programacioacuten en coacutedigo Editra es totalmente gratis estaacute bajo una licencia LGPL y
permite maacutes de 60 lenguajes de programacioacuten distintos Python PHP Perl Java Lisp SQL Visual Basic o
Pascal son algunos de los maacutes importantes
bull Permite trabajar con pestantildeas y en
varios documentos a la vez
bull Incorpora un buscador
bull Dispone de un editor y resaltador de
comandos
bull Funcioacuten de autocompletado
bull Ayuda de palabras clave
bull Tiene la posibilidad de aumentar sus
funcionalidades con la incorporacioacuten
de plugins
02 HTML5 EDITORES DE HTML
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
TEXTWRANGLEREditor de texto desarrollado por Bare Bones Software Tiene una interfaz sencilla inteligente y con algunas
funcionalidades que permiten programar coacutedigo con un gran rendimiento Algunas de sus caracteriacutesticas
bull Permite para varios lenguajes de programacioacuten
como HTML C C++ Fortran Java Object
Pascal Objective-C Perl Python Rubyhellip
bull Coloreado de sintaxis para facilitar la
programacioacuten en coacutedigo
bull Funcionalidad de buscar y reemplazar en
muacuteltiples filas
bull Configuracioacuten de idioma por documento de
trabajo
bull Posibilidad de funcionar como un editor externo
integrado con Xcode el Entorno de Desarrollo
Integrado de Apple
bull Soporte integrado para el acceso FTP a traveacutes
de Interarchy
bull Teclas configurables por el desarrollador
bull Lista de ventanas flotantes
02 HTML5 EDITORES DE HTML
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
02 HTML5 FRAMEWORKS PARA HTML5
lsquoFrameworksrsquo para HTML5Una hoja de estilos completa reseteando normalizando y ofreciendo herramientas praacutecticas
directivas de optimizacioacuten del servidor metainformacioacuten en el servidor organizacioacuten del
layout HTML5hellip Estas son algunas de las caracteriacutesticas de un framework para HTML5
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
BOOTSTRAPEs el framework de Twitter para el disentildeo responsivo o adaptativo y desarrollo de paacuteginas web en HTML
CSS y JavaScript Bootstrap estaacute muy extendido entre los desarrolladores de front-end El aumento del
consumo de contenidos en dispositivos moacuteviles es uno de los acicates fundamentales en la expansioacuten
bull Aunque tiene una compatibilidad limitada para
HTML5 y CSS3 sus disentildeos son compatibles
con la mayoriacutea de navegadores
bull Es un marco de coacutedigo abierto y estaacute
compartido en GitHub Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente
bull Facilita el trabajo con JavaScript existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo
bull Todos esos componentes estaacuten basados en
jQuery Estos plugins permiten introducir nuevas
funcionalidades a la interfaz desde un efecto de
carrusel hasta las creacioacuten de botones o alertas
Y su enorme popularidad favorece que cada vez
haya maacutes plugins
bull Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinaacutemico)
bull Facilita mucha documentacioacuten si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situacioacuten complicada siempre
dispondraacute de documentacioacuten y tutoriales para
resolverla
02 HTML5 FRAMEWORKS PARA HTML5
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
HTML5 BOILERPLATEEs el otro gran framework de HTML5 del mercado Estas son algunas de sus caracteriacutesticas fundamentales
bull Da soporte a navegadores antiguos HTML5
Boilerplate dispone de una biblioteca de
deteccioacuten de caracteriacutesticas llamada Modernizr
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3 En caso de que
no sea asiacute se carga una funcioacuten adicional que
permite a ese navegador antiguo cargar todos
los elementos del site
bull Mejora de los tiempos de carga Con el
consumo de informacioacuten en dispositivos
moacuteviles el tiempo de carga de las paacuteginas se
convierte en una condicioacuten imprescindible para
competir En HTML5 Boilerplate todos los
elementos scripts se colocan al final de la
paacutegina lo que evita que su lentitud al cargar
ralentice la aparicioacuten de los elementos clave del
site Esto afecta a casi todos esos elementos
incluso el habitual coacutedigo de seguimiento de
Google Analytics
bull Optimizacioacuten por el lado del servidor el archivo
htaccess propuesto por HTML5 Boilerplate
permite introducir una cacheacute maacutes eficiente y
enviar nuestras paacuteginas web comprimidas en
GZIP igual que imaacutegenes y elementos en
JavaScript lo que optimiza el rendimiento del
site con tiempos de carga maacutes reducidos
02 HTML5 FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
JUNIOR
Es un framework para hacer aplicaciones moacuteviles
nativas en HTML5 Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos moacuteviles permite disentildear carruseles
con flickablejs y el disentildeo de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework
02 HTML5 FRAMEWORKS PARA HTML5
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
JavaJava es un lenguaje de propoacutesito general orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores Este
es un listado de las herramientas baacutesicas para hacer proyectos en este
lenguaje de programacioacuten
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
03 JAVA IDE
Un entorno de programacioacuten provee un marco de trabajo amigable para la mayoriacutea de los
lenguajes de programacioacuten desde C++ PHP Python C Delphi Visual Basic y tambieacuten
Java del que vamos a tratar a continuacioacuten IDE es un programa de aplicacioacuten que consiste
en un editor de coacutedigo un compilador un depurador y un constructor de interfaz graacutefica
Entorno de Desarrollo Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
NETBEANS
Es un Entorno de Desarrollo Integrado para la creacioacuten de aplicaciones en Java para escritorio moacutevil o web
Tambieacuten permite desarrollarlas en HTML5 (HTML JavaScript y CSS) y dispone de herramientas para
programadores en PHP C y C++ NetBeans estaacute desarrollado en Java y es de coacutedigo abierto
bull NetBeans es algo maacutes que un editor de texto
permite refactorizar coacutedigo proporciona
plantillas y generadores de coacutedigo consejos No
soacutelo soporta Java tambieacuten C C++ XML HTML
PHP Groovy Javadoc JavaScript y JSP
bull Gestioacuten organizada de los proyectos permite
que tus aplicaciones esteacuten en un servicio de
carpetas Eso facilita mucho el trabajo
colaborativo En esa gestioacuten es esencial el
control de versiones por eso NetBeans integra
Mercurial Subversion o Git
bull Desarrollo raacutepido de interfaz de usuario
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java HTML5 PHP o CC++
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva
bull Depurador de errores dispone de un depurador
que alerta de posibles errores y tambieacuten con
herramientas para optimizar las aplicaciones en
velocidad y uso de memoria Facilitando la
escalabilidad de las aplicaciones
03 JAVA IDE
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
ECLIPSE
Es el entorno de desarrollo integrado maacutes
conocido para Java Tambieacuten permite el
desarrollo de proyectos en otro tipo de
lenguajes como C C++ o PHP Como
cualquier IDE permite el desarrollo de
software y aplicaciones en escritorio y
dispositivos moacuteviles como tabletas y
teleacutefonos inteligentes Dispone de interfaz
graacutefica de usuario y herramientas para
llevar a cabo numerosas funciones
03 JAVA IDE
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
INTELLIJ IDEA
Desarrollado en Java por Jet Brains bajo dos tipos de licencias una de coacutedigo abierto y otra comercial Es
uno de los entornos de desarrollo con mejor predicamento dentro de la comunidad Java algunos lo califican
como el mejor IDE del mercado si desarrollas proyectos en este lenguaje de programacioacuten Entre algunas de
las herramientas de las que dispone tenemos
bull Sistema avanzado de refactorizacioacuten de coacutedigo
bull Sistema de completado de coacutedigo mientras se
programa
bull Anaacutelisis de errores de coacutedigo en tiempo real
bull Sistema de control de versiones
bull Disentildeador UML (lenguaje unificado de modelado)
bull Permite el desarrollo con frameworks Java como
Spring MVC GWT Vaadin Play Grails Web
Services JavaServer Faces Apache Struts o Flex
bull Incluye asistencia para la programacioacuten en coacutedigo
en HTML5 CSS3 JavaScript Nodejs
ActionScripthellip y varios lenguajes maacutes
03 JAVA IDE
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
03 JAVA GVNIX
gvNIX es una herramienta de coacutedigo abierto para el desarrollo raacutepido de aplicaciones (RAD)
Con ella cualquier desarrollador puede crear aplicaciones web en Java sin muchos
problemas y muy poco tiempo La herramienta cuenta con la integracioacuten de frameworks
como jQuery Bootstrap 3 Leaflet o Datatables
Desarrollo raacutepido de aplicaciones gvNIX
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Algunas caracteriacutesticas de la herramienta
bull Herramienta multiplataforma
Funciona en varios sistemas operativos
(Windows Mac OSX y Linux) Tambieacuten se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS
Lo uacutenico que se necesita para instalarlo es tener
el Java SDK (la versioacuten 6 o superior) y Apache
Maven 3
bull Inteacuterprete de comandos
gvNIX estaacute disentildeado como un inteacuterprete de
comandos interactivos Tiene autocompletado
de los comandos y ayuda contextual
bull Proyectos estaacutendar JEE
Los proyectos creados con esta herramienta
cumplen con el estaacutendar JEE la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programacioacuten Java
bull Sin dependencias del entorno de ejecucioacuten
La aplicaciones que se desarrollan con gvNIX
soacutelo dependen de los frameworks utilizados por
el desarrollador sin que eso provoque una
dependencia del entorno de ejecucioacuten
Otra herramienta para el desarrollo raacutepido de
aplicaciones (RAD) es Spring Roo
03 JAVA GVNIX
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Apache Maven es una herramienta para la gestioacuten
y el disentildeo de proyecto en Java Este framework
fue creado en 2002 por Jason Van Zyl de
Sonatype Maven usa un Project Object Model
(POM) un archivo XML que es la unidad de trabajo
en Maven Este archivo contiene informacioacuten sobre
el proyecto y los detalles de la configuracioacuten del
framework desde la lista y la configuracioacuten de los
plugins utilizados hasta las dependencias
lsquoFrameworkrsquo Apache Maven
03 JAVA MAVEN03 JAVA APACHE MAVEN
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software
de Sun Microsystem James Duncan Davidson Hoy en diacutea es utilizado como servidor
autoacutenomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de traacutefico Al estar desarrollado en Java funciona con cualquier sistema operativo
Servidor web en Java Apache Tomcat
03 JAVA APACHE TOMCAT
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Las caracteriacutesticas maacutes importantes
de la uacuteltima versioacuten son
bull Autenticacioacuten de acceso baacutesico
bull Negociacioacuten de credenciales
bull HTTPS
bull Alojamiento compartido
bull CGI o interfaz de entrada comuacuten
bull Servlets de Java
bull SSI (Server Side Includes)
03 JAVA APACHE TOMCAT
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
JavascriptJavaScript es un lenguaje indispensable en el desarrollo de
proyectos web y aplicaciones Su uso se ha extendido a toda la
pila del desarrollo Este es un listado de frameworks y libreriacuteas
JavaScript para desarrolladores
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
JavaScript es uno de los referentes
internacionales en la programacioacuten de
proyectos Se utiliza para el desarrollo de
paacuteginas web aplicaciones gestioacuten de
servidores y bases de datoshellip Un profesional
que domine JavaScript puede convertirse en
un desarrollador full-stack aquel que es
capaz de encargarse de toda la pila de
desarrollo web Un perfil lsquochico para todorsquo
dentro del sector
Como prueba de su poderiacuteo el uacuteltimo
informe de TIOBE sobre los lenguajes de
programacioacuten maacutes utilizados por los
desarrolladores JavaScript vuelve a situarse
entre las 10 elecciones maacutes usadas por los
profesionales por detraacutes de lenguajes de
propoacutesito general como Java C C++
Objective-C o PHP faacuteciles de aprender
como Python o de programacioacuten de apps
NET como Visual Basic
04 JAVASCRIPT
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Es un framework por el lado del servidor que
permite a los desarrolladores crear aplicaciones
web con Nodejs Es un marco de desarrollo muy
flexible aacutegil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilizacioacuten con mucha documentacioacuten
adicional en plataformas como GitHub Ademaacutes es
un framework soacutelido estable y faacutecil de aprender
Estaacute inspirado en Sinatra el marco de desarrollo
para Ruby
EXPRESSJS Entre algunas de sus caracteriacutesticas maacutes
destacadas tenemos
bull Permite la creacioacuten de APIs de una forma
accesible
bull Ofrece Router de URL
bull Utiliza como framework base Jade pero es
posible incorporar libreriacuteas JavaScript como
jQuery y Backbonejs para antildeadir nuevas
funcionalidades al marco de desarrollo
04 JAVASCRIPT FRAMEWORKS
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Angularjs es un framework de JavaScript de
coacutedigo abierto y totalmente libre que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patroacuten del tipo Modelo-Vista-
Modelo de Vista Detraacutes de su lanzamiento y
mantenimiento se encuentra Google lo que lo
convierte en una opcioacuten estable y soacutelida con
documentacioacuten constante para la comunidad de
desarrolladores
ANGULARJS Caracteriacutesticas fundamentales
bull Sistema bidireccional de data-binding El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos
bull Tiene patroacuten de Inyeccioacuten de
Dependencias
bull Cualquier aplicacioacuten desarrollada en
AngularJS es compatible con varios
navegadores
04 JAVASCRIPT FRAMEWORKS
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Emberjs es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola paacuteginas del lado del cliente Es de coacutedigo
abierto y usa un patroacuten del tipo Modelo-Vista-
Controlador (MVC)
EMBERJS Caracteriacutesticas fundamentales
bull Modificacioacuten automaacutetica entre los objetos
JavaScript y el DOM esta relacioacuten entre los
datos que permite agilizar el desarrollo se
debe a la integracioacuten de la libreriacutea
Handlebarsjs Clases y procedimiento para
renderizar de forma sencilla una app
bull Dispone de un sistema de plantillas para
programar el HTML Este sistema se llama
HTMLbars y seriacutea la variacioacuten para el DOM
de la libreriacutea Handlebars
04 JAVASCRIPT FRAMEWORKS
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Knockoutjs es un marco de desarrollo basado en
un patroacuten tipo Modelo-Vista-Modelo de Vista
(MVVM) Es de coacutedigo abierto dispone de una
licencia MIT Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentacioacuten en el
site del propio framework
KNOCKOUTJS Algunas de sus caracteriacutesticas principales
bull Facilita el desarrollo de bindings
declarativos
bull Seguimiento de dependencias permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes
bull Sistema de plantillas
bull Actualizacioacuten automaacutetica de la interfaz de
usuario en funcioacuten de los cambios que el
desarrollador acometa en el Modelo-Vista
04 JAVASCRIPT FRAMEWORKS
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Esta es la libreriacutea JavaScript maacutes utilizada por los
desarrolladores Permite de una forma sencilla
interactuar con el HTML el DOM hacer todo tipo
de animaciones introducir funcionalidades AJAX al
proyectohellip JQuery le permite a un desarrollador
aportar un valor antildeadido con pocas liacuteneas de
coacutedigo Es una biblioteca de coacutedigo abierto bajo
licencia MIT y GNU v2
JQUERY Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Soporte para CSS3
bull Manipulacioacuten total de las hojas de estilos
bull Creacioacuten de eventos
bull Desarrollo de animaciones complejas
bull Soporta extensiones
bull Compatible con todos los navegadores
04 JAVASCRIPT LIBRERIacuteAS
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Backbonejs es una libreriacutea JavaScript que permite
programar por el lado del cliente Se utiliza para el
desarrollo de aplicaciones de una uacutenica paacutegina
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario Usa un patroacuten Modelo-Vista-Controlador
BACKBONEJS Algunas de sus caracteriacutesticas esenciales
bull Permite modificar el aacuterbol del DOM
bull Facilita el trabajo intenso con datos
Creacioacuten de eventos
bull Enlace con la tecnologiacutea por el lado del
servidor PHP Nodejshellip
bull Uso de la API para incorporar
funcionalidades
bull Utilizacioacuten simplificada de vistas
04 JAVASCRIPT LIBRERIacuteAS
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Kendo UI es una libreriacutea o maacutes bien un paquete
de libreriacuteas que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente con una
interfaz de usuario dinaacutemica basada en JQuery Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva sencilla e
innovadora a traveacutes de distintos tipos de widgets
que se montan como un mecano Esos elementos
predefinidos incluyen menuacutes dinaacutemicos ventajas
sistemas de carga de archivoshellip
Caracteriacutesticas
bull Funciona con la mayoriacutea de navegadores y
sistemas operativos
bull Permite visualizacioacuten de datos
bull Data-binding
KENDO UI
04 JAVASCRIPT LIBRERIacuteAS
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Modernizr es una libreriacutea JavaScript que nos
permite detectar la falta de compatibilidad de
nuestro proyecto con cada tipo de navegador La
idea es hacer desarrollos que se adapten a las
caracteriacutesticas de cada navegador Podemos usar
determinadas funcionalidades o hacer ajustes en
funcioacuten de lo que use cada usuario Estas
pruebas se hacen a traveacutes de un sistema de test
Ademaacutes su API permite cargar test
personalizados por proyectos
MODERNIZR
04 JAVASCRIPT LIBRERIacuteAS
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PHPEl lenguaje de programacioacuten PHP es una de las opciones maacutes
utilizadas por los desarrolladores para la creacioacuten de proyectos y
aplicaciones web dinaacutemicas Es coacutedigo que se ejecuta desde el
servidor bastante seguro y con una curva de aprendizaje corta
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PHP es uno de los lenguajes de programacioacuten maacutes utilizados en el desarrollo de proyectos
web en gran parte por su enorme penetracioacuten tanto en servidores web como sistemas
operativos Es una solucioacuten robusta sin coste alguno Grandes jugadores de la Red utilizan
PHP para sus sitios web como Wikipedia o Yahoo lo mismo que referentes de la edicioacuten de
contenidos como Wordpress o Drupal PHP tambieacuten es utilizado por ejemplo por los
conocidos servidores Apache
Es muy popular por varias razones
05 PHP
bull Es un lenguaje para el desarrollo de
aplicaciones web dinaacutemicas a partir de los
datos contenidos en una base de datos
bull La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura
bull Permite implementar programacioacuten orientada a
objetos
bull El coacutedigo PHP se ejecuta desde el servidor
por lo que nadie tendraacute acceso a eacutel desde un
navegador Eso aumenta la seguridad
bull Gran funcionamiento con bases de datos
relacionales de coacutedigo abierto como MySQL
una solucioacuten muy utilizada en desarrollo
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor coacutedigo de mayor calidad proyectos escalables aplicaciones
web raacutepidas y robustas Usar un framework permite tener ordenado en carpetas todo el
coacutedigo disponer de libreriacuteas y funcionalidades que enriqueceraacuten el proyecto final y aumentar
la seguridad
Existe un listado amplio de marcos de desarrollo para profesionales PHP
lsquoFrameworksrsquo
05 PHP FRAMEWORKS
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
05 PHP FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentacioacuten
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta Eso
permite salir de maacutes de un apuro cuando se
cometen errores o uno estaacute en un callejoacuten sin
salida Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razoacuten
Es un marco de coacutedigo abierto lanzado en 2011
para desarrollar proyectos web Su creador fue
Taylor Otwell Su uacuteltima versioacuten es la 51 Como la
mayoriacutea de los frameworks Laravel dispone de la
serie habitual de baacutesicos rutas modelos plantillas
vistas y controladores Tambieacuten dispone de un
sistema de plantillas propio que se llama Blade
Las principales caracteriacutesticas de Laravel
bull Soporta RESTful
bull Necesita la instalacioacuten de Composer para
administrar dependencias en PHP Sirve para
declarar las libreriacuteas del proyecto que se estaacute
desarrollando sin intervencioacuten del desarrollador
bull Se ejecuta con un patroacuten MVC (Modelo-Vista-
Controlador) Consiguiendo aumentar la
seguridad y separar totalmente la loacutegica de la
aplicacioacuten de la interfaz de usuario
bull Soporte para cacheacute
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
05 PHP FRAMEWORKS
CODEIGNITER
Al igual que Laravel CodeIgniter dispone de una
gran comunidad detraacutes que alimenta la
documentacioacuten disponible Es un marco de
desarrollo sencillo y con gran rendimiento Tiene
algunas caracteriacutesticas interesantes
bull Framework que trabaja con la mayoriacutea de
entornos y servidores
bull Utiliza el patroacuten MVC
bull Separacioacuten del nuacutecleo del marco y el coacutedigo
del proyecto
bull Marco de desarrollo flexible los
desarrolladores pueden seguir sus reglas de
codificacioacuten o bien aplicar las suyas propias
Por tanto para usarlo no es necesario aprender
la estructura del framework porque se puede
modificar Se pueden usar plantillas externas
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
05 PHP FRAMEWORKS
SYMFONY
Symfony es un framework para el desarrollo de
aplicaciones web mediante un Modelo-Vista-
Controlador Fue creado por la empresa SensioLabs
en 2005 Es un marco distribuido bajo una licencia
de coacutedigo abierto MIT
Estaacute desarrollado por completo en PHP se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoriacutea de los sistemas de gestioacuten
de bases de datos maacutes conocidos MySQL Microsoft
SQL Serverhellip
Sus caracteriacutesticas maacutes importantes
bull Permite el cambio de sistema de gestioacuten
de base de datos en cualquier momento
del desarrollo Esto es una gran ventaja
bull Usa programacioacuten orientada a objetos
bull Usa patrones Modelo-Vista-Controlador
bull Es un marco de desarrollo que facilita
mucho la interoperabilidad
bull Motor de plantillas (Twig) faacutecil de usar
bull Sistema de cacheacute basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Mediante el uso de libreriacuteas puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas paacuteginas y asiacute disponer de todas ellas faacutecilmente a traveacutes de la libreriacutea
instalada Hay muchas libreriacuteas PHP pero esta es una pequentildea seleccioacuten
Libreriacuteas PHP
05 PHP LIBRERIacuteAS
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PHP-CPPEs una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP La pueden
utilizar los desarrolladores que
sepan PHP y tambieacuten los que
programen en C++ lenguajes
que tiene una sintaxis similar
Dispone de una amplia
documentacioacuten para sus
proyectos y el coacutedigo fuente
estaacute lleno de comentarios y
explicaciones muy uacutetiles
Se puede trabajar con variables
matrices funciones objetos
clases y excepciones de forma
muy sencilla para cualquier
desarrollador que sepa
programar en PHP Es de
coacutedigo abierto y totalmente
libre
HOAEs modular escalable y
estructurada Dispone de un
manual de formacioacuten para
comenzar a utilizarla y de
documentacioacuten adicional para el
uso de la API
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas lo que permite la
reutilizacioacuten y uso compartido
del coacutedigo entre los distintos
desarrolladores y proyectos
web La idea es que cualquier
programador pueda coger una
biblioteca desarrollada por otro
usuario y adaptarla a las
necesidades de su aplicacioacuten
con sus caracteriacutesticas y
herramientas
MINKEs una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar coacutemo
sus aplicaciones web
interactuacutean con el navegador y
si lo hacen correctamente
Mink viene con soporte para los
siguientes frameworks
PHPUnit Behat y Symfony2
05 PHP LIBRERIacuteAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web Permite a los desarrolladores y
disentildeadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo Permite
tambieacuten testear el disentildeo en navegadores
La herramienta facilita las pruebas de disentildeo de front-end en elementos pequentildeos como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de disentildeo (logotipo navegacioacutenhellip)
Guzzle es un framework especial que dispone de todas la herramientas necesarias para crear un cliente para servicios REST como Twitter o GitHub servicio para definir entradas y salidas de una API procesamiento por lotes para el enviacuteo de un gran nuacutemero de peticiones con gran rendimientohellip
Ademaacutes elimina la redundancia en la creacioacuten de clientes de servicios web Tiene mecanismos de cacheacute de respuestas y de consultas en paralelo
OTRAS HERRAMIENTAS PHP
05 PHP HERRAMIENTAS
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
PerlPerl es un lenguaje de programacioacuten de propoacutesito general faacutecil de
usar y que facilita la escritura raacutepida de coacutedigo a los desarrolladores
Ademaacutes dispone de numerosas libreriacuteas y moacutedulos que ampliacutean
mucho su funcionalidad para el desarrollo de proyectos web
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Administracioacuten de sistemas programacioacuten en red desarrollo de proyectos web o de
programas CGI (Common Gateway Interface) Perl es un lenguaje de propoacutesito general que
en la actualidad estaacute disfrutando de una segunda juventud se utiliza cada vez maacutes en el
desarrollo de proyectos Hoy en diacutea es un lenguaje atractivo porque es una sintaxis pseudo-
compilada que se distribuye de forma gratuita y se puede ejecutar en cualquier plataforma si
se dispone de un inteacuterprete para Perl
Las caracteriacutesticas fundamentales de este lenguaje de programacioacuten son
06 PERL
bull Faacutecil de usar y de programacioacuten raacutepida
bull Su curva de aprendizaje es alta
bull Dispone de libreriacuteas y moacutedulos lo que
aumenta su funcionalidad
bull Soporta programacioacuten estructurada orientada
a objetos y funcional
bull Tiene un sistema de procesamiento de texto
bull Se puede utilizar en varios entornos Windows
Mac OS X y Linux
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Este Entorno de Desarrollo Integrado de
ActiveState permite no soacutelo la programacioacuten en
Perl tambieacuten en otros lenguajes de programacioacuten
como Python PHP Go HTML o Nodejs La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a caracteriacutesticas como su
control de versiones su depurador graacutefico su
sistema de prueba unitaria su ayuda en liacuteneahellip
KOMODO IDE Los uacuteltimos avances la convierten en una
herramienta mucho maacutes coacutemoda y funcional
bull Dispone de un panel que permite reducir las
interrupciones en el trabajo Se pueden
visualizar los nombres de instancias
directamente en ese panel
bull Tiene un sistema de colaboracioacuten inteligente
que alerta a cada miembro del equipo de
queacute compantildeeros se encuentran editando
coacutedigo en ese momento
bull Correccioacuten raacutepida y automaacutetica de errores de
sintaxis desde el editor
bull El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto
bull Introduce el modo enfoque que facilita la
ocultacioacuten de elementos para que el
programador se concentre el coacutedigo
bull Otras mejoras gestor de paquetes integrado
creacioacuten de configuraciones personalizadas
nuevo sistema de notificaciones etc
06 PERL ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
EPIC es un Entorno de Desarrollo Integrado de
coacutedigo abierto que incluye un editor y un
depurador propios basado en la plataforma
Eclipse y compatible con varios sistemas
Windows Linux y Mac OS X Es un IDE bastante
habitual en el desarrollo de proyectos de
secuencias de comandos CGI y cuya integracioacuten
con la Interfaz Graacutefica de Usuario (GUI) de Eclipse
le da un valor antildeadido interesante
EPIC (Editor Perl y IDE para Eclipse) Sus caracteriacutesticas principales son
bull Coloracioacuten configurable de elementos
sintaacutecticos
bull Deteccioacuten automaacutetica de errores de sintaxis
durante la programacioacuten y en el momento
de guardar archivos
bull Autocompletado de variables
bull Sistema de control de ejecucioacuten
bull Funcioacuten de exportacioacuten HTML
06 PERL ENTORNOS INTEGRADOS
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Emacs es un editor de texto extensible
personalizable auto-documentado y de tiempo
real para el entorno Linux Fue escrito en 1975
por Richard Stallman y Guy Steele dos referencias
del software libre En estos momentos existen dos
versiones de este editor de texto GNU Emacs
desarrollada por Stallman en 1984 y mantenida
desde entonces por el Proyecto GNU Emacs
yXEmacs otra versioacuten del editor basada en los
trabajos de la primera lanzada en 1991
EMACS Algunas de sus caracteriacutesticas maacutes importantes
bull Sistema sencillo de edicioacuten de
texto comandos para manipular palabras y
paacuterrafos resaltado de sintaxis para favorecer
la lectura del coacutedigo y ejecucioacuten de macros
de teclado a traveacutes de comandos
personalizados
bull El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporacioacuten de fragmentos de
coacutedigo Emacs Lisp (bibliotecas libreriacuteas
paquetes o extensiones de coacutedigo) con
nuevas funcionalidades
bull Calc una calculadora que se incorpora dentro del editor
bull EmacsW3 un navegador web
bull ERC un cliente IRC
bull MULE permite la edicioacuten de texto escrito en varios lenguajes
06 PERL EDITORES DE TEXTO
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
UltraEdit es un editor de texto avanzado para Perl
PHP Java y JavaScript Con este editor los
programadores de coacutedigo pueden manipular
archivos de maacutes de 4 GB Es una herramienta de
pago pero dispone de un periodo de prueba
gratuito
Algunas de sus caraacutecteriacutesticas son
bull Resaltado de sintaxis configurable
bull Soporte FTP completo y navegador FTP
multipanel
bull Plantillas inteligentes
bull Funcioacuten de plegado de coacutedigo que permite
esconder las partes que no son necesarias
bull Lista completa de funciones en una vista de
aacuterbol incluidos todos los subgrupos
(paraacutemetros variables propiedades)
bull Editor de estilos CSS
bull Antildeadir comentarios en liacutenea o en bloque en el
texto seleccionado
bull Macros editables
bull Integracioacuten de lenguaje de scripting para
automatizacioacuten de tareas
bull Disentildeo de temas del editor personalizables
bull Sistema de copia de seguridad y
almacenamiento automaacutetico
ULTRAEDIT
06 PERL EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
TextMate es una editor de texto con Interfaz
Graacutefica de Usuario (GUI) para sistema operativo
Mac OS X Fue desarrollado porAllan Odgaard
Dispone de una gran comunidad que lanza
contribuciones puacuteblicas para personalizar el editor
en funcioacuten de las necesidades de cada
proyecto Un editor en mejora continua
Algunas de sus funciones maacutes destacadas
bull Funcioacuten de buscar y reemplazar texto en un
proyecto
bull Buacutesqueda y reemplazo de texto por
expresiones regulares
bull Esquema dinaacutemico para trabajar con varios
archivos
bull Bloques de coacutedigo plegable
bull Histoacuterico de portapapeles
bull Grabacioacuten de macros sin necesidades de
programacioacuten
bull Navegacioacuten entre archivos mediante el uso de
pestantildeas
bull Editor personalizable a traveacutes de varios temas
TEXTMATE
06 PERL EDITORES DE TEXTO
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Aquiacute tienes dos frameworks que pueden
hacerte la vida maacutes facil programando en PERL
MOJOLICIOUSMojolicious es un framework web en tiempo real
para desarrolladores en Perl Fue creado
por Sebastian Riedel Este marco usa el patroacuten
estaacutendar Modelo-Vista-Controlador (MVC) y soporta
CGI FastCGI y PSGI Es un framework que tambieacuten
soporta rutas RESTful extensiones cookies
firmadas test unitarios servidor de ficheros
estaacuteticos plantillas formato JSONhellip Ademaacutes el sitio
web de este framework dispone de una
documentacioacuten muy uacutetil para iniciados
CATALYSTCatalyst es un framework web de coacutedigo
abierto que utiliza un patroacuten Modelo-Vista-
Controlador multiplataforma y con una amplia
documentacioacuten gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software Estaacute inspirado en Ruby on Rails
06 PERL FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
compartir
TE PUEDE INTERESAR
Innovation Edge APIs los beneficios
empresariales de las APIs
Ebook lsquowearablesrsquo la revolucioacuten moacutevil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografiacutea coacutemo desarrollar una app
con Apple WatchKit
Ebook Herramientas de visualizacioacuten
de datos
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento
Regiacutestratepara estar al diacutea de las uacuteltimas tendencias
wwwbbvaopen4ucom
conversa con nosotros en
BBVA no se hace responsable de las opiniones publicadas en este documento