Mostrando entradas con la etiqueta para ella.. Mostrar todas las entradas
Mostrando entradas con la etiqueta para ella.. Mostrar todas las entradas

lunes, 19 de octubre de 2009

Notas sobre Java (Más teoría)


Java es un lenguaje Orientado a Objetos (POO), es decir que define a los programas en términos de 'clases de objetos' que son entidades que cambian de estado o es mejor decir, de datos. La programación orientada a objetos establece que un programa como un conjunto de estos objetos que se comunican entre ellos por medio de métodos. Esto métodos están pensados para hacer los módulos más fáciles de escribir, mantener y reutilizar.

La programación orientada a objetos establece ciertas características:

  • Abstracción.
  • Encapsulación.
  • Polimorfismo.
  • Herencia.
así que entremos al tema con mucha materia y poca saliva.

Abstracción: Cada objeto en el sistema sirve como un agente que puede realizar un trabajo, informar y cambiar su estado, y así mismo comunicarse con otros objetos sin revelar como se implementa.

Encapsulación: A esto también se le conoce como "ocultamiento de información", esto asegura que los objetos no pueden cambiar el estado interno de otros objetos.

Polimorfismo: La capacidad de una clase de comportarse como otra, asi de fácil, así de simple.

Herencia: Esta es la parte linda, es la que organiza y facilita el polimorfismo y la encapsulación, así permite la creación de objetos especializados que pueden compartir su comportamiento sin necesidad de reimplementarlo.
Estructura de una clase en Java

  1. package: Declaración del paquete.
  2. import: Uso de clases de un paquete externo.
  3. class: Definición de la clase.
Sintaxis:

package < 'ruta del paquete' >
< 'Modificador de acceso' > class < 'nombre' > {
< 'Delcaración de atributos' >
< 'Declaración de Construcctor' >
< 'Declaración de métodos' >
}
Modificador de acceso

  • Friendly: Es el acceso por default. No tiene una palabra clave asociada, por lo que se le denomina como acceso amistoso y pueden ser accesadas por clases del mismo paquete.
  • Public: Puede ser accesada por cualquier miembro del paquete o de otros paquetes.
  • Private: No puede ser accesada por otra clase, únicamente por medio de métodos publicos.
Declaración de atributos y datos primitivos



< 'Modificado de acceso' >< 'tipo' >< 'nombre' >[=< 'valor' >]

Tipo de datos primitivos

Typo Valor
  • bolean = false
  • byte = 0
  • char = '\u0000'
  • short = 0
  • int = 0
  • long = 0L
  • float = 0.0f
  • double = 0.0d
Este tipo de datos tiene una contraparte o una clase especializada llamada Wrapper.

Pero ya hablaremos de eso en otra ocasión, por ahora es momento de decir adios y nos veremos la próxima.

martes, 13 de octubre de 2009

Notas sobre Java (Teoría)

Java es uno de los lenguajes más populares para aplicaciones basadas en web y dispositivos que se comunican por red.

Historia.

En 1991 se creo un proyecto interno en Sun Microsystem denominado Green. El plan era desarrollar un lenguaje basado en C++ que en un inicio se llamo Oak, culpa de un roble que se podía ver desde la oficina de James Gosling, su creador. Pero ya existia un lenguaje con ese nombre, por lo que mas adelante se le llamo Java, cuando un grupo de generentes visitaron una cafetería local.

Java fue creado para el mercado de dispositivos electrónicos inteligentes. Por desgracia, la proyección de Sun fue errónea y este tipo de dispositivos no se desarrollaban tan rápido. Así que el proyecto corrió con la suerte de ser cancelado. En 1993 exploto la popularidad de Internet y los chicos de Sun se dieron cuenta de que Java podía agregarle Dinamismo a las estaticas paginas creadas en html vil y villano.

En 1995, Sun Microsystem dio a conocer Java dentro de una conferencia y su fuerte fue los actuales y extintos Apples dentro de las paginas de Internet y se gano el corazón del mundo de los negocios, así como aplicaciones para dispositivos móviles como los celulares y radiolocalizadores.

Java se divide en tres ediciones que son:

  • Java Standar Edition (Java SE).
  • Java Enterprise Edition (Java EE) Orientada a las aplicaciones de redes a gran escala y aplicaciones basadas en web.
  • Java Micro Edition (Java ME) Orientada al desarrollo de aplicaciones para dispositivos moviles con memoria limitada.
Entorno de desarrollo en Java

La programación en Java pasa por 5 etapas:

  • Edición
  • Compilación
  • Carga
  • Verificación
  • Ejecución
Etapa 1

En esta primer etapa, es la parte donde escribiremos el programa ayudados por un editor. Posterior mente guardaremos el archivo bajo la extención '.java'.


Por ejemplo, suelo usar los editores vi o emacs para entornos Linux, pero para el campo de guerra necesitamos poder. Para ello existen los Entornos de desarrollo integrado (IDE's).


Entre los mas populares tenemos:
Etapa 2

Para compilar un archivo .java, es necesario hacerlo con el archivo javac, que es el compilador.

Por ejemplo, supongamos que trabajamos con vi para hacer un pequeño programa y es hora de saber si podemos seguir o nos detenemos a ver errores. Desde una shell podemos hacer lo siguiente:

[Sugizo@old ~]$javac HolaMundo.java

si no detecta ningun error, nos generara un archivo '.class' a la cual llamamos 'Byte Code' que será lo que la Maquina Virtual de Java (JVM) usara para hacer las tareas que hemos escrito.

Para ejecutar este programa es tan fácil como escribirn en nuestra terminal lo siguiente:

[Sugizo@old ~]$java HolaMundo

Y veremos en terminal o por Interface grafica de usuario (GUI) el resultado.

Etapa 3

Para poder ejecutar el programa, este debe cargarse primero a memoria, de lo que se encarga el cargador de clases. el cargador también carga cualquiera de los .class de las librerías que el programa use.

Etapa 4

A medida en que se cargan las clases, existe un componente interno conocido como el verificador de Byte Code que examina las clases para asegurar que sean correctos y no violen las restricciones de seguridad.

Etapa 5

En este punto, la JVM ejecuta los Byte Code. Antes esta parte era la mas pesada ya que la Maquina virtual interpretaba bytecode por bytecode, ahora es mas eficiente gracias a algo llamado Just in time (JIT), esto hace que se interpreten a medida de que busca puntos activos del programa. Es decir, partes del codigo que se ejecutan con frecuencia.

Ahora bien, instalar Java en Windows es tan fácil como dar doble click. Pero para hacerlo desde linux, basta seguir estas instrucciones.

Besitos.

lunes, 1 de junio de 2009

Todo para el artista: ArtistX


Una de mis pasiones en esta vida es el audio, todo el mundo de las frecuencias y armónicos. Es algo que me entretiene por horas y horas y que por lo general, salen cosas muy buenas de ellas.

Pero ahora que mi enanicima anda jugando con los gráficos en 3D, pensé en hacerle un regalo bastante lindo lleno de software para dicho trabajo y me puse a trabajar secretamente en ello. Buscando programas para 3D y demás, recordé que existe una distribución que se había creado para ello y me puse a buscarla. Para mi sorpresa, acaba de sacar su nueva versión 0.7.

Pasemos al tema

ArtistX es una distribución basada en Ubuntu 8.10 (intrepid) con el Kernel 2.6.27, Compiz Fusion, Genome 2.24, KDE 4.2 y una gran cantidad de aplicaciones para el mundo de los gráficos y multimedia, el cual es una gran alternativa para todo esos fanáticos como mi hermosa niña que se quieren pasar un buen rato creando cosas gráficamente hermosas.

Esta distribución en formato live-cd (Bueno, es un DVD... que genio!!!) puedes descargarla vía torrent y si te preguntas que puede traer ArtistX, aquí les dejamos una probadita de su contenido:

  • Software para gráficos en 2D: Gimp, Inkscape, Nip2, Krita, Cinepaint, Synfig, Rawstudio, Skencil, Hugin.
  • Softwares para gráficos en 3D: Blender, Wings3D, Kpovmodeler + Povray 3.6, K3D.
  • Softwares para video: Cinelerra, Kino, Openmovieeditor, Kdenlive, Pitivi, Avidemux, Devede, y muchos más.
  • Reproductores de mísica y video: Mplayer, Helix Player, Videolan, Xine, Kaffeine, Kmplayer, LastFM y muchos más.
  • Sofware para edición de audio: PD and externals, Rosegarden, Ardour, TerminatorX, Cecilia/Csound, Gnusound, Mixxx y muchos más.
Ahora si: Felices trasos!

viernes, 8 de mayo de 2009

Arreglando la vida. (Carpe diem)

Cuando un griego se pone a planear su vida, se sienta a hacer nada, sin hablar con nadie. Cuando le preguntas que hace, te responde "Arreglando mi vida" y sigue en su mismo mood. Después de una semana, se levanta a hacer su vida normal, pero en claro con lo que quiere de ella ya que no hay una chimenea como tu propia chimenea: La casa está donde el corazón.

Desde ayer, quizá desde un día antes algo del viejo pasado regresa para recordarme que el hombre teme el paso del tiempo y no han aprendido que es mejor encender una luz que maldecir la oscuridad que prevalece en sus vidas. Hoy me pongo a planear mi vida, a ver que quiero de ella y que no. A decirle adiós a los trolls amargados de las navidades pasadas y enfocarme a las personas que durante dos años han dado mas que tiempo a mi vida y me ha logrado sacar del hoyo donde me meti por 3 años.

"Lo pasado ha huido, lo que esperas está ausente, pero el presente es tuyo."

La historia se ha terminado.