domingo, 20 de abril de 2014

Listas ligadas simples - Java


Una lista es una estructura lineal y dinámica de datos.Lineal es porque a cada elemento solo le puede seguir otro elemento.Dinámica es porque se puede manejar la memoria de manera flexible sin la necesidad de reservar espacio conantelación.


Una ventaja de las listas es que pueden manejar un tipo dinámico de datos cuando lo necesitan,como así liberar la memoria cuando ya no se requiera.


Las listas ligadas son colecciones de elementos llamados nodos, el cual el orden entre ellos se establece por medio de un tipo de datos llamados punteros, apuntadores, direcciones o referencias a otros nodos.


Un nodo consta de un campo de información y una liga.Información que es del tipo  de datos que se quieren almacenar.Liga que es de tipo puntero, que se utiliza para establecer el enlace hacia otro nodo de la lista.El ultimo nodo de la lista este apuntaría a null o vació.


Aquí están algunos métodos mas usados dentro de las listas.
Para esto necesitamos una clase nodo.


Ahora en nuestra clase de lista, tenemos un nodo llamado inicio. En todos lo métodos hacemos referencia al nodo inicio.

Insertar un elemento al inicio de la lista.



lunes, 3 de febrero de 2014

Crea tu primer Red Social en PHP - Diseño de la lógica del usuario.




Recordando en la entrada anterior, diseñamos nuestra base de datos, ahora comenzaremos con la programación de nuestra red social.Lo primero es tratar de crear toda la lógica de nuestro proyecto y cuando sea funcional pasaremos a crear la apariencia para que se vea mas presentable. 




Para nuestra red social vamos a ir creando nuestras clases en php, así que para empezar, vamos a utilizar una clase que nos conecte con la Base de Datos y se nos facilite la manipulación de la misma.
He creado una clase para esto en unas entradas atras, pueden revisarla en el siguiente enlace:
Crear una clase en PHP para el manejo de consultas en la Base de Datos
Esa clase vamos a utilizar, solo es cuestión de cambiarle el nombre de la base de datos en la propiedad:
db_name a "social".


Nuestra clase se llamara modelUsuario el cual se encontrara en un archivo llamado modelUsuario.php, esta clase heredara de nuestra clase abstracta modeloBD que es la que mencionaba anteriormente.

La clase abstracta modeloBD contiene métodos abstractos el cual toda aquella clase que herede de ella, contendrá dichos métodos por defecto si no, nos mostrara un error.

Propiedades de nuestra clase modelUsuario:
  • idusuario
  • nombre
  • apellidoPaterno
  • apellidoMaterno
  • nacionalidad
  • correo
  • clave
            Como verán, nuestras propiedades de nuestra clase son las mismas que las columnas de la tabla usuario de nuestra Base de Datos "social".




            Metodos

            GET
            Nuestro método GET sera para obtener todos los datos de cierto usuario en especifico, esto sera a través de su identificador (id), el cual lo pasaremos por el parámetro del método.
            Si id es correcto todos los datos le serán asignados a las propiedades de la clase, los cual podemos acceder a ellos a través de sus métodos GET de cada propiedad.




            He insertado valores a la Base de Datos para ver que funcione.


            Para ir probando que sea funcional nuestro código, crearemos un archivo llamado prueba.php en el cual vamos a ir creando nuestros objetos.


            Abrimos nuestro navegador.

            martes, 28 de enero de 2014

            Crea tu primer Red Social en PHP - Diseño de la Base de Datos




            Comenzaremos a desarrollar una pequeña Red Social, no como toda la infraestructura de las actuales como Facebook o Twitter.Llevaremos los principios de la programación orientada a objetos, como así el manejo de una base de datos.







            He creado un modelo relacional de nuestra Base de Datos, esta consiste en 5 tablas:

            • usuario
            • actualizacion
            • comentario
            • amigos
            • votos


            La tabla usuario se relaciona con otras tres: amigos, actualizacion y comentario.

            Tabla usuario.


            lunes, 27 de enero de 2014

            Crear una clase en PHP para el manejo de consultas en la Base de Datos


            Porque crear una clase que nos permita realizar las peticiones a la base de datos? Pues cuando empiezas a programar en PHP y necesitar a crear tus consultas para obtener ciertos  datos te das cuenta que empiezas a repetir mucho código y ahí es donde te das cuenta que necesitas minimizar el proceso y entras en la POO.







            La clase consiste en atributos; los atributos estáticos son los que nos permitirá acceder la configuración de nuestra base de datos.
            Los atributos protegidos se encargaran de guardar el proceso dentro de la clase, como por ejemplo el atributo query lo usaremos para generar las peticiones SQL, la row guardara todos los datos que se obtengan de la petición (query).

            Los métodos abstractos get, set, edit y delete serán agregados obligatoriamente en cualquier clase que se herede de ella, usando la palabra reservada extends. Si estos métodos no son agregados a la clase hija, marcara un error.

            Métodos.
            open_connection
            Este método se encargara de abrir la conexión usando dichos atributos estáticos.

            close_connection
            Cerrara la conexión.

            execute_single_query
            Método que permitirá hacer las peticiones simples, las que no es necesario obtener datos.

            sábado, 25 de enero de 2014

            Invertir un arreglo de números en Java




            Invertir un arreglo de números. Podemos tener un arreglo así, por ejemplo: [2,3,4,5,6] y al invertirlo nos quedara [6,5,4,3,2].Lo mas recomendado es hacer un for y recorrer cada elemento del arreglo original e ir del ultimo al primero.









            jueves, 23 de enero de 2014

            Obtener el valor máximo de un arreglo en Java




            Obtener el valor máximo de un arreglo, lo que necesitamos es ir comparando cada valor del arreglo con un valor que estableceremos como el máximo.












            lunes, 9 de diciembre de 2013

            Programación Orientada a Objetos Java Parte 1.




            Es hora de programar orientado a objetos comúnmente conocido como POO.
            En una entrada anterior explico algunos términos de POO por si gustan leerlo.
            Ahora bien, nos enfocaremos en Java. 







            Dificultad: Intermedio
            Herramientas: IDE Eclipse.
            Tiempo estimado de finalización: 30 minutos.

            Abrimos nuestro IDE.




            Crearemos un nuevo proyecto.




            Lo llamaremos POO.