Ads 468x60px

Perfil

martes, 12 de febrero de 2013

Frameworks php que agilizan tu trabajo


Los frameworks de PHP que agilizan tu trabajo

Los Frameworks ayudan en el desarrollo de software, proporcionan una estructura definida la cual ayuda a crear aplicaciones con mayor rapidez. Ayuda a la hora de realizar el mantenimiento del sitio gracias a la organización durante el desarrollo de la aplicación.





Los Frameworks son desarrollados con el objetivo de brindarles a los programadores y diseñadores una mejor organización y estructura a sus proyectos.
Se utiliza la Programación Orientada a Objetos (POO), permitiendo la reutilización de nuestro código. A continuación las características de algunos de los Frameworks para PHP más usados.

ZEND FRAMEWORKS

El Zend Frameworks es simple, no necesita instalación especial, requiere PHP 5 e incorpora el patrón MVC.
Se debe descargar y copiarlo hacia nuestro servidor local, veamos a través de un pequeño ejemplo cómo podemos crear un lector de RSS. Los ficheros que creemos podemos copiarlos dentro del directorio “library”.
<?php
// Componente requerido
require_once 'Zend/Feed.php';
/ Incluimos la dirección de nuestro fichero rss que deseamos importar
/$feed = Zend_Feed::import('http://localhost/rss.php');
titulo y el enlace foreach ($feed->items as $item) { echo "<p>" . $item
// Se recorrerán todos los item del fichero, mostrando e l->title() . "<br />"; echo $item->link() . "</p>"; }
?>

SYMFONY

Diseñado con el objetivo de optimizar la creación de las aplicaciones web, con el uso de sus características. Posee una librería de clases que permiten reducir el tiempo de desarrollo.
Symfony está desarrollado en PHP5, se puede utilizar en plataformas *nix (Unix, Linux) y Windows. Requiere de una instalación, configuración y líneas de comando, incorpora el patrón MVC, soporta AJAX, plantillas y un gran número de bases de datos.
Luego de descargar, debemos desempaquetar hacia un directorio dentro de nuestro servidor web. Puede configurar el archivo “symfony.bat” e introducir la ruta completa del archivo “php.exe” en la línea 34.
set PHP_COMMAND=c:/xampp/xampp/php/php.exe
Si nos encontramos en el directorio “sf_sandbox” podemos ir a las líneas de comando y conocer la versión del framework: symfony -V. Podemos verificar la creación de nuestro proyecto introduciendo en el navegador, por ejemplo:http://localhost/sf_sandbox/web/frontend_dev.php
La estructura de los directorios es:
sf_sandbox/ // directorio del proyecto
apps/ // archivos de la aplicación
batch/ // procesos
onfig/ // configur
cache/ // cache cación
// archivos y códigos de datos doc/
data/ // documentación
y códigos de proposito general log/ // archivos
lib/ // librerías de log plugins/ // plugins test/ // tests
web/ // directorio público
Si deseamos crear un weblog debemos crear el archivo “schema.yml” en el directorio “sf_sandbox/config/”. Después de haberlo creado podemos usar las siguientes líneas de comando dentro del directorio “sf_sandbox/”:
  • symfony propel-generate-crud frontend post Post : crear y listar Post.
  • symfony propel-generate-crud frontend comment Comment : crear y listar comentarios.
  • symfony clear-cache : limpiar la cache.
Los modulos serán creados en “sf_sandbox\apps\frontend\modules\”. Podemos ver el resultado:
  • http://localhost/sf_sandbox/web/frontend_dev.php/post
  • http://localhost/sf_sandbox/web/frontend_dev.php/comment
Se puede acceder a los archivos y modificar las plantillas a nuestro gusto.

SEAGULL

El framework Seagull, nos permite realizar una programación modular, posee un Sistema de Gestión de Contenidos (CMS).
Entre sus características de encuentran su compatibilidad con PHP 4 y PHP 5, ORM integrado, incorpora el patrón MVC, uso de templates, soporte para múltiples bases de datos, validación de datos, alto nivel de configuración, autentificación, integración de librerías PEAR.
Debemos descargar el framework, luego descomprimirlo hacia un directorio dentro de nuestro servidor web. Luego introducimos la dirección en nuestro navegador para realizar su instalación. Ejemplo: http://localhost/seagull/www/.
Debemos completar los 6 pasos siguientes:
  • Aceptar la licencia
  • Autorización
  • Debemos crear en el directorio el archivo “AUTH.txt” que contenga el código generado o descargarlo en “seagull/”. Si se crea correctamente podremos continuar al siguiente paso.
  • Detección: aquí se detectará los módulos disponibles, así como la configuración y versión de PHP.
  • Conexión con las bases de datos: debemos configurar los datos necesarios para realizar la conexión con el servidor de base de datos.
  • Configuración de la base de datos: introducir el nombre de la base de datos. Se puede utilizar una existente.
  • Creación del Usuario Administrador: se creará la cuenta de usuario que utilizaremos para administrar a Seagull Framework.
Luego de Finalizar su instalación podemos crear contenidos visitandohttp://localhost/ seagull/www/ e introduciendo el usuario y clave de administración.

PRADO

Prado está basado en componentes eventos con el objetivo de acelerar el desarrollo de aplicaciones web usando PHP 5.
El concepto del desarrollo de aplicaciones en Prado es diferente, se utilizan componentes, eventos y propiedades en vez de procedimientos, URL y parámetros.
Este Framework combina especificaciones en un archivo XML, plantillas HTML y una clase PHP. Prado, cuenta con soporte para AJAX, validación, autentificación, plantillas, múltiples bases de datos.
Entre los beneficios que podemos encontrar para el desarrollo de aplicaciones web se encuentran:
  • Reutilización: los códigos y componentes pueden ser reutilizados.
  • Fácil uso: la creación y uso de componentes es fácil.
  • Funcionamiento: utiliza una técnica de caché para asegurar el funcionamiento de aplicaciones basadas en el.
  • Integración: permite la separación del contenido y la presentación.
Podemos descargar y descomprimir Prado en un directorio, luego acceder al siguiente demo.
Hello World:
Esta aplicación cuenta con los archivos index.phpHome.page y Home.php, organizados con la siguiente estructura, la cual puede ser modificada:
helloword.jpg
  • assets : almacena archivos privados publicados.
  • protected: aquí se almacenarán los archivos que serán usados.
  • runtime: se almacena la información runtime de la aplicación, así como su estado, este directorio debe tener acceso de escritura por el servidor web.
  • pages: aquí se almacenan todas las páginas de Prado.
Descripción del contenido de los archivos:
Index.php: código de entrada para la aplicación en Prado. Este fichero es necesario para todas las aplicaciones. El contenido del archivo es el siguiente:
require_once('path/to/prado.php'); // incluye el código de prado
$application=new TApplication; // se crea una instancia de la aplicación PRADO
$application->run(); // ejecuta la aplicación
Home.page: Plantilla de la página. La misma describe la posición de los componentes. Aquí se utilizan los componentes TForm y TButton.
<html>
<head>
Hello World Demo- Prado</title> </head
<title >> <body> <com:TForm>
ck me" OnClick="buttonClicked" /> </com:TForm> </body>
<com:TButton Text="Cl
i</html>
Home.php: clase para la página Home.page, contiene los métodos para el evento OnClick del botón.
class Home extends TPage
{
public function buttonClicked($sender,$param)
{ $sender->Text="Hello World!"; }
}
En el ejemplo anterior tendrémos un botón con el texto “Click me” al oprimirlo cambiará el texto por “Hello World!”. Podemos ver los demos que incluye este framework http://localhost//prado/demos/.
Si presentamos algún problema podemos verificar sus requerimientoshttp://localhost/prado/requirements/index.php.

Comparacion de Frameworks en Javascript


Hemos pasado de páginas estáticas basadas en solamente HTML y CSS a páginas dinámicas que utilizan motores externos como PHP, ASP y Coldfusion para dar este dinamismo. Aunque Javascript no es una tecnologí­a reciente ha tomado mayor popularidad porque enriquece la experiencia de los usuarios de los sitios web.
La evolución nos ha traí­do el Cloud Computing o “Computación en Nube”, los Sistemas Operativos Web y las Aplicaciones basadas en Web. Todo esto gracias, en parte, a la implementación de Javascript y los frameworks. Entre dichos frameworks, se encuentran jQueryMooToolsExtJsPrototypeScriptaculous,Dojo ToolkitYUI, y más.

CARACTERÍSTICAS DE LOS FRAMEWORKS:

Es necesario entender que un framework es una abstracción de código común que provee funcionalidades genéricas que pueden ser utilizadas para desarrollaraplicaciones de manera rápida,fácilmodular y sencillaahorrando tiempo yesfuerzo. Entonces, un framework es concreto y también “incompleto”. Concreto porque es, desde un punto de vista simple, un conjunto de componentes; incompleto, porque por sí­ mismos no pueden ser utilizados, ya que guí­an a la solución de problemas de programación recurrentes, empero, por lo general, no son la solución específica completa.
En su mayorí­a, los frameworks javascript proveen componentes para:
  • Compatibilidad. Agregan la posibilidad de escribir código javascript totalmente compatible con todos lo navegadores y motores Javascript más utilizados. Esto aumenta la portabilidad y eliminan el “gran dolor de cabeza” de incompatibilidad entre navegadores y sus motores intérpretes javascript.
  • Comunicación asíncrona (Ajax). Usando este acercamiento, es fácil utilizar XMLHttpRequest para manejar y manipular los datos en los elementos de un sitio bien, aumentando la interactividad y experiencia del usuario.
  • DOM. Máximizan la capacidad de agregar, editar, cambiar, eliminar elementos de manera dinámica agregando librerías que facilitan usar DOM.
  • Validación de Formularios. Permiten de una manera relativamente fácil validar campos dentro de uno o varios formularios. Esto, desde el punto de vista del desarrollador, simplifica y reduce el código para procesar dichos formularios, ya que los datos llegan previamente validados, reduciendo los errores de tipos de datos.
  • Efectos visuales. Utilizando la manipulación de los elementos, se pueden crear efectos visuales y animaciones. Entre los efectos se encuentran: Aparecer y Desaparecer, Redimensionamiento, Move, Aparecer y Desaparecer, y más.
  • Almacenamiento Client-side. En adición provee funciones para leer y escribir cookies. También proveen una abstracción de almacenamiento que permite a las aplicaciones web guardar datos del lado del cliente, persistente y de manera segura.
  • Manejo JSON. Incrementa al máximo el manejo de datos, que pueden ser utilizados para presentar informaciones de manera dinámica y en tiempo de ejecución.
  • Manejo de Eventos. Esta caracteréstica agregada, permite reaccionar de una manera u otra dependiendo de las acciones del usuario.
  • Recibidores de Datos. Permiten utilizar diferentes formatos de datos como XML, HTML, Texto, JSON, ATOM, entre otros.
  • Arrastra y Suelta“. Mejor conocido como Drag and Drop. Es una funcionalidad que brinda la posibilidad de arrastrar elementos dentro de una misma página que interactúe con el resto de los elementos.

APLICACIONES WEB VS. SITIOS WEB

Suele confundirse los conceptos de Aplicación Web con Sitio Web, lo cual lleva a la eterna discusión sobre cuál es el mejor framework, independientemente de la eficiencia de los mismos. Una aplicación Web intenta portar las clásicas aplicaciones de Escritorio hacia entornos Web, que son utilizadas a través de los distintos navegadores, agregando portabilidad y capacidad de acceder desde diferentes dispositivos.
Un sitio web es simplemente eso, un portal, una página, un grupo de páginas, una serie de documentos dinámicos o no. En ambos casos se puede mejorar la experiencia del usuario utilizando javascript y en efecto, frameworks. Aparte de la eficiencia, simplicidiad, rendimiento, documentación, forma de uso, entre otros factores más, la finalidad de lo que se quiere crear con estos frameworks es uno de los más importantes a la hora de elegir entre uno u otro.
Otro factor importante que se debe considerar es la curva de aprendizaje y la facilidad de uso cuando se crean Proyectos donde intervienen más de una persona. Una variable a considerar es la buena práctica y los patrones de programación aplicados.

DATOS IMPORTANTES Y EJEMPLOS

Cada framework tiene sus características que los diferencian de los demás. Podemos destacar lo siguiente.

DOJO TOOLKIT:

Está compuesto por Widgets que son componentes de código en Javascript pre-empaquetados que puede ser utilizados para enriquecer sitios web con varias caracterí­sticas que trabajan a través de la mayoría de los navegadores, tales como: Menúes, Tabs, Tooltips y Tablas ordenables.
Aunque la funcionalidad talvés única de Dojo es la capacidad para el Dibujo de Vectores en 3-D. También es posible utilizar temas para mejorar el look and feel de la aplicación. En 2007 Dojo incluyó ejemplos de almacenamiento del lado del servidor que son implementaciones del namespace dojo.data.
IBM y Sun Microsystems han anunciado el soporte oficial a Dojo, incluyendo contribuciones de código. De la misma forma Zend  Technologies, la compañía detrás del motor de PHP, lo ha incorporado en Zend Framework. Dojo es utilizado por Lucid Desktop, un WebOs open source. También puede ser integrado en aplicaciones creadas con AdobeAIR.
Una galería de Imágenes a estilo del iPod Touch, un Juego de Matemáticas, unReproductor de Videos y una Lista con efecto FishEye son unos de los ejemplos que podemos encontrar en la web de Dojo Toolkit.

EXTJS:

Originalmente fue construido como una extensión de YUI. Incluye interporalidad con JQuery y Prototype. Posee controles para Campos de Textos, incluyendo Areas de Texto. Controladores selectores de fecha, Campos Numéricos, para Radiobox y Checktbox.
También componentes para crear y manipular DataGrids donde goza de cierta ventaja sobre otros frameworks. Es pobile crear “ventanas” con Barras de Herramientas y Menúes con estilo de aplicaciones de Escritorio, Dialogos modales y eventos.
ExtJS puede ser adquirido bajo licencias Libres y Comerciales. La compañí­a detrás de este framework ofrece cursos de capacitación y un extenso soporte. Entre los ejemplos ofrecidos en su sitio web encontramos ejemplos de TabsVentanas,ÁrbolesMenúes y más.

JQUERY:

Es una librerí­a liviana que enfatiza la interacción entre Javascript y HTML. Microsoft integra jQuery VisualStudio para el uso en aplicaciones desarrolladas en ASP.NET. Nokia usa jQuery en sus aplicaciones web. Contiene selectores de elementos DOM usando el motor Sizzle y permite la modificación de DOM (incluyendo soporte para CSS 3 y Xpath).
Entre quienes utilizan jQuery están: GoogleDellSunMLBdiggNBCCBS,NetflixTechnoratimozilla.orgWordPress y Drupal.
Con facilidad podría ser considerado el framework más utilizado en la actualidad. En adición, en internet existen bastantes plugins que agregan funcionalidades extras al framework.
Actualmente su última versión estable, la 1.3.2, viene un solo archivo de 19KB, y su funcionalidad puede ser extendida utilizando plugins. Algunos plugins útiles son:jQueyUI, un set de plugins, componentes para interfaces de usuario y efectos visuales y jExpand, un ultra-liviano plugin que permite crear tablas expandibles que ayuda a organizar mejor los datos. Entre otros más.

MOOTOOLS:

Liviano, modular y orientado a objetos, la meta es ser un intermediador para los desarrolladores ayudándolos a crear código javascript en una manera elegante, flexible y eficiente. Contiene un gran número de componentes, pero no todos necesitan ser cargados en cada aplicación. Consta de un Core, que es una colección de librerí­as que el resto de sus componentes necesitan, Class, que es la librerí­a básica.
También provee una componentes que enriquecen a los objetos nativos de javascript, para agregar compatibilidad y simplificación de código. Fx es su API avanzado de efectos para animar Elementos. Algunas aplicaciones utilizando MooTools son: apebingjoomla, vimeopalmNintendophpMyAdmin y netvibes.
Demostraciones como Eventos BásicosAcordiónSliderPeticiones JSON y algunos Efectos muestran lo útil que puede llegar a ser este framework.

PROTOTYPE Y SCRIPTACULOUS:

Prototype es una simple implementación de un solo archivo de código en Javascript que provee un framework para Ajax y otras herramientas. Contiene varias funciones para programar en Javascript que van desde accesos directos a funciones, elementos y objetos Javascript, hasta funciones para lidiar con XMLHttpRequest.
Scriptaculous es una librerí­a javascript basada en Prototype que agrega efectos visuales dinámicos y una interface para elementos a través de DOM. Viene incluido en Seaside y Ruby on Rails.
Entre quienes usan Scriptaculous están: NASAAppleCNNBasecamp yFeedburner
En el Wiki oficial de Scriptaculous existen más de 30 ejemplos que podemos analizar y aprender a utilizarlos.

COMPARACIÓN JQUERY, MOOTOOLS, YUI, PROTOTYPE+SCRIPTACULOUS

La eficiencia de estos frameworks están muy atados al navegador que utiliza el usuario final. En marzo de 2009 Peter Velichkov se dio a la tarea de comparar el rendimiento de jQuery, MooTools, YUI, Dojo y Prototype+Scriptaculous entre los diferentes navegadores.
Las pruebas de Rendimiento se hicieron siguiendo estos puntos:
  • Todas las pruebas realizadas bajo el mismo Sistema Operativo con las últimas actualizaciones aplicadas (Windows XP SP3, Ubuntu 8.10, Windows 7 Beta 1).
  • Sclickspeed fue corrido tres veces por navegador con el caché limpio y reiniciando por cada intento.
  • Los promedios de cada resultado fueron redondeados a enteros.
  • Nada más estuvo corriendo durante la prueba.
Los puntos, brindan confiabilidad a las pruebas. Estos fueron los resultados por navegadores:
Estos fueron los resultados por Framework:
Podemos notar un aspecto muy importante, y es que los resultados dependen del navegador y el sistema operativo utilizado por el usuario. jQuery, Mootools y Dojo, técnicamente, son más eficientes que el resto, mas no podrí­a considerarse cuál es mejor que el resto, debido a sus caracterí­sticas propias y los diferentes factores que tienen participación a la hora de evaluar qué tan productivo es implementar uno u otro framework.

LLEGANDO A CONCLUSIONES

Determinar cuál framework es mejor es prácticamente imposible. Es importante recordar que estos frameworks son simples herramientas que nos ayudan a realizar diferentes tareas de diferentes tipos, todos basados en el mismo lenguaje, javascript. Lo correcto es seleccionar uno u otro dependiendo la utilidad y la capacidad de saber cómo utilizarlo.
jQuery ha tenido gran éxito, ya que es fácil de usar y aprender, además de que existe en internet una gran cantidad de documentación y plugins que extienden su funcionalidad. Ha sido muy utilizado por Diseñadores con pocos conocimientos en programación. Scriptaculous, basado en Prototype, se integra bastante bien con Ruby On Rails, lo cual ha beneficiado a desarrolladores independientes y empresas al momento de crear aplicaciones de vanguardia.
Dojo Toolkit, en su incorporación con Zend Framework promete mucho, pero no goza de la popularidad de MooTools, que aunque es liviano y orientado a objetos, en algunas ocasiones resulta complicado realizar simples acciones, que utilizando Prototype suelen ser bastantes sencillas, como Peticiones Periódicas y acceso a diferentes elementos.
No cabe duda de que si lo que se quiere crear es una apliación web con estilo de aplicación de Escritorio, ExtJs es la mejor opción, inclusive se podría crear un Sistema Operativo Web utilizando este framework de forma relativamente fácil. Lo importante es saber utilizar las herramientas con las que se cuentan y sacarle el máximo provecho ¿Cuál framework para Javascript utilizas y por qué?

lunes, 11 de febrero de 2013

Primeros pasos en GIT (Creacion y gestion de Repositorios)

Git es un sistema de control de versiones que se centra en la velocidad, “diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente.”

Git-logo
Hoy iniciamos una serie de artículos en donde nos concentraremos en conocer el flujo de trabajo (workflow) básico para llevar a cabo el versionado de nuestros proyectos.
El proyecto de ejemplo se puede consultar directamente en su repositorio de GitHub, en el cual colocaré un tag por cada articulo, para que sean fácil de reconocer los avances.

¿COMO LO CONSIGO?

Asumo que ya tenemos instalado Git en nuestro sistema, es fácil conseguirlo si tenemos alguna distribución Linux u OS X, cualquier sistema basado en *nix funciona excelente. Después de instalar Git hay que configurar nuestros datos básicos:
$ git config --global user.name "Mi nombre"
$ git config --global user.email "mi@correo.com"
Considero que los primeros pasos que debemos concretar tienen que ver en la creación y gestión de un repositorio de forma local, a nivel bastante básico veremos como iniciar nuestros repositorios y registrar cambios en el historial de Git.
Por si mismo, Git es una herramienta con una curva de aprendizaje pronunciada, si no disciplinamos nuestro flujo de trabajo a la par de Git es muy posible que nos encontremos en problemas casi todo el tiempo. No hay que temer, si llevamos un orden y aprendemos a registrar nuestros cambios casi de forma atómica es poco probable que ocurra algo que lamentar.

CREANDO NUESTRO REPOSITORIO

Cualquier carpeta de nuestro sistema puede ser un contenedor o repositorio para Git, en dicho lugar se establecerá la configuración e historial bajo una carpeta nombrada .git que se encuentra oculta.
Para crear un repositorio no es necesario empezar desde cero con nuestro proyecto, de hecho podemos iniciar uno aún cuando ya tenemos nuestro código en estado avanzado. Por ejemplo, tenemos la estructura de un sistema o librería sencilla:
/proyectos/mi-libreria
/proyectos/mi-libreria/include
/proyectos/mi-libreria/include/sistema.class.php
/proyectos/mi-libreria/include/funciones.php
/proyectos/mi-libreria/index.php
Solo hay que ubicarnos en la carpeta y ejecutar git init para crear el repositorio:
$ cd /proyectos/mi-libreria
$ git init
Initialized empty Git repository in /proyectos/mi-libreria/.git/

REGISTRAR Y GUARDAR ARCHIVOS

Cada repositorio guarda un historial de los cambios que hemos ido realizando en nuestro proyecto, ejecutando git status podemos verificar los cambios hechos en el estado actual:
$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# include/
# index.php
nothing added to commit but untracked files present (use "git add" to track)
En el ejemplo notamos que nos hace falta registrar los archivos contenidos en la raíz de nuestro proyecto, ahora vamos a agregarlos:
$ git add .
$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: include/funciones.php
# new file: include/sistema.class.php
# new file: index.php
#
He usado git add . pues el punto indica la ruta actual y, por defecto, Git agrega recursivamente al emplear ésta instrucción con una carpeta como argumento. Desde luego es posible agregar archivos individualmente con solo especificar la ruta relativa con relación a la raíz del repositorio, por ejemplo:
$ git add include/funciones.php
Finalmente debemos dar por hechos los cambios que llevamos en el repositorio, entonces ejecutamos git commit para confirmarlo:
$ git commit -m "Primer commit; agregue la estructura de archivos"
[master (root-commit) 0034116] Primer commit; agregue la estructura de archivos
3 files changed, 3 insertions(+), 0 deletions(-)
create mode 100644 include/funciones.php
create mode 100644 include/sistema.class.php
create mode 100644 index.php
Verificamos que todo esté en orden con git status de nuevo:
$ git status
# On branch master
nothing to commit (working directory clean)
Supongamos que la frecuencia de los cambios que realizamos a nuestro código determina la cantidad de commits que podemos efectuar en el repositorio. Lo ideal sería que por cada nuevo cambio significativo en el código o estructura de archivos, registremos lo que hicimos agregando los archivos afectados con una descripción puntual, breve y clara de lo realizado.
Si por ejemplo hay que mover un archivo de lugar, o simplemente le cambiamos de nombre debemos asegurarnos de tener el historial de cambios limpio antes de proceder.

RESUMEN

  • Un repositorio en Git es un registro de cambios hechos a través del tiempo que sirve para llevar un orden progresivo con respecto al desarrollo de algún proyecto, básicamente código fuente y documentos.
  • Cada archivo agregado, renombrado, editado o eliminado debe ser registrado para no perder el orden de los cambios en nuestro proyecto; pensar en un cambio a la vez es fundamental.
En los siguientes artículos iremos viendo estos dos puntos a detalle, sobre todo el manejo de ramas a nivel básico usando branchcheckoutrebase y merge para lograr un flujo de trabajo mas flexible así como diversas técnicas y recomendaciones para un registro de cambios mas efectivo con commitcherry-pickresetdiffshow y log.
Una vez tengamos dominado el flujo de trabajo básico de manera local podremos continuar con la obtención, publicación y actualización de repositorios con remote,fetchpull y push.
Github: Mi libreria

Empezar a programar para blackberry


programar para blackberry
Aprovechando la novedad de que blackberry y android van a compartir aplicaciones y market no nos vendria mal aprender un poco a programar para blackberry ya que al ser en java podemos perfectamente programar aplicaciones para android y blackberry sin necesidad de aprender nada nuevo (aunque los rumores apuntan a que pronto saldra una maquina virtual que podra correr aplicaciones de android en nuestra blackberry, nunca esta de mas tener unos conocimientos basicos).

Aqui os dejos algunas webs y algunos videotutoriales para empezar, recomiendo usar eclipse ya que si estamos familiarizados con un programa como eclipse para android nos sera mas facil empezar, aunque RIM dispone de un programa especial para programar para blackberry el cual tiene muchas ventajas respecto a usar eclipse con el plugin.

VideoTutoriales programar para blackberry

Imagen de previsualización de YouTubeImagen de previsualización de YouTubeImagen de previsualización de YouTubeImagen de previsualización de YouTube

Aplicación – Memory Booster, mejora el rendimiento y rapidez de tu BlackBerry


Memory Booster recuperará lo perdido/utilizado en la memoria del dispositivo, a consecuencia de las aplicaciones que se ejecutan en primer o segundo plano, de esta manera podrá dejar el equipo más rápido. Memory Booster refuerza la memoria Ram y optimiza el impulso de su Blackberry! Se trata de la aplicación de la utilidad del número 1 en todo el mundo para mejorar el rendimiento de su Blackberry. Ahora que los dispositivos son multitarea, se convirtió en una aplicación que  deber tener siempre. Enseguida notará la diferencia.
 ¿Si el dispositivo bloquea mucho más que el dispositivo Blackberry de tu amigo, o su teléfono tiene ese retraso leve es molesto lo suficiente por las normas de Blackberry? Aquí es una aplicación muy útil para tu Blackberry precioso. Memoria bien administrada disminuye la frecuencia de accidente y posiblemente extiende la vida del dispositivo. un toque en la pantalla es todo tarda y there you go, su memory(RAM) libre da un paso de darle.

Características de Memory Booster:

    Aplicación - Memory Booster, mejora el rendimiento y rapidez de tu BlackBerry
  • Optimiza el uso de la memoria de tu BlackBerry ®.
  • No es necesario reiniciar el dispositivo, por lo tanto es mucho más rápido que otras aplicaciones!
  • No es necesario instalar ningún nuevo hardware: la única solución es Software. No se necesita hardware adicional! No influye en otras aplicaciones.
  • Efectos visuales: Fancy bar/línea gráficos e información general de memoria de alto rendimiento textual.
  • Aumento de fondo automático: Asegúrese de que el BlackBerry ® nunca este perdiendo memoria a causa de otras aplicaciones!
  • Estadísticas: Extensos datos estadísticos para efectividad de seguimiento.

¿Cómo funciona Memory Booster?

Si se pierde la memoria, MemoryBooster mejora la gestión de memoria de la BlackBerry ®

Requerimientos para Instalar Memory Booster:

  • Funciona con todos los modelos BlackBerry
  • Se Requiere Sistema Operativo 4.6.0 o Superior
  • Compatible con Sistemas Operativos 7.0+

Descargar Memory Booster