Atrévete … // Recursividad C++

imagesCACLFLP8

Se dice que una función es recursiva cuando se define en función de si misma.

No todas la funciones pueden llamarse a si mismas, sino que deben estar diseñadas especialmente para que sean recursivas, de otro modo podrían conducir a bucles infinitos, o a que el programa termine inadecuadamente.

Tampoco todos los lenguajes de programación permiten usar recursividad.

C++ permite la recursividad. Cada vez que se llama a una función, se crea un juego de variables locales, de este modo, si la función hace una llamada a si misma, se guardan sus variables y parámetros, usando la pila, y la nueva instancia de la función trabajará con su propia copia de las variables locales. Cuando esta segunda instancia de la función retorna, recupera las variables y los parámetros de la pila y continua la ejecución en el punto en que había sido llamada.

Al ir reduciendo progresivamente la complejidad del problema a resolver, llegará un momento en que su resolución sea  trivial. En esa situación diremos que estamos ante un caso base de la recursividad.

En este ejemplo crearemos un programa en c++ que realiza las siguientes funciones:

Internet is a series of blog

1111

Nunca mejor dicho, al fin y al cabo internet se compone de varios blogs hechos por personas como tu y como yo, y aquí es donde aparece este articulo, para mostraros un nuevo proyecto, espero que ambicioso en el que participo, os hablo de www.dartexperience.com y www.coolerblogs.com, la primera , la primera web en español sobre el lenguaje de google Dart, la segunda una red de blogs, en un principio habrá videojuegos, recetas para cocina (termomix), ofertas sobre equipos informáticos y todo lo que se nos valla ocurriendo.

Guiado por la sabiduria de Javi Romay, autor de blog.jromay.es (totalmente recomendada) y de Dart Commander (no doy su nombre por si acaso quiere seguir en el anonimato jeje) se habré camino este proyecto en el que intentaremos compartir mucha (y buena) información no solo sobre temas informaticos, sabemos que existe vida mas halla de nuestro pc.

 

 

Android 4 All // Instalación del entorno Parte 2. Instalar el plugin de Android para Eclipse

Sin nombre

 

Instalar el plugin de Android para Eclipse

Este proceso es bastante sencillo, la instalación es como cualquier plugin de Eclipse. Vamos a Help > Install new software… y agregamos el sitio de descarga de Google: ADT Plugin - https://dl-ssl.google.com/android/eclipse/Seleccionamos todos los paquetes, aceptamos la licencia, e instalamos. Tras instalar, hay que decirle a Eclipse dónde tenemos instalado el SDK de Android. En Windows > Preferences / Android, hay un diálogo para buscar la ubicación y guardar los cambios.

Crear un Dispositivo Virtual Android

Vamos a ejecutar nuestras aplicaciones en un Emulador de Android. Antes de poder usarlo, debemos crear un Android Virtual Device (AVD). Este define la imagen del sistema y las configuraciones del dispositivo a usar por el emulador. Lo creamos en el gestor de SDK y AVD. Si ya instalamos el plugin de Eclipse, podemos ir a Windows > Android SDK and AVD Manager y ahí elegir el menu de Virtual Devices. Presionar el botón de New, e ingresar los datos. Hay que elegir un nombre característico del dispositivo (al poder tener varias plataformas Android instaladas, podemos usar un dispositivo para cada una o más), la plataforma a la que apuntamos y lo creamos.

 

Android 4 All // Instalación del entorno Parte 1. Preparar el entorno

Sin nombre

En este primer tutorial sobre android especificaremos los pasos a seguir para la instalación de un entorno de desarrollo basado en Android. ¿Qué es un entorno de desarrollo? : Conceptos básicos. Entorno de desarrollo.

Preparar el entorno

En principio, necesitamos la JDK (Elíge la descarga aquí según tu sistema y arquitectura), y una instalación de Eclipse. Nosotros utilizaremos Indigo, puedes consultar la info aquí: http://eclipse.org/indigo/ y descargarlo aquí según tu sistema y arquitectura

Eclipse 3.6.2

Descargar el SDK

Entrar al sitio de descarga del SDK(Kit de desarrollo de software). Ahí descarguen el archivo correspondiente a su sistema operativo. En GNU/Linux, se descarga un archivo tar.gz con el nombre android-sdk-linux_x86 o similar. Descomprimimos este archivo en un directorio que luego recordemos. En mi caso uso ~/frillsGames/devel. El paquete que descargamos no es el entorno de desarrollo completo, incluye algunas herramientas centrales, que pueden usarse para descargar el resto de los componentes. Así que al descargar este archivo, ni siquiera tenemos una plataforma Android para empezar. El SDK usa una estructura modular que separa las partes principales – versiones de la plataforma Android, extensiones, herramientas, muestras y documentación- en un set de componentes instalables separados. Para empezar a desarrollar se necesita al menos una plataforma Android y el paquete SDK Platform-tools (herramientas en las cuales depende la plataforma). El ejecutable del gestor que descargamos, android,  se encuentra en el directorio tools:~/software/devel/android-sdk-linux_x86/. En esta interfaz de usuario, en el menu de “Available Components” encontramos varias cosas que podemos ir instalando:

Conceptos básicos. Entorno de desarrollo.

Un entorno de desarrollo  es un software compuesto por un conjunto de herramientas de programación necesarias para realizar aplicaciones con uno o varios determinados lenguajes de programación. Un entorno de desarrollo bueno puede llegar a ser indispensable para un buen desarrollo de una aplicación. Se dedica bastante tiempo a configurar el entorno cuando se trata de grupos de desarrollo, porque agiliza el desarrollo cuando existe una buena base, además es difícil coordinarse cuando en un mismo grupo trabajan con diferentes versiones.

También llamados IDE cuando han sido empaquetado juntos los siguientes tipos de programas:

  • Editor de código
  • Compilador
  • Depurador
  • Constructor de interfaz gráfica (GUI).
  • Opcionalmente, un sistema de control de versiones

Módulos imprescindibles para el posicionamiento de tu sitio Drupal 7. Hazte experto en drupal parte 3

110224 drupal

Existen varios módulos de Drupal que si se incluyesen en la versión por defecto, nadie se quejaría, al contrarío, estos módulos son casi imprescindibles en nuestro sitio porque que te ayudarán en el manejo, por ejemplo, del posicionamiento de tu sitio en internet, haciendolo mucho más amigable con los motores de búsqueda.

 

Google Analytics

Agrega las estadísticas del sistema de seguimiento Google Analytics a su sitio web.

Proporciona la capacidad de rastrear selectivamente ciertos roles de usuario. Ahora con soporte para la segmentación – que permite el seguimiento de los visitantes que se conectaron por id de usuario, nombre de usuario, y los campos de perfil en Google Analytics.

Download

NodeWords | Meta-tags

Permite a los usuarios añadir etiquetas meta, por ejemplo, palabras clave o descripción.

Nodewords renombrado meta tags, añade etiqueta meta keywords y meta descripción a las que muchos han restado importancia, pero todavía pueden proporcionar una descripción útil para la página y ayudar a reforzar el contenido.

Download

Atrévete … // Punteros C++

imagesCACLFLP8

No, no salgas corriendo todavía. Este tema suele reproducir extrañas muecas de dolor en la cara de la gente cuando se le nombra, pero no es algo tan terrible como piensas …

Veamos, en este articulo intentare explicar los punteros de una forma fácil de entender y que no os parezca cosa rara, aunque la mejor forma de entender a estos, es con la practica.

Los punteros proporcionan la mayor parte de la potencia al C++, y marcan la principal diferencia con otros lenguajes de programación.

Una buena comprensión y un buen dominio de los punteros pondrá en tus manos una herramienta de gran potencia. Un conocimiento mediocre o incompleto te impedirá desarrollar programas eficaces.