Integración y manejo de transacciones con Hibernate

A lo largo de una serie de tutoriales hemos visto las bondades que nos ofrece el framework Spring para el manejo del ciclo de vida de beans, inyección de dependencia y configuración a través de anotaciones y de archivos de configuración en XML. Además ya hemos visto cómo trabajar con el framework Hibernate para el manejo de persistencia de nuestra aplicación. Este framework nos permite olvidarnos de escribir queries a mano para centrarnos en la lógica y el flujo de la aplicación, además de proporcionar mecanismos de caché de datos.…

Leer más

Cónoce sobre los Menús y submenús con Android

En los dos siguientes artículos del Curso de Programación Android nos vamos a centrar en la creación de menús de opciones en sus diferentes variantes. NOTA IMPORTANTE: A partir de la versión 3 de Android los menús han caido en desuso debido a la aparición de la Action Bar. De hecho, si compilas tu aplicación con un target igual o superior a la API 11 (Android 3.0) verás como los menús que definas aparecen, no en su lugar habitual en la parte inferior de la pantalla, sino en el menú desplegable de la action bar…

Leer más

Desarrollando una aplicación Android sencilla

Después de instalar nuestro entorno de desarrollo para Android y comentar la estructura básica de un proyecto y los diferentes componentes software que podemos utilizar ya es hora de empezar a escribir algo de código. Y como siempre lo mejor es empezar por escribir una aplicación sencilla. En un principio me planteé analizar en este capítulo el clásico Hola Mundo pero más tarde me pareció que se iban a quedar algunas cosas básicas en el tintero. Así que he versionado a mi manera el Hola Mundotransformándolo en algo así como un Hola Usuario, que es igual de sencilla pero añade…

Leer más

Inscripciones Abiertas el lunes 09 de Febrero 2015.

El lunes 09 de Febrero 2015 Inscripciones abiertas: Diplomado de Programación,  Diseño Digital, Integración Web y Mercadeo  Inscripciones abiertas.  Modalidad presencial – online Horarios: Lunes 09 de Febrero 2015 CLASES PRESENCIALES: Mañana  9am a 12m Lunes a Viernes de 9am a 12m:  ANDROID NIVEL 2  Lunes a Viernes de 9am a 12m:  3D BLENDER Lunes a Viernes de 9am a 12m:  Diplomado Diseño Digital Lunes a Viernes de 9am a 12m:  PHP NIVEL 3 Lunes a Viernes de 9am a 12m:  Diplomado de Programación Lunes a Viernes de 9am a 12m:  JQUERY Tarde 2pm a 5pm Lunes a Viernes de 2pm…

Leer más

Inscríbete y desarrolla proyectos en el Instituto

Inscripciones Abiertas el lunes 02 de Febrero 2015. El lunes 02 de Febrero 2015 Inscripciones abiertas: Diplomado de Programación,  Diseño Digital, Integración Web y Mercadeo  Inscripciones abiertas.  Modalidad presencial y online Horarios: Lunes 02 de Febrero 2015 CLASES PRESENCIALES: Mañana  9am a 12m Lunes a Viernes de 9am a 12m:  ANDROID NIVEL 1 Lunes a Viernes de 9am a 12m:  PHOTOSHOP Lunes a Viernes de 9am a 12m:  Diplomado Diseño Digital Lunes a Viernes de 9am a 12m:  Diplomado Integración Web Lunes a Viernes de 9am a 12m:  Diplomado de Programación Lunes a Viernes de 9am a 12m:  JAVASCRIPT Tarde 2pm a…

Leer más

Aprende cómo instalar Composer globalmente

Composer es el gestor de paquetes que utilizan todas las aplicaciones PHP modernas. Por eso es muy importante saber instalarlo correctamente en tu sistema operativo. Cuando se publicó Composer por primera vez, se recomendaba descargarlo para cada proyecto PHP ejecutando este código: $ cd mi-proyecto/ $ curl -sS https://getcomposer.org/installer | php Este comando descarga Composer en forma de archivo PHAR. Así que para ejecutar cualquier comando de Composer, debías utilizar lo siguiente: $ php composer.phar … Aunque esta forma de instalar Composer funciona perfectamente, tiene varias desventajas importantes: Debes descargar Composer…

Leer más

Cónoce acerca del Plugin Paratest

 El objetivo de este plugin es aprovechar las CPUs modernas que soportan varios hilos de ejecución simultáneos para ejecutar todos tus tests en paralelo. Para instalarlo, ejecuta el siguiente comando dentro del directorio de tu proyecto: $ composer require «brianium/paratest»:»dev-master» A diferencia de los anteriores este plugin no se activa mediante el archivo de configuración de PHPUnit, sino que se ejecuta a través de su propio comando llamado paratest. Composer instala este comando en el directorio vendor/bin/, por lo que sólo debes ejecutar lo siguiente: $ ./vendor/bin/paratest Por defecto este comando ejecuta tus…

Leer más

Plugin PHPUnit Accelerator

La idea de este plugin consiste en acelerar la ejecución de los tests reduciendo su consumo de memoria. Gracias a esta técnica sus autores aseguran que se pueden acelerar los tests hasta un 20%. Para instalarlo, ejecuta el siguiente comando dentro del directorio de tu proyecto (este comando requiere que Composer esté instalado globalmente en tu sistema): $ composer require «mybuilder/phpunit-accelerator»:»~1.0″ Para activarlo, solamente debes añadir lo siguiente en el archivo de configuración de PHPUnit (que normalmente se llama phpunit.xml y se encuentra en la raíz del proyecto): <phpunit> <!– … –>   <listeners> <!– … –>…

Leer más

Aprende acelerar la ejecución de tus tests con PHPUnit

Para que una suite de tests unitarios y funcionales sea útil, debe ser muy rápida al ejecutarse. Si desarrollas tus aplicaciones siguiendo metodologías como el TDD o desarrollo guiado por pruebas, entonces la rapidez no es recomendable sino totalmente obligatoria. Algunos autores sugieren que todos los tests de la aplicación deberían ejecutarse en 10 segundos o menos. Por eso en este artículo te explicamos varias técnicas para acelerar la ejecución de tus tests con PHPUnit. Recomendaciones básicas 1. No crees más fixtures de los que necesitas. ¿Para qué insertas 10.000 registros con datos de prueba en…

Leer más

Objeto Request

En el siguiente tutorial hablaremos de qué funciones realiza el objeto request y cómo se pasan las variables por la URL Bucles y condiciones son muy útiles para procesar los datos dentro de un mismo script. Sin embargo, en un sitio internet, las páginas vistas y los scripts utilizados son numerosos. Muy a menudo necesitamos que nuestros distintos scripts estén conectados unos con otros y que se sirvan de variables comunes. Por otro lado, el usuario interacciona por medio de formularios cuyos campos han de ser procesados para poder dar…

Leer más