Presento el código fuente de uno de los proyectos de programación de esta evaluación. Se trata de un diccionario de castellano con la implantación de un algoritmo para averiguar sinónimos.
Ha sido realizado utilizando 95% C++ y un 5% sentencias C, quizás el porcentaje sea menor.
Y aqui el enunciado del problema.
S1.-Diccionario
Elaborar un programa en C++, de forma que nos gestiones un diccionario de español, con los siguientes requisitos
Insertar palabra y su significado
Buscar palabras y su significado
Modificar significados
Gestión de multiples significados(multimapas), es decir dado un término hallar sus posibles significados si tiene mas de uno, y también poder insertar nuevos sinónimos.
Una de las limitaciones que le veo al HTC Desire es el traspasar aplicaciones a la SD, es bien cierto que desde el gestor de aplicaciones puedes transferirlas, pero no todas y es lógico que los juegos y las aplicaciones de usuario se encuentren en la tarjeta SD mientras que las aplicaciones del sistema se mantengan en el móvil.
La memoria interna del móvil tiene una capacidad de 150 megas y a poco que te instales dos juegos y cuatro tonterias mas, pronto android te avisara de que te queda poco espacio, incluso teniendo una tarjeta de 8gb, pues bien, el "truquito" siguiente sirve para móviles que no han sido rooteados y unicamente que corran bajo Froyo 2.2, que se sepa...
Existe una aplicación en el market que es un front-end del gestor de aplicaciones (App2SD) que combinado con lo que sigue servirá de mucha utilidad. Lo primero que debemos hacer es descargar el parche para App2SD desde aquí, aunque la interfaz parezca muy ochentera (si es un script de lotes) y os de "miedito" no hay de que preocuparse, se ha analizado con Avast. El siguiente paso es conectar el movil via USB y tener activado el modo depuracion (se activa desde Menu>Ajustes>Aplicaciones>Desarrollo>Depuracion USB). Si por un casual vuestro windows no os reconociese el movil, deberias instalar el HTC Sync ya que puede que falten los plugins necesarios.
Cuando este todo listo, ejecutais el parche y vereis esta pantalla.
Elegis la opcion 1 y dejais que haga su trabajo. Cuando hayais terminado podeis empezar a pasar vuestras aplicaciones a la tarjeta, pero eso si, tan solo se pueden pasar las aplicaciones que hayais instalado, las que vienen instaladas de propio con el movil como Maps de Google o la Market no y tampoco es recomendable que paseis los widgets ya que no os funcionaran
Sabían que alrededor del 70% de las paginas web están servidas con un Apache? Que qué es Apache? Satisfyer que modelo elegir Pues Apache es un servidor HTTP de código abierto y multiplataforma, es decir, corre bajo Linux, Windows y MacOS. En el documento que presento a continuación explico de manera clara (creo) la instalación y configuración a nivel básico de Apache bajo Ubuntu. Su alto nivel modular hace que en Ubuntu sea bastante fácil la configuración ya que contamos con varios archivos de configuración
El otro día, me decidí a instalar un nuevo repositorio a través de la terminal, supongo que cualquier usuario de Linux sabe que es un repositorio, para los que no lo sepan, un repositorio es el sistema que utiliza Linux para conseguir software, haciendo una analogía , es la market de Android o la App Store de Apple; la definición técnica de repositorio es un sitio centralizado donde se almacena y mantienen paquetes de los programas y sus dependencias.
Pues bien, el otro día siguiendo un tutorial de como cambiar unas cosillas de Linux, abrí la terminal y escribí algo así como: echo "deb http://repository.glx-dock.org/ubuntu $(lsb_release -sc) cairo-dock" | sudo tee -a /etc/apt/sources.list
Explicación de comandos:
echo: muestra por pantalla todo lo que hay a continuación, en este caso toda la url
Después mediante | (llamada tuberia) redireccionamos la salida del comando anterior a la entrada del próximo comando que en este caso es.
tee: permite escribir en un fichero lo que le estemos indicando mientras que lo muestra por pantalla,en este caso el comando sudo permite ejecutar programas o comandos en modo root, después invocamos tee y le decimos donde queremos que escriba (/etc/apt/sources.list)
El fichero sources.list es donde el SO leerá las direcciones de los repositorios.
Pues bien tras añadir esta y otras lineas y después de hacer un sudo apt-get update intente abrir el Centro de Software de Ubuntu y me saltó un error,ahora mismo no recuerdo que código de error tenia ni que era lo que me decía exactamente,pero el caso es que no me dejaba acceder ni al Centro de Software ni al Gestor de paquetes de Synaptic, como es obvio el problema debía de residir en lo que acababa de tocar, es decir en el fichero que modifique a través de la terminal, la solución fue muy fácil, abri una consola y me dirigí a /etc/apt/ , allí mediante gedit, vi o nano abri sources.list , después elimine las ultimas lineas que habia añadido , cerré y reinicie el sistema y ya todo volvió a estar funcionando correctamente como antes.
Daremos los primeros pasos con los comandos de Linux y su terminal, algo sencillo... Antes de empezar he de indicar que el símbolo de dolar $representa el prompt del sistema (mas info)
IDENTIFICACIÓN DE USUARIO Y MÁQUINA
$ logname: imprime el nombre con el que se ha hecho log en el sistema
$ id: imprime información sobre el grupo y usuario. Si no se indica ningún usuario imprimirá la información por defecto (usuario root). Lo que mas nos interesa de lo imprimido es el UID (Numero de identificación del Usuario) GID (Numero de identificación del Grupo) y GROUPS (Indica el grupo al que pertenece el usuario que se ha consultado)
$ uname: imprime informacion del sistema
$ who: imprime informacion sobre el usuario que ha hecho logging indicando la hora de acceso, la terminal asociada entre otros parametros.
FECHA Y HORA
$ date : muestra la fecha actual y la hora
$ cal : muestra el calendario del mes actual
DIRECTORIOS
$ pwd : muestra la ruta en la que te encuentras. Si te encuentras en /home/usuario/scripts al escribir pwd te aparecerá esa ruta
$ cd : cambio de directorio. Puedes indicar la ruta mediante una ruta absoluta, es decir indicando el lugar al que te quieres dirigir desde la raíz del sistema, por ejemplo, estas en /etc y te quieres dirigir a /home/usuario, pues escribirías cd /home/usuario ; aunque también puedes utilizar una ruta relativa, esto es, señalar una dirección desde la que nos encontramos actualmente, imaginemos que estamos en /home/usuario/canciones y queremos ir a /home/usuario/forosVerano pues deberíamos teclear cd ../fotosVerano. Aclaro: los dos puntos son para retroceder una posición en el árbol de directorios, es decir, ir pa'tras
$ ls : este comando lista los elementos de un directorio, es el "dir" de windows, tiene bastantes parámetros pero los mas utilizados son:
$ ls -a: muestra todos los elementos incluyendo los ocultos (en Linux empiezan por un punto)
$ ls -r: muestra los elementos en orden inverso ( r de reverse )
$ ls -l: muestra un listado largo con los permisos, usuarios de creacion, fecha y hora y otras cosas
ls -R: muestra los elementos recursivamente, lo que hay dentro de cada directorio del que hemos listado
MANEJO DE LA PANTALLA
$ clear: hace un borrado de la pantalla
$ more - less - pg : son comandos paginadores, por ejemplo $ more +3 imprime a partir de la tercera linea
Este nuevo blog se va a utilizar para explicar todo lo que vaya haciendo día a día en el Desarrollo de Aplicaciones Informáticas, desde programación en lenguajes estructurados a lenguajes orientado a objetos, desde el manejo de servidores desde Linux, sus comandos propios y programación en shell script hasta llegar al análisis de datos, análisis de procesos y eventos, Entidad/Relación, normalización, DFD´s...lo propio. Esperemos que sirva de guía practica.