ebook sobre 6 herramientas para desarrolladores

61
Herramientas de programación 01 Python 02 Html5 03 Java 04 Javascript 05 PHP 06 Perl

Upload: alfredo-vela-zancada

Post on 14-Apr-2017

991 views

Category:

Software


0 download

TRANSCRIPT

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