SlideShare una empresa de Scribd logo
Herramientas de
programación
01 Python
02 Html5
03 Java
04 Javascript
05 PHP
06 Perl
Python
Una de las últimas apuestas del mercado web, con una enorme
implantación entre la comunidad de desarrolladores americana, es
el lenguaje de programación Python, que permite la realización de
proyectos de forma ágil y versátil.
BeeWare es algo más 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 pequeñas
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:
CRICKET
Herramienta gráfica para
ejecutar pruebas unitarias. No
ofrece muchos detalles de la
ejecución mientras la suite está
en marcha y no es posible
empezar a buscar fallos hasta
que la ejecución está completa.
Cricket tiene soporte para
Django, un framework de
código abierto que está escrito
en Python y sirve para
desarrollar aplicaciones web de
forma más rápida.
BUGJAR
Depurador de errores de
código. Los antiguos
depuradores eran buenos por
sus entornos de desarrollo
integrado y por la posibilidad de
depurar errores de forma visual
mientras se producía la
ejecución. El modelo de
depuración de Python contiene
buenos ganchos de depuración.
Además, dispone de una
interfaz gráfica que permite
desplazarse por el código para
corregir errores.
DUVET
Interfaz gráfica que ayuda a los
desarrolladores a visualizar los
resultados de cobertura de
pruebas devuelto por
coverage.py, una herramienta
que funciona para medir la
cobertura de código de
programas en Python. Este tipo
de acciones sirven para medir la
efectividad de las pruebas,
mostrando por separado qué
partes del código se ejercen por
medio de pruebas y cuáles no.
01. PYTHON / BEEWARE
BeeWare también tiene una serie de librerías para proyectos en Python:
TOGA
Paquete de herramientas nativo
para cada sistema, hecho en
Python y que puede ser usada
para escritorio y móvil.
iOS TEMPLATE
Plantilla que nos permite el
desarrollo de aplicaciones en
lenguaje Python pero
ejecutadas en iOS.
ANDROID TEMPLATE
Una plantilla para implementar
código Python en Android.
RUBICON
Herramientas que permiten
establecer relaciones entre el
entorno de programación de
Python y el resto.
CASSOWARY
Implementación del algoritmo de
soluciones de limitaciones (el
mismo que usa el motor gráfico
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 gráfica de usuario incorporada (GUI) para wxPython. Esta herramienta incluye un
inspector de objetos, jerarquías de herencia, un depurador especialmente bueno y ayuda
integrada. Evidentemente está escrito en Python.
BOA Constructor
01. PYTHON / BOA CONSTRUCTOR
La interfaz de usuario está 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
módulos para nuestras aplicaciones. Es el
primer paso para generar un nuevo de
desarrollo para Python.
INSPECTOR
A través de esta herramienta
podemos acceder a los objetos
EDITOR
Esta es la parte de BOA Constructor donde el
desarrollador puede acceder al código fuente
de la aplicación que está creando. Es en el
editor donde se pueden corregir errores y
ejecutar la aplicación para identificarlos.
Existe algún 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 aplicación de software que permite al
desarrollador el diseño de software de una forma sencilla. Dispone de todas las herramientas
necesarias integradas en un mismo entorno: un editor de código fuente, herramientas de
construcción automática 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 versátil, preparado para permitir no solo el
lenguaje Python, sino también muchos otros. Tiene característica especialmente interesantes si quieres
programar aplicaciones:
• Integración con Django, un framework de
desarrollo web de código abierto escrito en
Python. Lo que permite Django a los
desarrolladores es la creación de proyectos web
complejos a través de un desarrollo rápido
mediante el principio de computación Don’t
Repeat Yourself (No te repitas), que busca la
eliminación de duplicidades en los procesos de
desarrollo.
• Finalización de código.
• Resaltado de sintaxis.
• Análisis de código.
• Depurador y depurador remoto.
• Navegador interactivo.
• Refactorización.
• Integración de pruebas unitarias.
• Cobertura de código fuente.
01. PYTHON / ENTORNOS DE DESARROLLO
PYCHARM
Es un IDE creado por JetBrains. Dentro de la comunidad de desarrolladores Python tiene una fama
increíble. 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 elección para programar.
Alguna de sus características fundamentales son:
• Integración
• Integración con frameworks como Django,
Flask, Pyramid o Web2Py.
• Compatibilidad con herramientas y lenguajes de
programación para desarrolladores en Python
como SQLAlchemy (ORM), Google App Engine
o Cython.
• Autocompletado.
• Resaltador de sintaxis.
• Herramienta de análisis.
• Refactorización.
• Depurador avanzado de Python y JavaScript.
• Sistema de control de versiones como Git, CVS
y Mercurial.
Por ejemplo, en este vídeo uno de los
desarrolladores de JetBrains diseña un clon de la
red social Pinterest con las herramientas del
entorno de desarrollo integrado PyCharm:
01. PYTHON / ENTORNOS DE DESARROLLO
WXGLADE
Es un diseñador de interfaz gráfica de usuarios wxWidgets escrito en Python, pero que puede generar
código fuente para otros lenguajes de programación como C++, Lisp o Perl. wxGlade no es un entorno de
desarrollo integrado, con todas las herramientas para hacer un desarrollo en Python, sólo es un diseñador
que te permite visualizar los widgets creados.
01. PYTHON / ENTORNOS DE DESARROLLO
Html5
Cualquier desarrollador front-end debe conocer muy bien
la Trinidad del diseño: 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 código HTML se ajuste a los
estándares, así como de obtener una vista previa de la página en diferentes navegadores, de
soportar meta etiquetas (metatags) y de permitir editar las imágenes a un nivel básico. A
continuación, te proponemos diferentes herramientas.
Editores de HTML y de
lenguajes de ‘front-end’
SUBLIME TEXT
Este editor de código no es gratuito, la licencia tiene un coste de 70 dólares, aunque se puede descargar
una versión gratuita para probarlo. Es una solución 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 código.
• Disponible para Windows, Mac OS X y Linux.
• Soporta un gran número de lenguajes de
programación: HTML, C, C++, Groovy, Java,
JavaScript, Lisp, Perl, PHP, Python, Ruby...
• Atajos rápidos para la búsqueda.
• Modo libre de distracciones para la escritura de
código.
• Función de autocompletar.
• Editor muy personalizable.
• Admite macros.
• Mejora de sus funcionalidades con plugins.
Algunas de sus características fundamentales son:
02. HTML5 / EDITORES DE HTML
ATOM
Editor gratuito, de código abierto y muy personalizable lanzado desde GitHub. Es una herramienta que
está generando una gran sensación dentro de la comunidad de desarrolladores. Lo bueno de este editor es
que muchos programadores están aportando mejoras al editor a través de GitHub.
• Disponible para Windows, Mac OS X y Linux.
• Totalmente personalizable: sus creadores presumen
de que el desarrollador puede modificar el editor a su
gusto, incluso el core.
• Integración de Node.js: esto permite que cualquier
usuario pueda usar los cientos de paquetes y
librerías.
• Sistema de navegación de archivos.
• Buscar y reemplazar en los archivos de trabajo.
• Paneles, cursores y selectores múltiples.
• Interfaz de usuario sencilla y limpia.
• Diseño de módulos personalizados: el editor permite
crearlos para incorporar nuevas funcionalidades.
Características interesantes de Atom:
02. HTML5 / EDITORES DE HTML
NOTEPAD++
Es, posiblemente, uno de los editores de código más conocidos del mercado. Es una herramienta bajo
licencia GNU (Licencia Pública General). Se podría definir como un blog de notas con esteroides. Dispone
de características muy interesantes para desarrolladores y programadores:
• Dispone de coloreado de código para facilitar la
programación, no sólo para HTML, también para
otros lenguajes a los que Notepad++ da soporte:
Python, Ruby, PHP o JavaScript.
• Autocompletado de código. No es necesario
teclear todas la etiquetas HTML. Los comandos
de teclado se pueden configurar.
• Posibilidad de trabajar en varios documentos
distintos a la vez.
• Multivista. El usuario puede tener varias vistas de
un mismo código.
• Expresiones regulares para automatizar
acciones.
• Detección automática del estado del documento.
Buena característica si un equipo de
desarrolladores trabaja colectivamente.
• Grabación y reproducción de macros. Posibilidad
de hacer zoom.
• Permite para varios idiomas.
02. HTML5 / EDITORES DE HTML
EDITRA
Editor de texto multiplataforma. Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con
asistencia para la programación en código. Editra es totalmente gratis, está bajo una licencia LGPL y
permite más de 60 lenguajes de programación distintos: Python, PHP, Perl, Java, Lisp, SQL, Visual Basic o
Pascal son algunos de los más importantes.
• Permite trabajar con pestañas y en
varios documentos a la vez.
• Incorpora un buscador.
• Dispone de un editor y resaltador de
comandos.
• Función de autocompletado.
• Ayuda de palabras clave.
• Tiene la posibilidad de aumentar sus
funcionalidades con la incorporación
de plugins.
02. HTML5 / EDITORES DE HTML
TEXTWRANGLER
Editor de texto desarrollado por Bare Bones Software. Tiene una interfaz sencilla, inteligente y con algunas
funcionalidades que permiten programar código con un gran rendimiento. Algunas de sus características:
• Permite para varios lenguajes de programación
como HTML, C, C++, Fortran, Java, Object
Pascal, Objective-C, Perl, Python, Ruby…
• Coloreado de sintaxis para facilitar la
programación en código.
• Funcionalidad de buscar y reemplazar en
múltiples filas.
• Configuración de idioma por documento de
trabajo.
• Posibilidad de funcionar como un editor externo
integrado con Xcode, el Entorno de Desarrollo
Integrado de Apple.
• Soporte integrado para el acceso FTP a través
de Interarchy.
• Teclas configurables por el desarrollador.
• Lista de ventanas flotantes.
02. HTML5 / EDITORES DE HTML
02. HTML5 / FRAMEWORKS PARA HTML5
‘Frameworks’ para HTML5
Una hoja de estilos completa, reseteando, normalizando y ofreciendo herramientas prácticas;
directivas de optimización del servidor; metainformación en el servidor; organización del
layout HTML5… Estas son algunas de las características de un framework para HTML5.
BOOTSTRAP
Es el framework de Twitter para el diseño responsivo o adaptativo y desarrollo de páginas web en HTML,
CSS y JavaScript. Bootstrap está muy extendido entre los desarrolladores de front-end. El aumento del
consumo de contenidos en dispositivos móviles es uno de los acicates fundamentales en la expansión.
• Aunque tiene una compatibilidad limitada para
HTML5 y CSS3, sus diseños son compatibles
con la mayoría de navegadores.
• Es un marco de código abierto y está
compartido en GitHub. Son muchos los
desarrolladores que lo utilizan y lo mejoran
continuamente.
• Facilita el trabajo con JavaScript: existen
componentes que permiten implementar
recursos especiales sin necesidad de hacerlo.
• Todos esos componentes están basados en
jQuery. Estos plugins permiten introducir nuevas
funcionalidades a la interfaz: desde un efecto de
carrusel hasta las creación de botones o alertas.
Y su enorme popularidad favorece que cada vez
haya más plugins.
• Bootstrap utiliza LESS (lenguaje de hojas de
estilo dinámico).
• Facilita mucha documentación: si alguien tiene
un proyecto y tiene alguna duda o necesita
resolver alguna situación complicada, siempre
dispondrá de documentación y tutoriales para
resolverla.
02. HTML5 / FRAMEWORKS PARA HTML5
HTML5 BOILERPLATE:
Es el otro gran framework de HTML5 del mercado. Estas son algunas de sus características fundamentales:
• Da soporte a navegadores antiguos. HTML5
Boilerplate dispone de una biblioteca de
detección de características llamada Modernizr.
Esto permite determinar si el navegador del
usuario soporta HTML5 y CSS3. En caso de que
no sea así, se carga una función adicional que
permite a ese navegador antiguo cargar todos
los elementos del site.
• Mejora de los tiempos de carga. Con el
consumo de información en dispositivos
móviles, el tiempo de carga de las páginas se
convierte en una condición imprescindible para
competir. En HTML5 Boilerplate, todos los
elementos scripts se colocan al final de la
página, lo que evita que su lentitud al cargar
ralentice la aparición de los elementos clave del
site. Esto afecta a casi todos esos elementos,
incluso el habitual código de seguimiento de
Google Analytics.
• Optimización por el lado del servidor: el archivo
.htaccess propuesto por HTML5 Boilerplate
permite introducir una caché más eficiente y
enviar nuestras páginas web comprimidas en
GZIP, igual que imágenes y elementos en
JavaScript, lo que optimiza el rendimiento del
site con tiempos de carga más reducidos.
02. HTML5 / FRAMEWORKS PARA HTML5
JUNIOR
Es un framework para hacer aplicaciones móviles
nativas en HTML5. Este marco utiliza transiciones
CSS3 para optimizar el rendimiento de los sites en
dispositivos móviles, permite diseñar carruseles
con flickable.js y el diseño de la interfaz de usuario
es realmente sencillo gracias al listado de
componentes predefinidos que incluye el propio
framework.
02. HTML5 / FRAMEWORKS PARA HTML5
Java
Java es un lenguaje de propósito general, orientado a objetos y con un
enorme predicamento dentro de la comunidad de desarrolladores. Este
es un listado de las herramientas básicas para hacer proyectos en este
lenguaje de programación.
03. JAVA / IDE
Un entorno de programación provee un marco de trabajo amigable para la mayoría de los
lenguajes de programación, desde C++, PHP, Python, C#, Delphi, Visual Basic, y también
Java, del que vamos a tratar a continuación. IDE es un programa de aplicación que consiste
en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica.
Entorno de Desarrollo
Integrado (IDE)
NETBEANS
Es un Entorno de Desarrollo Integrado para la creación de aplicaciones en Java para escritorio, móvil o web.
También permite desarrollarlas en HTML5 (HTML, JavaScript y CSS) y dispone de herramientas para
programadores en PHP, C y C++. NetBeans está desarrollado en Java y es de código abierto.
• NetBeans es algo más que un editor de texto:
permite refactorizar código, proporciona
plantillas y generadores de código, consejos. No
sólo soporta Java, también C, C++, XML, HTML,
PHP, Groovy, Javadoc, JavaScript y JSP.
• Gestión organizada de los proyectos: permite
que tus aplicaciones estén en un servicio de
carpetas. Eso facilita mucho el trabajo
colaborativo. En esa gestión es esencial el
control de versiones, por eso NetBeans integra
Mercurial, Subversion o Git.
• Desarrollo rápido de interfaz de usuario:
NetBeans cuenta con su propia interfaz de
usuario (GUI) para Java, HTML5, PHP o C/C++.
Esta tiene sencillas herramientas de arrastrar y
soltar lo que la convierte en muy intuitiva.
• Depurador de errores: dispone de un depurador
que alerta de posibles errores y también 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 más
conocido para Java. También 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 móviles como tabletas y
teléfonos inteligentes. Dispone de interfaz
gráfica 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 código 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 programación. Entre algunas de
las herramientas de las que dispone, tenemos:
• Sistema avanzado de refactorización de código.
• Sistema de completado de código mientras se
programa.
• Análisis de errores de código en tiempo real.
• Sistema de control de versiones.
• Diseñador UML (lenguaje unificado de modelado).
• Permite el desarrollo con frameworks Java como
Spring MVC, GWT, Vaadin, Play, Grails, Web
Services, JavaServer Faces, Apache Struts o Flex.
• Incluye asistencia para la programación en código
en HTML5, CSS3, JavaScript, Node.js,
ActionScript… y varios lenguajes más.
03. JAVA / IDE
03. JAVA / GVNIX
gvNIX es una herramienta de código abierto para el desarrollo rápido 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 integración de frameworks
como jQuery, Bootstrap 3, Leaflet o Datatables.
Desarrollo rápido de
aplicaciones: gvNIX
Algunas características de la herramienta:
• Herramienta multiplataforma:
Funciona en varios sistemas operativos
(Windows, Mac OSX y Linux). También se
puede integrar con cualquier entorno de
desarrollo integrado (IDE) como Eclipse o STS.
Lo único que se necesita para instalarlo es tener
el Java SDK (la versión 6 o superior) y Apache
Maven 3.
• Intérprete de comandos:
gvNIX está diseñado como un intérprete de
comandos interactivos. Tiene autocompletado
de los comandos y ayuda contextual.
• Proyectos estándar JEE:
Los proyectos creados con esta herramienta
cumplen con el estándar JEE, la plataforma para
desarrollar y ejecutar software de aplicaciones
en el lenguaje de programación Java.
• Sin dependencias del entorno de ejecución:
La aplicaciones que se desarrollan con gvNIX
sólo dependen de los frameworks utilizados por
el desarrollador, sin que eso provoque una
dependencia del entorno de ejecución.
Otra herramienta para el desarrollo rápido de
aplicaciones (RAD) es Spring Roo.
03. JAVA / GVNIX
Apache Maven es una herramienta para la gestión
y el diseño 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 información sobre
el proyecto y los detalles de la configuración del
framework: desde la lista y la configuración de los
plugins utilizados hasta las dependencias.
‘Framework’:
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 día es utilizado como servidor
autónomo en proyectos que exigen un gran rendimiento tanto en velocidad como en
volumen de tráfico. Al estar desarrollado en Java, funciona con cualquier sistema operativo.
Servidor web en
Java: Apache Tomcat
03. JAVA / APACHE TOMCAT
Las características más importantes
de la última versión son:
• Autenticación de acceso básico.
• Negociación de credenciales.
• HTTPS.
• Alojamiento compartido.
• CGI o interfaz de entrada común.
• Servlets de Java.
• SSI (Server Side Includes).
03. JAVA / APACHE TOMCAT
Javascript
JavaScript 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 librerías
JavaScript para desarrolladores.
JavaScript es uno de los referentes
internacionales en la programación de
proyectos. Se utiliza para el desarrollo de
páginas web, aplicaciones, gestión de
servidores y bases de datos… 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 ‘chico para todo’
dentro del sector.
Como prueba de su poderío, el último
informe de TIOBE sobre los lenguajes de
programación más utilizados por los
desarrolladores, JavaScript vuelve a situarse
entre las 10 elecciones más usadas por los
profesionales, por detrás de lenguajes de
propósito general como Java, C, C++,
Objective-C o PHP; fáciles de aprender
como Python; o de programación 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 Node.js. Es un marco de desarrollo muy
flexible, ágil y que dispone de una comunidad de
programadores que mejoran el producto y ayudan
en su utilización con mucha documentación
adicional en plataformas como GitHub. Además es
un framework sólido, estable y fácil de aprender.
Está inspirado en Sinatra, el marco de desarrollo
para Ruby.
EXPRESS:JS Entre algunas de sus características más
destacadas tenemos:
• Permite la creación de APIs de una forma
accesible.
• Ofrece Router de URL.
• Utiliza como framework base Jade, pero es
posible incorporar librerías JavaScript como
jQuery y Backbone.js para añadir nuevas
funcionalidades al marco de desarrollo.
04. JAVASCRIPT / FRAMEWORKS
Angular.js es un framework de JavaScript de
código abierto y totalmente libre, que permite el
desarrollo de aplicaciones web en el lado del
cliente y utiliza un patrón del tipo Modelo-Vista-
Modelo de Vista. Detrás de su lanzamiento y
mantenimiento se encuentra Google, lo que lo
convierte en una opción estable y sólida, con
documentación constante, para la comunidad de
desarrolladores.
ANGULAR:JS Características fundamentales:
• Sistema bidireccional de data-binding. El
Modelo y la Vista siempre se actualizan de
forma sincronizada con cualquier cambio en
los datos.
• Tiene patrón de Inyección de
Dependencias.
• Cualquier aplicación desarrollada en
AngularJS es compatible con varios
navegadores.
04. JAVASCRIPT / FRAMEWORKS
Ember.js es un framework JavaScript que permite
a cualquier desarrollador crear aplicaciones web de
una sola páginas del lado del cliente. Es de código
abierto y usa un patrón del tipo Modelo-Vista-
Controlador (MVC).
EMBER:JS Características fundamentales:
• Modificación automática entre los objetos
JavaScript y el DOM: esta relación entre los
datos que permite agilizar el desarrollo se
debe a la integración de la librería
Handlebars.js. Clases y procedimiento para
renderizar de forma sencilla una app.
• Dispone de un sistema de plantillas para
programar el HTML. Este sistema se llama
HTMLbars, y sería la variación para el DOM
de la librería Handlebars.
04. JAVASCRIPT / FRAMEWORKS
Knockout.js es un marco de desarrollo basado en
un patrón tipo Modelo-Vista-Modelo de Vista
(MVVM). Es de código abierto, dispone de una
licencia MIT. Cualquier desarrollador que quiera
empezar a usarlo para el desarrollo de una interfaz
de usuario tiene tutoriales y documentación en el
site del propio framework.
KNOCKOUT.JS Algunas de sus características principales:
• Facilita el desarrollo de bindings
declarativos.
• Seguimiento de dependencias: permite
actualizar los cambios en la Vista y el Modelo-
Vista en todos los elementos y objetos
independientes.
• Sistema de plantillas.
• Actualización automática de la interfaz de
usuario en función de los cambios que el
desarrollador acometa en el Modelo-Vista.
04. JAVASCRIPT / FRAMEWORKS
Esta es la librería JavaScript más utilizada por los
desarrolladores. Permite, de una forma sencilla,
interactuar con el HTML, el DOM, hacer todo tipo
de animaciones, introducir funcionalidades AJAX al
proyecto… JQuery le permite a un desarrollador
aportar un valor añadido con pocas líneas de
código. Es una biblioteca de código abierto, bajo
licencia MIT y GNU v.2.
JQUERY Algunas de sus características esenciales:
• Permite modificar el árbol del DOM.
• Soporte para CSS3.
• Manipulación total de las hojas de estilos.
• Creación de eventos.
• Desarrollo de animaciones complejas.
• Soporta extensiones.
• Compatible con todos los navegadores.
04. JAVASCRIPT / LIBRERÍAS
Backbone.js es una librería JavaScript que permite
programar por el lado del cliente. Se utiliza para el
desarrollo de aplicaciones de una única página,
donde el uso del JavaScript y AJAX son esenciales
para dotar a las apps de funcionalidades para el
usuario. Usa un patrón Modelo-Vista-Controlador.
BACKBONE.JS Algunas de sus características esenciales:
• Permite modificar el árbol del DOM.
• Facilita el trabajo intenso con datos.
Creación de eventos.
• Enlace con la tecnología por el lado del
servidor: PHP, Node.js…
• Uso de la API para incorporar
funcionalidades.
• Utilización simplificada de vistas.
04. JAVASCRIPT / LIBRERÍAS
Kendo UI es una librería, o más bien un paquete
de librerías, que proporciona a los desarrolladores
todos los elementos necesarios para crear
aplicaciones web por el lado del cliente, con una
interfaz de usuario dinámica basada en JQuery. Al
final Kendo UI suele ser utilizada para el desarrollo
de una interfaz de usuario intuitiva, sencilla e
innovadora a través de distintos tipos de widgets
que se montan como un mecano. Esos elementos
predefinidos incluyen menús dinámicos, ventajas,
sistemas de carga de archivos…
Características:
• Funciona con la mayoría de navegadores y
sistemas operativos.
• Permite visualización de datos.
• Data-binding.
KENDO UI
04. JAVASCRIPT / LIBRERÍAS
Modernizr es una librería 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
características de cada navegador. Podemos usar
determinadas funcionalidades o hacer ajustes en
función de lo que use cada usuario. Estas
pruebas se hacen a través de un sistema de test.
Además, su API permite cargar test
personalizados por proyectos.
MODERNIZR
04. JAVASCRIPT / LIBRERÍAS
PHP
El lenguaje de programación PHP es una de las opciones más
utilizadas por los desarrolladores para la creación de proyectos y
aplicaciones web dinámicas. Es código que se ejecuta desde el
servidor, bastante seguro y con una curva de aprendizaje corta.
PHP es uno de los lenguajes de programación más utilizados en el desarrollo de proyectos
web, en gran parte por su enorme penetración tanto en servidores web como sistemas
operativos. Es una solución 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 edición de
contenidos como Wordpress o Drupal. PHP también es utilizado, por ejemplo, por los
conocidos servidores Apache.
Es muy popular por varias razones:
05. PHP
• Es un lenguaje para el desarrollo de
aplicaciones web dinámicas a partir de los
datos contenidos en una base de datos.
• La curva de aprendizaje es muy corta gracias a
que los desarrolladores de PHP simplificaron su
estructura.
• Permite implementar programación orientada a
objetos.
• El código PHP se ejecuta desde el servidor,
por lo que nadie tendrá acceso a él desde un
navegador. Eso aumenta la seguridad.
• Gran funcionamiento con bases de datos
relacionales de código abierto como MySQL,
una solución muy utilizada en desarrollo.
El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar
tiempo con un resultado mejor: código de mayor calidad, proyectos escalables, aplicaciones
web rápidas y robustas... Usar un framework permite tener ordenado en carpetas todo el
código, disponer de librerías y funcionalidades que enriquecerán el proyecto final y aumentar
la seguridad.
Existe un listado amplio de marcos de desarrollo para profesionales PHP.
‘Frameworks’
05. PHP / FRAMEWORKS
05. PHP / FRAMEWORKS
LARAVEL
Una comunidad amplia con una documentación
extensa suele ser una de las razones valoradas a la
hora de escoger una u otra herramienta. Eso
permite salir de más de un apuro cuando se
cometen errores o uno está en un callejón sin
salida. Laravel es un framework muy utilizado
entre los desarrolladores PHP por esta razón.
Es un marco de código abierto lanzado en 2011
para desarrollar proyectos web. Su creador fue
Taylor Otwell. Su última versión es la 5.1. Como la
mayoría de los frameworks, Laravel dispone de la
serie habitual de básicos: rutas, modelos, plantillas,
vistas y controladores. También dispone de un
sistema de plantillas propio que se llama Blade.
Las principales características de Laravel:
• Soporta RESTful.
• Necesita la instalación de Composer para
administrar dependencias en PHP. Sirve para
declarar las librerías del proyecto que se está
desarrollando sin intervención del desarrollador.
• Se ejecuta con un patrón MVC (Modelo-Vista-
Controlador). Consiguiendo aumentar la
seguridad y separar totalmente la lógica de la
aplicación de la interfaz de usuario.
• Soporte para caché.
05. PHP / FRAMEWORKS
CODEIGNITER
Al igual que Laravel, CodeIgniter dispone de una
gran comunidad detrás, que alimenta la
documentación disponible. Es un marco de
desarrollo sencillo y con gran rendimiento. Tiene
algunas características interesantes:
• Framework que trabaja con la mayoría de
entornos y servidores.
• Utiliza el patrón MVC.
• Separación del núcleo del marco y el código
del proyecto.
• Marco de desarrollo flexible: los
desarrolladores pueden seguir sus reglas de
codificación 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 código abierto MIT.
Está desarrollado por completo en PHP, se puede
ejecutar en plataformas UNIX y Windows y es
compatible con la mayoría de los sistemas de gestión
de bases de datos más conocidos: MySQL, Microsoft
SQL Server…
Sus características más importantes:
• Permite el cambio de sistema de gestión
de base de datos en cualquier momento
del desarrollo. Esto es una gran ventaja.
• Usa programación orientada a objetos.
• Usa patrones Modelo-Vista-Controlador.
• Es un marco de desarrollo que facilita
mucho la interoperabilidad.
• Motor de plantillas (Twig) fácil de usar.
• Sistema de caché basado en HTTP que
mejora el rendimiento de las aplicaciones
desarrolladas con Symfony.
Mediante el uso de librerías puedes agrupar en un solo fichero diversas funciones para
incluirlas en distintas páginas y así disponer de todas ellas fácilmente a través de la librería
instalada. Hay muchas librerías PHP, pero esta es una pequeña selección.
Librerías PHP
05. PHP / LIBRERÍAS
PHP-CPP
Es una biblioteca C++ para el
desarrollo de extensiones
nativas para PHP. La pueden
utilizar los desarrolladores que
sepan PHP y también los que
programen en C++, lenguajes
que tiene una sintaxis similar.
Dispone de una amplia
documentación para sus
proyectos y el código fuente
está lleno de comentarios y
explicaciones muy útiles.
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
código abierto y totalmente
libre.
HOA
Es modular, escalable y
estructurada. Dispone de un
manual de formación para
comenzar a utilizarla y de
documentación adicional para el
uso de la API.
El usuario de Hoa tiene la
capacidad de crear sus propias
bibliotecas, lo que permite la
reutilización y uso compartido
del código 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 aplicación
con sus características y
herramientas.
MINK
Es una biblioteca PHP muy
usada entre los desarrolladores
porque permite probar cómo
sus aplicaciones web
interactúan con el navegador y
si lo hacen correctamente.
Mink viene con soporte para los
siguientes frameworks:
PHPUnit, Behat y Symfony2.
05. PHP / LIBRERÍAS
Pattern Lab es un marco para el desarrollo
del front-end de proyectos y aplicaciones
web. Permite a los desarrolladores y
diseñadores tomar decisiones sobre las
plantillas y para mostrar distintas alternativas
durante el proceso de desarrollo. Permite
también testear el diseño en navegadores.
La herramienta facilita las pruebas de diseño
de front-end en elementos pequeños como
botones o etiquetas para un formulario o
plantillas enteras con todos sus
componentes de diseño (logotipo,
navegación…).
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 envío de un
gran número de peticiones con gran
rendimiento…
Además, elimina la redundancia en la
creación de clientes de servicios web. Tiene
mecanismos de caché de respuestas y de
consultas en paralelo.
OTRAS HERRAMIENTAS PHP
05. PHP / HERRAMIENTAS
Perl
Perl es un lenguaje de programación de propósito general, fácil de
usar y que facilita la escritura rápida de código a los desarrolladores.
Además, dispone de numerosas librerías y módulos que amplían
mucho su funcionalidad para el desarrollo de proyectos web.
Administración de sistemas, programación en red, desarrollo de proyectos web o de
programas CGI (Common Gateway Interface)... Perl es un lenguaje de propósito general que
en la actualidad está disfrutando de una segunda juventud, se utiliza cada vez más en el
desarrollo de proyectos. Hoy en día 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 intérprete para Perl.
Las características fundamentales de este lenguaje de programación son:
06. PERL
• Fácil de usar y de programación rápida.
• Su curva de aprendizaje es alta.
• Dispone de librerías y módulos, lo que
aumenta su funcionalidad.
• Soporta programación estructurada, orientada
a objetos y funcional.
• Tiene un sistema de procesamiento de texto.
• Se puede utilizar en varios entornos: Windows,
Mac OS X y Linux.
Este Entorno de Desarrollo Integrado de
ActiveState permite no sólo la programación en
Perl, también en otros lenguajes de programación
como Python, PHP, Go, HTML o Node.js. La idea
es facilitar a los programadores el desarrollo de
interfaces en Perl gracias a características como su
control de versiones, su depurador gráfico, su
sistema de prueba unitaria, su ayuda en línea…
KOMODO IDE Los últimos avances la convierten en una
herramienta mucho más cómoda y funcional:
• Dispone de un panel que permite reducir las
interrupciones en el trabajo. Se pueden
visualizar los nombres de instancias
directamente en ese panel.
• Tiene un sistema de colaboración inteligente,
que alerta a cada miembro del equipo de
qué compañeros se encuentran editando
código en ese momento.
• Corrección rápida y automática de errores de
sintaxis desde el editor.
• El nuevo instalador de paquetes permite
incorporar nuevas funcionalidades para cada
proyecto.
• Introduce el modo enfoque, que facilita la
ocultación de elementos para que el
programador se concentre el código.
• Otras mejoras: gestor de paquetes integrado,
creación de configuraciones personalizadas,
nuevo sistema de notificaciones, etc.
06. PERL / ENTORNOS INTEGRADOS
EPIC es un Entorno de Desarrollo Integrado de
código 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 integración
con la Interfaz Gráfica de Usuario (GUI) de Eclipse
le da un valor añadido interesante.
EPIC (Editor Perl y IDE para Eclipse) Sus características principales son:
• Coloración configurable de elementos
sintácticos.
• Detección automática de errores de sintaxis
durante la programación y en el momento
de guardar archivos.
• Autocompletado de variables.
• Sistema de control de ejecución.
• Función de exportación 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 versión del editor basada en los
trabajos de la primera, lanzada en 1991.
EMACS Algunas de sus características más importantes:
• Sistema sencillo de edición de
texto: comandos para manipular palabras y
párrafos, resaltado de sintaxis para favorecer
la lectura del código y ejecución de macros
de teclado a través de comandos
personalizados.
• El editor de texto es modificable al gusto del
propio desarrollador mediante la
incorporación de fragmentos de
código Emacs Lisp (bibliotecas, librerías,
paquetes o extensiones de código) con
nuevas funcionalidades:
• Calc: una calculadora que se incorpora
dentro del editor.
• Emacs/W3: un navegador web.
• ERC: un cliente IRC.
• MULE: permite la edición 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 código pueden manipular
archivos de más de 4 GB. Es una herramienta de
pago, pero dispone de un periodo de prueba
gratuito.
Algunas de sus carácterísticas son:
• Resaltado de sintaxis configurable.
• Soporte FTP completo y navegador FTP
multipanel.
• Plantillas inteligentes.
• Función de plegado de código, que permite
esconder las partes que no son necesarias.
• Lista completa de funciones en una vista de
árbol, incluidos todos los subgrupos
(parámetros, variables, propiedades...).
• Editor de estilos CSS.
• Añadir comentarios en línea o en bloque en el
texto seleccionado.
• Macros editables.
• Integración de lenguaje de scripting para
automatización de tareas.
• Diseño de temas del editor personalizables.
• Sistema de copia de seguridad y
almacenamiento automático.
ULTRAEDIT
06. PERL / EDITORES DE TEXTO
TextMate es una editor de texto con Interfaz
Gráfica de Usuario (GUI) para sistema operativo
Mac OS X. Fue desarrollado porAllan Odgaard.
Dispone de una gran comunidad que lanza
contribuciones públicas para personalizar el editor
en función de las necesidades de cada
proyecto. Un editor en mejora continua.
Algunas de sus funciones más destacadas:
• Función de buscar y reemplazar texto en un
proyecto.
• Búsqueda y reemplazo de texto por
expresiones regulares.
• Esquema dinámico para trabajar con varios
archivos.
• Bloques de código plegable.
• Histórico de portapapeles.
• Grabación de macros sin necesidades de
programación.
• Navegación entre archivos mediante el uso de
pestañas.
• Editor personalizable a través de varios temas.
TEXTMATE
06. PERL / EDITORES DE TEXTO
Aquí tienes dos frameworks que pueden
hacerte la vida más facil programando en PERL:
MOJOLICIOUS
Mojolicious es un framework web en tiempo real
para desarrolladores en Perl. Fue creado
por Sebastian Riedel. Este marco usa el patrón
estándar Modelo-Vista-Controlador (MVC) y soporta
CGI, FastCGI y PSGI. Es un framework que también
soporta rutas RESTful, extensiones, cookies
firmadas, test unitarios, servidor de ficheros
estáticos, plantillas, formato JSON… Además, el sitio
web de este framework dispone de una
documentación muy útil para iniciados
CATALYST
Catalyst es un framework web de código
abierto que utiliza un patrón Modelo-Vista-
Controlador, multiplataforma y con una amplia
documentación gracias a una gran comunidad
de desarrolladores que mantiene una mejora
continua de este marco de desarrollo de
software. Está inspirado en Ruby on Rails.
06. PERL / FRAMEWORKS
compartir
TE PUEDE INTERESAR
Innovation Edge: APIs: los beneficios
empresariales de las APIs
Ebook ‘wearables’: la revolución móvil
que se lleva puesta
Los nuevos servicios y APIs de Apple
para desarrolladores de apps
Infografía: cómo desarrollar una app
con Apple WatchKit
Ebook: Herramientas de visualización
de datos
Regístrate
para estar al día
de las últimas
tendencias
www.bbvaopen4u.com
conversa con nosotros en:
BBVA no se hace responsable de las opiniones publicadas en este documento.

Más contenido relacionado

PPTX
2 2 estilos arquitectonicos
PPTX
Diseño caso de pruebas
PPTX
Comprensión de los Requerimientos
PDF
Diagrama secuencial
PPTX
Ventajas y desventajas de visual studio
PPT
Atributos de calidad en el desarrollo de software
PPTX
Proceso del Software
PPTX
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente
2 2 estilos arquitectonicos
Diseño caso de pruebas
Comprensión de los Requerimientos
Diagrama secuencial
Ventajas y desventajas de visual studio
Atributos de calidad en el desarrollo de software
Proceso del Software
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente

La actualidad más candente (20)

PPTX
Metodología WEB UWE
PPT
Ingenieria de software
PPTX
Ciclo Vida del Software
PPTX
Herramientas case alto y bajo nivel
DOCX
Caracteristicas rup
DOCX
Plan de Pruebas
PPT
Ingenieria De Software
PDF
Principios de diseño de la arquitectura del software
PDF
Metodología ICONIX
PDF
PSW Unidad 1 PROCESO DE SOFTWARE
PPTX
Modelamiento de software
PPTX
Cocomo ii
PPTX
Metodología RUP
PPTX
Rational rose
DOC
Plan de pruebas de software
PPTX
Fundamentos de Calidad del Software - Modelos y Estándares
DOCX
Cuestionario uml y objetos zuli
PPTX
Estructuras de control en Visual Basic
PDF
PPTX
Etapa de estudio de viabilidad de un proyecto informático c4
Metodología WEB UWE
Ingenieria de software
Ciclo Vida del Software
Herramientas case alto y bajo nivel
Caracteristicas rup
Plan de Pruebas
Ingenieria De Software
Principios de diseño de la arquitectura del software
Metodología ICONIX
PSW Unidad 1 PROCESO DE SOFTWARE
Modelamiento de software
Cocomo ii
Metodología RUP
Rational rose
Plan de pruebas de software
Fundamentos de Calidad del Software - Modelos y Estándares
Cuestionario uml y objetos zuli
Estructuras de control en Visual Basic
Etapa de estudio de viabilidad de un proyecto informático c4
Publicidad

Similar a Herramientas de programación para desarrolladores (20)

PPTX
Conceptos-HTML-y-JavaScript-Bloque-0-Introduccion-a-nuestro-entorno-de-desarr...
PPTX
01 T1 2021 Sistemas Embebidos.pptx
PDF
Introduccion a-python
PDF
Introducción a python
PDF
Clase 3 Editores para Programación Web
PDF
Python
PPTX
Investigación
PPTX
MEJORES PROGRAMAS PARA DISEÑAR PAGINA WEB
PPTX
Colegio particular
PPTX
Colegio particular
PDF
Electonica de potencia, diodos de rectificacion
PPTX
Preguntas y Respuestas 2
PDF
Desarrollo de aplicaciones .net
PDF
Desarrollo de aplicaciones .net
PPT
Quien es el programador
DOCX
P2_Act1
ODP
Sfd
PPTX
Mi lenguaje de programación de preferencia
PPTX
Code blocks & lenguaje c++
PDF
1. Presentación e instalación de Python.pdf
Conceptos-HTML-y-JavaScript-Bloque-0-Introduccion-a-nuestro-entorno-de-desarr...
01 T1 2021 Sistemas Embebidos.pptx
Introduccion a-python
Introducción a python
Clase 3 Editores para Programación Web
Python
Investigación
MEJORES PROGRAMAS PARA DISEÑAR PAGINA WEB
Colegio particular
Colegio particular
Electonica de potencia, diodos de rectificacion
Preguntas y Respuestas 2
Desarrollo de aplicaciones .net
Desarrollo de aplicaciones .net
Quien es el programador
P2_Act1
Sfd
Mi lenguaje de programación de preferencia
Code blocks & lenguaje c++
1. Presentación e instalación de Python.pdf
Publicidad

Más de BBVA API Market (11)

PDF
Programming tools for developers
PDF
Herramientas de visualización de datos
PDF
Open Source
PDF
Open Source: getting started
PDF
Frameworks y herramientas para la web del futuro
PDF
APIs e Internet de las Cosas
PDF
Union of bitcoin and APIs
PDF
La unión del bitcoin y las APIs
PDF
Big data in fintech ecosystem
PDF
Predictive APIs
PDF
BBVA API Market - Productos
Programming tools for developers
Herramientas de visualización de datos
Open Source
Open Source: getting started
Frameworks y herramientas para la web del futuro
APIs e Internet de las Cosas
Union of bitcoin and APIs
La unión del bitcoin y las APIs
Big data in fintech ecosystem
Predictive APIs
BBVA API Market - Productos

Último (20)

PPTX
DOROTHEA E OREM EXPO.pptx de una teoridta importante
PPTX
EXPOSICIÓN 2021.pptxhgdfshdghsdgshdghsds
PPTX
Status Proyecto CIVIX INTELIGENCIA ARTIFICIAL
PDF
INFORME ESPECIAL BICENTENARIO DE BOLIVIA.pdf
PDF
Mapa mental.pdf esquema de realización en general
PPTX
Abdomen HosAESREBBweubeehkrhkqhrkhehrjktil.pptx
PPTX
GOOGLE SHEETS IMPORTANCIA Y CARACTERISITICAS
PPTX
Las buenas costumbres en la familiaaaaaaa
PPTX
EPCE_EXCEL 365 CURSO DE ENTRENAMIENTO.pptx
PDF
Manual de presentacion de la aplicacion Plugbot
PDF
TEST DE ORIENTACION VOCACIONAL DILAN MAHECHA
PDF
Actualización en el uso de uterotónico.pdf
PPTX
Inteligencia_Artificialdelosk_Mujer.pptx
PDF
Presentación para empoderar a un equipo a factirar
PDF
Presentación_rendición_de_cuentas_2020_26-FEB-2021.pdf
PDF
Rendición_Pública_de_Cuentas_Inicial_2019.pdf
PDF
6°-Básico-Matemática-Diagrama-de-tallo-y-hoja_y_probabilidades.pdf
PPTX
Introducción al analisis de datos con Power bi
PDF
Registro de Limpieza y Desinfección.pdf1
PPTX
Embarazo en adolescentes ksjsjjdkxkxkxkxxj
DOROTHEA E OREM EXPO.pptx de una teoridta importante
EXPOSICIÓN 2021.pptxhgdfshdghsdgshdghsds
Status Proyecto CIVIX INTELIGENCIA ARTIFICIAL
INFORME ESPECIAL BICENTENARIO DE BOLIVIA.pdf
Mapa mental.pdf esquema de realización en general
Abdomen HosAESREBBweubeehkrhkqhrkhehrjktil.pptx
GOOGLE SHEETS IMPORTANCIA Y CARACTERISITICAS
Las buenas costumbres en la familiaaaaaaa
EPCE_EXCEL 365 CURSO DE ENTRENAMIENTO.pptx
Manual de presentacion de la aplicacion Plugbot
TEST DE ORIENTACION VOCACIONAL DILAN MAHECHA
Actualización en el uso de uterotónico.pdf
Inteligencia_Artificialdelosk_Mujer.pptx
Presentación para empoderar a un equipo a factirar
Presentación_rendición_de_cuentas_2020_26-FEB-2021.pdf
Rendición_Pública_de_Cuentas_Inicial_2019.pdf
6°-Básico-Matemática-Diagrama-de-tallo-y-hoja_y_probabilidades.pdf
Introducción al analisis de datos con Power bi
Registro de Limpieza y Desinfección.pdf1
Embarazo en adolescentes ksjsjjdkxkxkxkxxj

Herramientas de programación para desarrolladores

  • 1. Herramientas de programación 01 Python 02 Html5 03 Java 04 Javascript 05 PHP 06 Perl
  • 2. Python Una de las últimas apuestas del mercado web, con una enorme implantación entre la comunidad de desarrolladores americana, es el lenguaje de programación Python, que permite la realización de proyectos de forma ágil y versátil.
  • 3. BeeWare es algo más 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 pequeñas tareas y todas a la vez por separado sirven para poner en marcha grandes proyecto en Python. 01. PYTHON / BEEWARE
  • 4. Las herramientas la caja de servicios BeeWare son: CRICKET Herramienta gráfica para ejecutar pruebas unitarias. No ofrece muchos detalles de la ejecución mientras la suite está en marcha y no es posible empezar a buscar fallos hasta que la ejecución está completa. Cricket tiene soporte para Django, un framework de código abierto que está escrito en Python y sirve para desarrollar aplicaciones web de forma más rápida. BUGJAR Depurador de errores de código. Los antiguos depuradores eran buenos por sus entornos de desarrollo integrado y por la posibilidad de depurar errores de forma visual mientras se producía la ejecución. El modelo de depuración de Python contiene buenos ganchos de depuración. Además, dispone de una interfaz gráfica que permite desplazarse por el código para corregir errores. DUVET Interfaz gráfica que ayuda a los desarrolladores a visualizar los resultados de cobertura de pruebas devuelto por coverage.py, una herramienta que funciona para medir la cobertura de código de programas en Python. Este tipo de acciones sirven para medir la efectividad de las pruebas, mostrando por separado qué partes del código se ejercen por medio de pruebas y cuáles no. 01. PYTHON / BEEWARE
  • 5. BeeWare también tiene una serie de librerías para proyectos en Python: TOGA Paquete de herramientas nativo para cada sistema, hecho en Python y que puede ser usada para escritorio y móvil. iOS TEMPLATE Plantilla que nos permite el desarrollo de aplicaciones en lenguaje Python pero ejecutadas en iOS. ANDROID TEMPLATE Una plantilla para implementar código Python en Android. RUBICON Herramientas que permiten establecer relaciones entre el entorno de programación de Python y el resto. CASSOWARY Implementación del algoritmo de soluciones de limitaciones (el mismo que usa el motor gráfico de Mac OS X e iOS desde 2011). 01. PYTHON / BEEWARE
  • 6. Los desarrolladores en Python cuentan con este entorno de desarrollo integrado (IDE) con una interfaz gráfica de usuario incorporada (GUI) para wxPython. Esta herramienta incluye un inspector de objetos, jerarquías de herencia, un depurador especialmente bueno y ayuda integrada. Evidentemente está escrito en Python. BOA Constructor 01. PYTHON / BOA CONSTRUCTOR
  • 7. La interfaz de usuario está 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 módulos para nuestras aplicaciones. Es el primer paso para generar un nuevo de desarrollo para Python. INSPECTOR A través de esta herramienta podemos acceder a los objetos EDITOR Esta es la parte de BOA Constructor donde el desarrollador puede acceder al código fuente de la aplicación que está creando. Es en el editor donde se pueden corregir errores y ejecutar la aplicación para identificarlos. Existe algún 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
  • 8. Un entorno de desarrollo integrado es una aplicación de software que permite al desarrollador el diseño de software de una forma sencilla. Dispone de todas las herramientas necesarias integradas en un mismo entorno: un editor de código fuente, herramientas de construcción automática y un depurador. En el mercado hay varios. Entornos de desarrollo integrado para Python 01. PYTHON / ENTORNOS DE DESARROLLO
  • 9. PYDEV PARA ECLIPSE PyDev es una paquete de Python para Eclipse, un IDE muy versátil, preparado para permitir no solo el lenguaje Python, sino también muchos otros. Tiene característica especialmente interesantes si quieres programar aplicaciones: • Integración con Django, un framework de desarrollo web de código abierto escrito en Python. Lo que permite Django a los desarrolladores es la creación de proyectos web complejos a través de un desarrollo rápido mediante el principio de computación Don’t Repeat Yourself (No te repitas), que busca la eliminación de duplicidades en los procesos de desarrollo. • Finalización de código. • Resaltado de sintaxis. • Análisis de código. • Depurador y depurador remoto. • Navegador interactivo. • Refactorización. • Integración de pruebas unitarias. • Cobertura de código fuente. 01. PYTHON / ENTORNOS DE DESARROLLO
  • 10. PYCHARM Es un IDE creado por JetBrains. Dentro de la comunidad de desarrolladores Python tiene una fama increíble. 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 elección para programar. Alguna de sus características fundamentales son: • Integración • Integración con frameworks como Django, Flask, Pyramid o Web2Py. • Compatibilidad con herramientas y lenguajes de programación para desarrolladores en Python como SQLAlchemy (ORM), Google App Engine o Cython. • Autocompletado. • Resaltador de sintaxis. • Herramienta de análisis. • Refactorización. • Depurador avanzado de Python y JavaScript. • Sistema de control de versiones como Git, CVS y Mercurial. Por ejemplo, en este vídeo uno de los desarrolladores de JetBrains diseña un clon de la red social Pinterest con las herramientas del entorno de desarrollo integrado PyCharm: 01. PYTHON / ENTORNOS DE DESARROLLO
  • 11. WXGLADE Es un diseñador de interfaz gráfica de usuarios wxWidgets escrito en Python, pero que puede generar código fuente para otros lenguajes de programación como C++, Lisp o Perl. wxGlade no es un entorno de desarrollo integrado, con todas las herramientas para hacer un desarrollo en Python, sólo es un diseñador que te permite visualizar los widgets creados. 01. PYTHON / ENTORNOS DE DESARROLLO
  • 12. Html5 Cualquier desarrollador front-end debe conocer muy bien la Trinidad del diseño: HTML, CSS y JavaScript. Esto pretende ser un listado de las mejores herramientas para programadores en lenguaje HTML.
  • 13. 02. HTML5 / EDITORES DE HTML El editor HTML ideal debe ser capaz de validar que el código HTML se ajuste a los estándares, así como de obtener una vista previa de la página en diferentes navegadores, de soportar meta etiquetas (metatags) y de permitir editar las imágenes a un nivel básico. A continuación, te proponemos diferentes herramientas. Editores de HTML y de lenguajes de ‘front-end’
  • 14. SUBLIME TEXT Este editor de código no es gratuito, la licencia tiene un coste de 70 dólares, aunque se puede descargar una versión gratuita para probarlo. Es una solución 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 código. • Disponible para Windows, Mac OS X y Linux. • Soporta un gran número de lenguajes de programación: HTML, C, C++, Groovy, Java, JavaScript, Lisp, Perl, PHP, Python, Ruby... • Atajos rápidos para la búsqueda. • Modo libre de distracciones para la escritura de código. • Función de autocompletar. • Editor muy personalizable. • Admite macros. • Mejora de sus funcionalidades con plugins. Algunas de sus características fundamentales son: 02. HTML5 / EDITORES DE HTML
  • 15. ATOM Editor gratuito, de código abierto y muy personalizable lanzado desde GitHub. Es una herramienta que está generando una gran sensación dentro de la comunidad de desarrolladores. Lo bueno de este editor es que muchos programadores están aportando mejoras al editor a través de GitHub. • Disponible para Windows, Mac OS X y Linux. • Totalmente personalizable: sus creadores presumen de que el desarrollador puede modificar el editor a su gusto, incluso el core. • Integración de Node.js: esto permite que cualquier usuario pueda usar los cientos de paquetes y librerías. • Sistema de navegación de archivos. • Buscar y reemplazar en los archivos de trabajo. • Paneles, cursores y selectores múltiples. • Interfaz de usuario sencilla y limpia. • Diseño de módulos personalizados: el editor permite crearlos para incorporar nuevas funcionalidades. Características interesantes de Atom: 02. HTML5 / EDITORES DE HTML
  • 16. NOTEPAD++ Es, posiblemente, uno de los editores de código más conocidos del mercado. Es una herramienta bajo licencia GNU (Licencia Pública General). Se podría definir como un blog de notas con esteroides. Dispone de características muy interesantes para desarrolladores y programadores: • Dispone de coloreado de código para facilitar la programación, no sólo para HTML, también para otros lenguajes a los que Notepad++ da soporte: Python, Ruby, PHP o JavaScript. • Autocompletado de código. No es necesario teclear todas la etiquetas HTML. Los comandos de teclado se pueden configurar. • Posibilidad de trabajar en varios documentos distintos a la vez. • Multivista. El usuario puede tener varias vistas de un mismo código. • Expresiones regulares para automatizar acciones. • Detección automática del estado del documento. Buena característica si un equipo de desarrolladores trabaja colectivamente. • Grabación y reproducción de macros. Posibilidad de hacer zoom. • Permite para varios idiomas. 02. HTML5 / EDITORES DE HTML
  • 17. EDITRA Editor de texto multiplataforma. Sus desarrolladores destacan su interfaz sencilla de usar y que cuenta con asistencia para la programación en código. Editra es totalmente gratis, está bajo una licencia LGPL y permite más de 60 lenguajes de programación distintos: Python, PHP, Perl, Java, Lisp, SQL, Visual Basic o Pascal son algunos de los más importantes. • Permite trabajar con pestañas y en varios documentos a la vez. • Incorpora un buscador. • Dispone de un editor y resaltador de comandos. • Función de autocompletado. • Ayuda de palabras clave. • Tiene la posibilidad de aumentar sus funcionalidades con la incorporación de plugins. 02. HTML5 / EDITORES DE HTML
  • 18. TEXTWRANGLER Editor de texto desarrollado por Bare Bones Software. Tiene una interfaz sencilla, inteligente y con algunas funcionalidades que permiten programar código con un gran rendimiento. Algunas de sus características: • Permite para varios lenguajes de programación como HTML, C, C++, Fortran, Java, Object Pascal, Objective-C, Perl, Python, Ruby… • Coloreado de sintaxis para facilitar la programación en código. • Funcionalidad de buscar y reemplazar en múltiples filas. • Configuración de idioma por documento de trabajo. • Posibilidad de funcionar como un editor externo integrado con Xcode, el Entorno de Desarrollo Integrado de Apple. • Soporte integrado para el acceso FTP a través de Interarchy. • Teclas configurables por el desarrollador. • Lista de ventanas flotantes. 02. HTML5 / EDITORES DE HTML
  • 19. 02. HTML5 / FRAMEWORKS PARA HTML5 ‘Frameworks’ para HTML5 Una hoja de estilos completa, reseteando, normalizando y ofreciendo herramientas prácticas; directivas de optimización del servidor; metainformación en el servidor; organización del layout HTML5… Estas son algunas de las características de un framework para HTML5.
  • 20. BOOTSTRAP Es el framework de Twitter para el diseño responsivo o adaptativo y desarrollo de páginas web en HTML, CSS y JavaScript. Bootstrap está muy extendido entre los desarrolladores de front-end. El aumento del consumo de contenidos en dispositivos móviles es uno de los acicates fundamentales en la expansión. • Aunque tiene una compatibilidad limitada para HTML5 y CSS3, sus diseños son compatibles con la mayoría de navegadores. • Es un marco de código abierto y está compartido en GitHub. Son muchos los desarrolladores que lo utilizan y lo mejoran continuamente. • Facilita el trabajo con JavaScript: existen componentes que permiten implementar recursos especiales sin necesidad de hacerlo. • Todos esos componentes están basados en jQuery. Estos plugins permiten introducir nuevas funcionalidades a la interfaz: desde un efecto de carrusel hasta las creación de botones o alertas. Y su enorme popularidad favorece que cada vez haya más plugins. • Bootstrap utiliza LESS (lenguaje de hojas de estilo dinámico). • Facilita mucha documentación: si alguien tiene un proyecto y tiene alguna duda o necesita resolver alguna situación complicada, siempre dispondrá de documentación y tutoriales para resolverla. 02. HTML5 / FRAMEWORKS PARA HTML5
  • 21. HTML5 BOILERPLATE: Es el otro gran framework de HTML5 del mercado. Estas son algunas de sus características fundamentales: • Da soporte a navegadores antiguos. HTML5 Boilerplate dispone de una biblioteca de detección de características llamada Modernizr. Esto permite determinar si el navegador del usuario soporta HTML5 y CSS3. En caso de que no sea así, se carga una función adicional que permite a ese navegador antiguo cargar todos los elementos del site. • Mejora de los tiempos de carga. Con el consumo de información en dispositivos móviles, el tiempo de carga de las páginas se convierte en una condición imprescindible para competir. En HTML5 Boilerplate, todos los elementos scripts se colocan al final de la página, lo que evita que su lentitud al cargar ralentice la aparición de los elementos clave del site. Esto afecta a casi todos esos elementos, incluso el habitual código de seguimiento de Google Analytics. • Optimización por el lado del servidor: el archivo .htaccess propuesto por HTML5 Boilerplate permite introducir una caché más eficiente y enviar nuestras páginas web comprimidas en GZIP, igual que imágenes y elementos en JavaScript, lo que optimiza el rendimiento del site con tiempos de carga más reducidos. 02. HTML5 / FRAMEWORKS PARA HTML5
  • 22. JUNIOR Es un framework para hacer aplicaciones móviles nativas en HTML5. Este marco utiliza transiciones CSS3 para optimizar el rendimiento de los sites en dispositivos móviles, permite diseñar carruseles con flickable.js y el diseño de la interfaz de usuario es realmente sencillo gracias al listado de componentes predefinidos que incluye el propio framework. 02. HTML5 / FRAMEWORKS PARA HTML5
  • 23. Java Java es un lenguaje de propósito general, orientado a objetos y con un enorme predicamento dentro de la comunidad de desarrolladores. Este es un listado de las herramientas básicas para hacer proyectos en este lenguaje de programación.
  • 24. 03. JAVA / IDE Un entorno de programación provee un marco de trabajo amigable para la mayoría de los lenguajes de programación, desde C++, PHP, Python, C#, Delphi, Visual Basic, y también Java, del que vamos a tratar a continuación. IDE es un programa de aplicación que consiste en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica. Entorno de Desarrollo Integrado (IDE)
  • 25. NETBEANS Es un Entorno de Desarrollo Integrado para la creación de aplicaciones en Java para escritorio, móvil o web. También permite desarrollarlas en HTML5 (HTML, JavaScript y CSS) y dispone de herramientas para programadores en PHP, C y C++. NetBeans está desarrollado en Java y es de código abierto. • NetBeans es algo más que un editor de texto: permite refactorizar código, proporciona plantillas y generadores de código, consejos. No sólo soporta Java, también C, C++, XML, HTML, PHP, Groovy, Javadoc, JavaScript y JSP. • Gestión organizada de los proyectos: permite que tus aplicaciones estén en un servicio de carpetas. Eso facilita mucho el trabajo colaborativo. En esa gestión es esencial el control de versiones, por eso NetBeans integra Mercurial, Subversion o Git. • Desarrollo rápido de interfaz de usuario: NetBeans cuenta con su propia interfaz de usuario (GUI) para Java, HTML5, PHP o C/C++. Esta tiene sencillas herramientas de arrastrar y soltar lo que la convierte en muy intuitiva. • Depurador de errores: dispone de un depurador que alerta de posibles errores y también con herramientas para optimizar las aplicaciones en velocidad y uso de memoria. Facilitando la escalabilidad de las aplicaciones. 03. JAVA / IDE
  • 26. ECLIPSE Es el entorno de desarrollo integrado más conocido para Java. También 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 móviles como tabletas y teléfonos inteligentes. Dispone de interfaz gráfica de usuario y herramientas para llevar a cabo numerosas funciones. 03. JAVA / IDE
  • 27. INTELLIJ IDEA Desarrollado en Java por Jet Brains bajo dos tipos de licencias, una de código 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 programación. Entre algunas de las herramientas de las que dispone, tenemos: • Sistema avanzado de refactorización de código. • Sistema de completado de código mientras se programa. • Análisis de errores de código en tiempo real. • Sistema de control de versiones. • Diseñador UML (lenguaje unificado de modelado). • Permite el desarrollo con frameworks Java como Spring MVC, GWT, Vaadin, Play, Grails, Web Services, JavaServer Faces, Apache Struts o Flex. • Incluye asistencia para la programación en código en HTML5, CSS3, JavaScript, Node.js, ActionScript… y varios lenguajes más. 03. JAVA / IDE
  • 28. 03. JAVA / GVNIX gvNIX es una herramienta de código abierto para el desarrollo rápido 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 integración de frameworks como jQuery, Bootstrap 3, Leaflet o Datatables. Desarrollo rápido de aplicaciones: gvNIX
  • 29. Algunas características de la herramienta: • Herramienta multiplataforma: Funciona en varios sistemas operativos (Windows, Mac OSX y Linux). También se puede integrar con cualquier entorno de desarrollo integrado (IDE) como Eclipse o STS. Lo único que se necesita para instalarlo es tener el Java SDK (la versión 6 o superior) y Apache Maven 3. • Intérprete de comandos: gvNIX está diseñado como un intérprete de comandos interactivos. Tiene autocompletado de los comandos y ayuda contextual. • Proyectos estándar JEE: Los proyectos creados con esta herramienta cumplen con el estándar JEE, la plataforma para desarrollar y ejecutar software de aplicaciones en el lenguaje de programación Java. • Sin dependencias del entorno de ejecución: La aplicaciones que se desarrollan con gvNIX sólo dependen de los frameworks utilizados por el desarrollador, sin que eso provoque una dependencia del entorno de ejecución. Otra herramienta para el desarrollo rápido de aplicaciones (RAD) es Spring Roo. 03. JAVA / GVNIX
  • 30. Apache Maven es una herramienta para la gestión y el diseño 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 información sobre el proyecto y los detalles de la configuración del framework: desde la lista y la configuración de los plugins utilizados hasta las dependencias. ‘Framework’: Apache Maven 03. JAVA / MAVEN03. JAVA / APACHE MAVEN
  • 31. Es un contenedor web con soporte para servlets y JSPs iniciado por el arquitecto de software de Sun Microsystem, James Duncan Davidson. Hoy en día es utilizado como servidor autónomo en proyectos que exigen un gran rendimiento tanto en velocidad como en volumen de tráfico. Al estar desarrollado en Java, funciona con cualquier sistema operativo. Servidor web en Java: Apache Tomcat 03. JAVA / APACHE TOMCAT
  • 32. Las características más importantes de la última versión son: • Autenticación de acceso básico. • Negociación de credenciales. • HTTPS. • Alojamiento compartido. • CGI o interfaz de entrada común. • Servlets de Java. • SSI (Server Side Includes). 03. JAVA / APACHE TOMCAT
  • 33. Javascript JavaScript 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 librerías JavaScript para desarrolladores.
  • 34. JavaScript es uno de los referentes internacionales en la programación de proyectos. Se utiliza para el desarrollo de páginas web, aplicaciones, gestión de servidores y bases de datos… 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 ‘chico para todo’ dentro del sector. Como prueba de su poderío, el último informe de TIOBE sobre los lenguajes de programación más utilizados por los desarrolladores, JavaScript vuelve a situarse entre las 10 elecciones más usadas por los profesionales, por detrás de lenguajes de propósito general como Java, C, C++, Objective-C o PHP; fáciles de aprender como Python; o de programación de apps .NET como Visual Basic. 04. JAVASCRIPT
  • 35. Es un framework por el lado del servidor que permite a los desarrolladores crear aplicaciones web con Node.js. Es un marco de desarrollo muy flexible, ágil y que dispone de una comunidad de programadores que mejoran el producto y ayudan en su utilización con mucha documentación adicional en plataformas como GitHub. Además es un framework sólido, estable y fácil de aprender. Está inspirado en Sinatra, el marco de desarrollo para Ruby. EXPRESS:JS Entre algunas de sus características más destacadas tenemos: • Permite la creación de APIs de una forma accesible. • Ofrece Router de URL. • Utiliza como framework base Jade, pero es posible incorporar librerías JavaScript como jQuery y Backbone.js para añadir nuevas funcionalidades al marco de desarrollo. 04. JAVASCRIPT / FRAMEWORKS
  • 36. Angular.js es un framework de JavaScript de código abierto y totalmente libre, que permite el desarrollo de aplicaciones web en el lado del cliente y utiliza un patrón del tipo Modelo-Vista- Modelo de Vista. Detrás de su lanzamiento y mantenimiento se encuentra Google, lo que lo convierte en una opción estable y sólida, con documentación constante, para la comunidad de desarrolladores. ANGULAR:JS Características fundamentales: • Sistema bidireccional de data-binding. El Modelo y la Vista siempre se actualizan de forma sincronizada con cualquier cambio en los datos. • Tiene patrón de Inyección de Dependencias. • Cualquier aplicación desarrollada en AngularJS es compatible con varios navegadores. 04. JAVASCRIPT / FRAMEWORKS
  • 37. Ember.js es un framework JavaScript que permite a cualquier desarrollador crear aplicaciones web de una sola páginas del lado del cliente. Es de código abierto y usa un patrón del tipo Modelo-Vista- Controlador (MVC). EMBER:JS Características fundamentales: • Modificación automática entre los objetos JavaScript y el DOM: esta relación entre los datos que permite agilizar el desarrollo se debe a la integración de la librería Handlebars.js. Clases y procedimiento para renderizar de forma sencilla una app. • Dispone de un sistema de plantillas para programar el HTML. Este sistema se llama HTMLbars, y sería la variación para el DOM de la librería Handlebars. 04. JAVASCRIPT / FRAMEWORKS
  • 38. Knockout.js es un marco de desarrollo basado en un patrón tipo Modelo-Vista-Modelo de Vista (MVVM). Es de código abierto, dispone de una licencia MIT. Cualquier desarrollador que quiera empezar a usarlo para el desarrollo de una interfaz de usuario tiene tutoriales y documentación en el site del propio framework. KNOCKOUT.JS Algunas de sus características principales: • Facilita el desarrollo de bindings declarativos. • Seguimiento de dependencias: permite actualizar los cambios en la Vista y el Modelo- Vista en todos los elementos y objetos independientes. • Sistema de plantillas. • Actualización automática de la interfaz de usuario en función de los cambios que el desarrollador acometa en el Modelo-Vista. 04. JAVASCRIPT / FRAMEWORKS
  • 39. Esta es la librería JavaScript más utilizada por los desarrolladores. Permite, de una forma sencilla, interactuar con el HTML, el DOM, hacer todo tipo de animaciones, introducir funcionalidades AJAX al proyecto… JQuery le permite a un desarrollador aportar un valor añadido con pocas líneas de código. Es una biblioteca de código abierto, bajo licencia MIT y GNU v.2. JQUERY Algunas de sus características esenciales: • Permite modificar el árbol del DOM. • Soporte para CSS3. • Manipulación total de las hojas de estilos. • Creación de eventos. • Desarrollo de animaciones complejas. • Soporta extensiones. • Compatible con todos los navegadores. 04. JAVASCRIPT / LIBRERÍAS
  • 40. Backbone.js es una librería JavaScript que permite programar por el lado del cliente. Se utiliza para el desarrollo de aplicaciones de una única página, donde el uso del JavaScript y AJAX son esenciales para dotar a las apps de funcionalidades para el usuario. Usa un patrón Modelo-Vista-Controlador. BACKBONE.JS Algunas de sus características esenciales: • Permite modificar el árbol del DOM. • Facilita el trabajo intenso con datos. Creación de eventos. • Enlace con la tecnología por el lado del servidor: PHP, Node.js… • Uso de la API para incorporar funcionalidades. • Utilización simplificada de vistas. 04. JAVASCRIPT / LIBRERÍAS
  • 41. Kendo UI es una librería, o más bien un paquete de librerías, que proporciona a los desarrolladores todos los elementos necesarios para crear aplicaciones web por el lado del cliente, con una interfaz de usuario dinámica basada en JQuery. Al final Kendo UI suele ser utilizada para el desarrollo de una interfaz de usuario intuitiva, sencilla e innovadora a través de distintos tipos de widgets que se montan como un mecano. Esos elementos predefinidos incluyen menús dinámicos, ventajas, sistemas de carga de archivos… Características: • Funciona con la mayoría de navegadores y sistemas operativos. • Permite visualización de datos. • Data-binding. KENDO UI 04. JAVASCRIPT / LIBRERÍAS
  • 42. Modernizr es una librería 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 características de cada navegador. Podemos usar determinadas funcionalidades o hacer ajustes en función de lo que use cada usuario. Estas pruebas se hacen a través de un sistema de test. Además, su API permite cargar test personalizados por proyectos. MODERNIZR 04. JAVASCRIPT / LIBRERÍAS
  • 43. PHP El lenguaje de programación PHP es una de las opciones más utilizadas por los desarrolladores para la creación de proyectos y aplicaciones web dinámicas. Es código que se ejecuta desde el servidor, bastante seguro y con una curva de aprendizaje corta.
  • 44. PHP es uno de los lenguajes de programación más utilizados en el desarrollo de proyectos web, en gran parte por su enorme penetración tanto en servidores web como sistemas operativos. Es una solución 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 edición de contenidos como Wordpress o Drupal. PHP también es utilizado, por ejemplo, por los conocidos servidores Apache. Es muy popular por varias razones: 05. PHP • Es un lenguaje para el desarrollo de aplicaciones web dinámicas a partir de los datos contenidos en una base de datos. • La curva de aprendizaje es muy corta gracias a que los desarrolladores de PHP simplificaron su estructura. • Permite implementar programación orientada a objetos. • El código PHP se ejecuta desde el servidor, por lo que nadie tendrá acceso a él desde un navegador. Eso aumenta la seguridad. • Gran funcionamiento con bases de datos relacionales de código abierto como MySQL, una solución muy utilizada en desarrollo.
  • 45. El uso de un buen framework puede servirle a un equipo de desarrolladores para recortar tiempo con un resultado mejor: código de mayor calidad, proyectos escalables, aplicaciones web rápidas y robustas... Usar un framework permite tener ordenado en carpetas todo el código, disponer de librerías y funcionalidades que enriquecerán el proyecto final y aumentar la seguridad. Existe un listado amplio de marcos de desarrollo para profesionales PHP. ‘Frameworks’ 05. PHP / FRAMEWORKS
  • 46. 05. PHP / FRAMEWORKS LARAVEL Una comunidad amplia con una documentación extensa suele ser una de las razones valoradas a la hora de escoger una u otra herramienta. Eso permite salir de más de un apuro cuando se cometen errores o uno está en un callejón sin salida. Laravel es un framework muy utilizado entre los desarrolladores PHP por esta razón. Es un marco de código abierto lanzado en 2011 para desarrollar proyectos web. Su creador fue Taylor Otwell. Su última versión es la 5.1. Como la mayoría de los frameworks, Laravel dispone de la serie habitual de básicos: rutas, modelos, plantillas, vistas y controladores. También dispone de un sistema de plantillas propio que se llama Blade. Las principales características de Laravel: • Soporta RESTful. • Necesita la instalación de Composer para administrar dependencias en PHP. Sirve para declarar las librerías del proyecto que se está desarrollando sin intervención del desarrollador. • Se ejecuta con un patrón MVC (Modelo-Vista- Controlador). Consiguiendo aumentar la seguridad y separar totalmente la lógica de la aplicación de la interfaz de usuario. • Soporte para caché.
  • 47. 05. PHP / FRAMEWORKS CODEIGNITER Al igual que Laravel, CodeIgniter dispone de una gran comunidad detrás, que alimenta la documentación disponible. Es un marco de desarrollo sencillo y con gran rendimiento. Tiene algunas características interesantes: • Framework que trabaja con la mayoría de entornos y servidores. • Utiliza el patrón MVC. • Separación del núcleo del marco y el código del proyecto. • Marco de desarrollo flexible: los desarrolladores pueden seguir sus reglas de codificación 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.
  • 48. 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 código abierto MIT. Está desarrollado por completo en PHP, se puede ejecutar en plataformas UNIX y Windows y es compatible con la mayoría de los sistemas de gestión de bases de datos más conocidos: MySQL, Microsoft SQL Server… Sus características más importantes: • Permite el cambio de sistema de gestión de base de datos en cualquier momento del desarrollo. Esto es una gran ventaja. • Usa programación orientada a objetos. • Usa patrones Modelo-Vista-Controlador. • Es un marco de desarrollo que facilita mucho la interoperabilidad. • Motor de plantillas (Twig) fácil de usar. • Sistema de caché basado en HTTP que mejora el rendimiento de las aplicaciones desarrolladas con Symfony.
  • 49. Mediante el uso de librerías puedes agrupar en un solo fichero diversas funciones para incluirlas en distintas páginas y así disponer de todas ellas fácilmente a través de la librería instalada. Hay muchas librerías PHP, pero esta es una pequeña selección. Librerías PHP 05. PHP / LIBRERÍAS
  • 50. PHP-CPP Es una biblioteca C++ para el desarrollo de extensiones nativas para PHP. La pueden utilizar los desarrolladores que sepan PHP y también los que programen en C++, lenguajes que tiene una sintaxis similar. Dispone de una amplia documentación para sus proyectos y el código fuente está lleno de comentarios y explicaciones muy útiles. 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 código abierto y totalmente libre. HOA Es modular, escalable y estructurada. Dispone de un manual de formación para comenzar a utilizarla y de documentación adicional para el uso de la API. El usuario de Hoa tiene la capacidad de crear sus propias bibliotecas, lo que permite la reutilización y uso compartido del código 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 aplicación con sus características y herramientas. MINK Es una biblioteca PHP muy usada entre los desarrolladores porque permite probar cómo sus aplicaciones web interactúan con el navegador y si lo hacen correctamente. Mink viene con soporte para los siguientes frameworks: PHPUnit, Behat y Symfony2. 05. PHP / LIBRERÍAS
  • 51. Pattern Lab es un marco para el desarrollo del front-end de proyectos y aplicaciones web. Permite a los desarrolladores y diseñadores tomar decisiones sobre las plantillas y para mostrar distintas alternativas durante el proceso de desarrollo. Permite también testear el diseño en navegadores. La herramienta facilita las pruebas de diseño de front-end en elementos pequeños como botones o etiquetas para un formulario o plantillas enteras con todos sus componentes de diseño (logotipo, navegación…). 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 envío de un gran número de peticiones con gran rendimiento… Además, elimina la redundancia en la creación de clientes de servicios web. Tiene mecanismos de caché de respuestas y de consultas en paralelo. OTRAS HERRAMIENTAS PHP 05. PHP / HERRAMIENTAS
  • 52. Perl Perl es un lenguaje de programación de propósito general, fácil de usar y que facilita la escritura rápida de código a los desarrolladores. Además, dispone de numerosas librerías y módulos que amplían mucho su funcionalidad para el desarrollo de proyectos web.
  • 53. Administración de sistemas, programación en red, desarrollo de proyectos web o de programas CGI (Common Gateway Interface)... Perl es un lenguaje de propósito general que en la actualidad está disfrutando de una segunda juventud, se utiliza cada vez más en el desarrollo de proyectos. Hoy en día 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 intérprete para Perl. Las características fundamentales de este lenguaje de programación son: 06. PERL • Fácil de usar y de programación rápida. • Su curva de aprendizaje es alta. • Dispone de librerías y módulos, lo que aumenta su funcionalidad. • Soporta programación estructurada, orientada a objetos y funcional. • Tiene un sistema de procesamiento de texto. • Se puede utilizar en varios entornos: Windows, Mac OS X y Linux.
  • 54. Este Entorno de Desarrollo Integrado de ActiveState permite no sólo la programación en Perl, también en otros lenguajes de programación como Python, PHP, Go, HTML o Node.js. La idea es facilitar a los programadores el desarrollo de interfaces en Perl gracias a características como su control de versiones, su depurador gráfico, su sistema de prueba unitaria, su ayuda en línea… KOMODO IDE Los últimos avances la convierten en una herramienta mucho más cómoda y funcional: • Dispone de un panel que permite reducir las interrupciones en el trabajo. Se pueden visualizar los nombres de instancias directamente en ese panel. • Tiene un sistema de colaboración inteligente, que alerta a cada miembro del equipo de qué compañeros se encuentran editando código en ese momento. • Corrección rápida y automática de errores de sintaxis desde el editor. • El nuevo instalador de paquetes permite incorporar nuevas funcionalidades para cada proyecto. • Introduce el modo enfoque, que facilita la ocultación de elementos para que el programador se concentre el código. • Otras mejoras: gestor de paquetes integrado, creación de configuraciones personalizadas, nuevo sistema de notificaciones, etc. 06. PERL / ENTORNOS INTEGRADOS
  • 55. EPIC es un Entorno de Desarrollo Integrado de código 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 integración con la Interfaz Gráfica de Usuario (GUI) de Eclipse le da un valor añadido interesante. EPIC (Editor Perl y IDE para Eclipse) Sus características principales son: • Coloración configurable de elementos sintácticos. • Detección automática de errores de sintaxis durante la programación y en el momento de guardar archivos. • Autocompletado de variables. • Sistema de control de ejecución. • Función de exportación HTML. 06. PERL / ENTORNOS INTEGRADOS
  • 56. 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 versión del editor basada en los trabajos de la primera, lanzada en 1991. EMACS Algunas de sus características más importantes: • Sistema sencillo de edición de texto: comandos para manipular palabras y párrafos, resaltado de sintaxis para favorecer la lectura del código y ejecución de macros de teclado a través de comandos personalizados. • El editor de texto es modificable al gusto del propio desarrollador mediante la incorporación de fragmentos de código Emacs Lisp (bibliotecas, librerías, paquetes o extensiones de código) con nuevas funcionalidades: • Calc: una calculadora que se incorpora dentro del editor. • Emacs/W3: un navegador web. • ERC: un cliente IRC. • MULE: permite la edición de texto escrito en varios lenguajes. 06. PERL / EDITORES DE TEXTO
  • 57. UltraEdit es un editor de texto avanzado para Perl, PHP, Java y JavaScript. Con este editor, los programadores de código pueden manipular archivos de más de 4 GB. Es una herramienta de pago, pero dispone de un periodo de prueba gratuito. Algunas de sus carácterísticas son: • Resaltado de sintaxis configurable. • Soporte FTP completo y navegador FTP multipanel. • Plantillas inteligentes. • Función de plegado de código, que permite esconder las partes que no son necesarias. • Lista completa de funciones en una vista de árbol, incluidos todos los subgrupos (parámetros, variables, propiedades...). • Editor de estilos CSS. • Añadir comentarios en línea o en bloque en el texto seleccionado. • Macros editables. • Integración de lenguaje de scripting para automatización de tareas. • Diseño de temas del editor personalizables. • Sistema de copia de seguridad y almacenamiento automático. ULTRAEDIT 06. PERL / EDITORES DE TEXTO
  • 58. TextMate es una editor de texto con Interfaz Gráfica de Usuario (GUI) para sistema operativo Mac OS X. Fue desarrollado porAllan Odgaard. Dispone de una gran comunidad que lanza contribuciones públicas para personalizar el editor en función de las necesidades de cada proyecto. Un editor en mejora continua. Algunas de sus funciones más destacadas: • Función de buscar y reemplazar texto en un proyecto. • Búsqueda y reemplazo de texto por expresiones regulares. • Esquema dinámico para trabajar con varios archivos. • Bloques de código plegable. • Histórico de portapapeles. • Grabación de macros sin necesidades de programación. • Navegación entre archivos mediante el uso de pestañas. • Editor personalizable a través de varios temas. TEXTMATE 06. PERL / EDITORES DE TEXTO
  • 59. Aquí tienes dos frameworks que pueden hacerte la vida más facil programando en PERL: MOJOLICIOUS Mojolicious es un framework web en tiempo real para desarrolladores en Perl. Fue creado por Sebastian Riedel. Este marco usa el patrón estándar Modelo-Vista-Controlador (MVC) y soporta CGI, FastCGI y PSGI. Es un framework que también soporta rutas RESTful, extensiones, cookies firmadas, test unitarios, servidor de ficheros estáticos, plantillas, formato JSON… Además, el sitio web de este framework dispone de una documentación muy útil para iniciados CATALYST Catalyst es un framework web de código abierto que utiliza un patrón Modelo-Vista- Controlador, multiplataforma y con una amplia documentación gracias a una gran comunidad de desarrolladores que mantiene una mejora continua de este marco de desarrollo de software. Está inspirado en Ruby on Rails. 06. PERL / FRAMEWORKS
  • 60. compartir TE PUEDE INTERESAR Innovation Edge: APIs: los beneficios empresariales de las APIs Ebook ‘wearables’: la revolución móvil que se lleva puesta Los nuevos servicios y APIs de Apple para desarrolladores de apps Infografía: cómo desarrollar una app con Apple WatchKit Ebook: Herramientas de visualización de datos
  • 61. Regístrate para estar al día de las últimas tendencias www.bbvaopen4u.com conversa con nosotros en: BBVA no se hace responsable de las opiniones publicadas en este documento.