Thursday, December 03, 2009

Sun Certified Enterprise Architect for the Java Platform, Enterprise Edition 5 (Step 1 of 3) (CX-310-052) - Objetivos

Objetivos de Asignación


Sección 1: Conceptos y Principios del Diseño de aplicación


  • Explicar las ventajas principales de un enfoque orientado a objetos para el diseño del sistema, incluyendo el efecto de la encapsulación, la herencia, y el uso de interfaces en las características arquitectónicas.

  • Describir cómo el principio de "separación de las preocupaciones" se ha aplicado a las principales capas en un sistema de una plataforma Java, una aplicación Enterprise Edition. Las capas incluyen al cliente (tanto interfaz gráfica y web), web (contenedor web), negocio (contenedor EJB), integración y capas de recursos.

  • Describir cómo el principio de "separación de las preocupaciones" se ha aplicado a las capas de una aplicación Java EE. En las capas se incluye la aplicación, la plataforma virtual (componentes APIs), infraestructura de aplicaciones (contenedores), servicios empresariales (sistema operativo y virtualización), computo y almacenamiento, y las capas de infraestructura de red.

Sección 2: Arquitecturas Comunes


  • Explicar las ventajas y las desventajas de arquitecturas de dos capas cuando se examinan bajo los siguientes temas: escalabilidad, mantenimiento, fiabilidad, disponibilidad, extensibilidad, rendimiento, manejabilidad y seguridad.

  • Explicar las ventajas y las desventajas de arquitecturas de tres capas cuando se examinan bajo los siguientes temas: escalabilidad, mantenimiento, fiabilidad, disponibilidad, extensibilidad, rendimiento, manejabilidad y seguridad.

  • Explicar las ventajas y las desventajas de arquitecturas multi-capas cuando se examinan bajo los siguientes temas: escalabilidad, mantenimiento, fiabilidad, disponibilidad, extensibilidad, rendimiento, manejabilidad y seguridad.

  • Explicar los beneficios e inconveniencias de los clientes enriquecidos y clientes basados en navegador cuando son desplegados en una aplicación típica Java EE.

  • Explicar los usos apropiados e inapropiados para los servicios Web en la plataforma Java EE.

Sección 3: Integración y Mensajería


  • Explicar los posibles enfoques para la comunicación con un sistema externo desde un sistema basado en tecnología Java EE dando una breve descripción de esos sistemas y un resumen de los beneficios y desventajas de cada enfoque.

  • Explicar los usos habituales de los servicios web y XML a través de HTTP como mecanismos para integrar los distintos componentes de software.

  • Explique cómo JCA y JMS son utilizados para integrar distintos componentes de software como parte de una solicitud general de Java EE.

Sección 4: Tecnologías en la capa de Negocio


  • Explicar y contrastar el uso de los beans de entidad, clases de entidad, y bean de sesión tanto con estado como sin estado, y los message-driven beans, y entender las ventajas y desventajas de cada tipo.

  • Explicar y contrastar las siguientes estrategias de persistencia: persistencia gestionada por el contenedor (CMP), BMP, JDO, JPA, ORM y utilizando DAOs (Data Access Objects) y haciendo uso directo de la tecnología basada en persistencia JDBC bajo los siguientes epígrafes: facilidad de desarrollo, rendimiento, estabilidad, extensibilidad y seguridad.

  • Explicar como Java EE soporta el despliegue de los componentes implementando en el lado del servidor, como lo son los servicios web, y las ventajas de desventajas de la adopción de dicho enfoque.

  • Explicar los beneficios del modelo de desarrollo de EJB 3 sobre las anteriores generaciones de EJB para la facilidad del desarrollo, incluyendo la forma en que el contenedor EJB simplifica el desarrollo EJB.

Sección 5: Tecnologías en la capa Web


  • Explicar las ventajas y los inconvenientes de la adopción de un framework web en el diseño de una aplicación Java EE.

  • Explicar los usos estándares de páginas JSP y Servlets en una aplicación típica Java EE.

  • Explicar el uso estándar de componentes JavaServer Faces en una aplicación tipica Java EE.

  • Dada la definición de requerimientos de un sistema, explicar y justificar sus razones para elegir la implementación de un web-centric o un EJB-centric para resolver dichos requerimientos. Web-centric significa que usted esta centrado en proporcionar una solución que no utiliza componentes EJB. Una solución EJB-centric requerirá de un servidor de aplicación que soporte componentes EJB.

Sección 6: Aplicabilidad de la tecnología Java EE


  • Dado un problema especifico de negocio, diseñar una solución modular que resuelve el problema usando Java EE.

  • Explique como la plataforma Java EE permite utilizar aplicaciones basadas en arquitectura orienta a servicios (SOA)

  • Explique como diseñar una aplicación Java EE que en repetidas ocasiones la medida critica de requerimientos no funcionales y esbozar un proceso estándar con estrategias especificas para refactorizar que la aplicación mejore los resultados de las mediciones.

Sección 7: Patrones


  • De una lista, seleccione el patrón mas apropiado para un escenario dado. Los patrones se limitaran a los citados en el libro – Alur, Crupi and Malks (2003). Patrones de diseño J2EE: Mejores practicas y estrategias de diseño segunda edición, utilizando los nombres dados que se dan en el libro.

  • De una lista, seleccione el patrón mas apropiado para un escenario dado. Los patrones están limitados a los documentados en el libro – Gamma, Erich; Richard Helm, Ralph Johnson y John Vlissides (1995). Patrones de diseño: Elementos de reusabilidad Orientados a objetos, utilizando los nombres dados que se dan en el libro.

  • De una lista, selecciona las ventajas y desventajas de un patron dibujado del libro – Gamma, Erich; Richard Helm, Ralph Johnson y John Vlissides (1995). Patrones de diseño: Elementos de reusabilidad Orientados a objetos.

  • De una lista, seleccione los beneficios y los inconvenientes de un patron especificado de los patrones de Java EE, extraidos del libro – Alur, Crupi and Malks (2003). Patrones de diseño J2EE: Mejores practicas y estrategias de diseño segunda edición.

Sección 8: Seguridad


  • Explicar el modelo de seguridad del lado del cliente para un ambiente Java SE, incluyendo el Web Start y los modos de despliegue de un Applet.

  • Dada una especificación de arquitectura de un sistema, seleccionar los lugares apropiados para la implementación de características de seguridad específicas, y seleccionar las tecnologías adecuadas para la implementación de esas características.

  • Identificar y clasificar las amenazas potenciales de un sistema y describir como una arquitectura determinada hará frente a dichas amenazas.

  • Describir las declaraciones comúnmente usadas y los métodos programados utilizados para asegurar las aplicaciones construidas en una plataforma Java EE, por ejemplo utilizando descriptores de despliegue y JAAS.

Fuente: Objetivos SCEA Part 1

Monday, November 02, 2009

Transacciones

You can think of a transaction as a three-legged wooden stool. All three legs must hold for the stool to stand. If any of them break, the stool collapses.

Saturday, October 03, 2009

Historia de Chevyplan

La idea de esta entrada es describir mi experiencia con esta entidad, siendo lo mas honesto posible. Lo anterior, es porque luego de haber leído en muchos foros, las muchas malas experiencias que han tenido muchas personas con este sistema, he decido ingresar a este sistema ya que es la forma mas factible que tengo para poder adquirir un carro. Y a ver ke pasa. Ire actualizando esta entrada a medida que vallan ocurriendo eventos relacionados al chevyplan.

Octubre 3 de 2009

Hoy realice la inscripcion a chevyplan, y con el afan de participar en la primera asamblea a ver como es esa actividad. Aun no me asignan mi identificación, ya que eso demora unos cuantos días, pero según me estarían avisando la siguiente semana, para entregarme todo el papeleo y darme la bienvenida.

Me imagino que con el tiempo la desesperación podría estar entrando, pero en este momento no pasa absolutamente, y es mas que obvio es el día cero.

Esperemos a ver cuando me llaman para avisarme cuando es la primera asamblea de adjudicación.

Saturday, August 08, 2009

Hardware

D-Link DIR-615 Wireless N


Technical Specifications

Standards

  • IEEE 802.11n (draft 2.0)
  • IEEE 802.11g
  • IEEE 802.3
  • IEEE 802.3u
Security
  • WPA-Personal
  • WPA2-Personal
  • WPA-Enterprise
  • WPA2-Enterprise
Wireless Signal Rates
  • 108Mbps
  • 54Mbps
  • 48Mbps
  • 36Mbps
  • 24Mbps
  • 18Mbps
  • 12Mbps
  • 11Mbps
  • 9Mbps
  • 6Mbps
  • 5.5Mbps
  • 2Mbps
  • 1Mbps
Frequency Range
  • 2.4Ghz to 2.483Ghz
Transmitter Output Power
  • 17dBb +- 2dB
LEDs
  • Power
  • Internet
  • WLAN
  • LAN
Operating Temperature
  • 32ºF to 104ºF (0ºC to 40ºC)
Humidity
  • 95% maximum (non-condensing)
Safety & Emissions
  • FCC
  • IC
  • CE
Dimensions
  • L = 7.6 inches
  • W = 4.6 inches
  • H = 1.2 inches



Wednesday, July 15, 2009

Algo sobre la UPJ

En Bogotá existe algo llamado UPJ, que son las iniciales de Unidad Permanente de Justicia, es un centro de retención transitoria, donde permanecen hasta máximo 24 horas infractores. Allí no pueden ingresar menores de edad, mujeres embarazadas ni adultos mayores. Junto a la Policía Metropolitana trabajan allí la Fiscalía General de la Nación, Medicina Legal, la Secretaría de Gobierno de la Alcaldía, la Secretaría de Tránsito y Transporte, el Departamento Administrativo de Bienestar Social y la Defensoría del pueblo. Recientemente han comenzado a trabajar ONG que colaboran con la alimentación, aseo y salud dental de los indigentes que terminan allí.

Por que son llevadas las personas a la UPJ? obviamente porque algún individuo comete una infracción la cual No llamaremos delito, sino contravención, que son infracciones mucho menores a los delitos. Como por ejemplo, iniciar una riña en la calle, estar embriagado en la calle, estar elevado (High) en la calle, orinando en la calle, etc.

Detrás de esto existen varias cosas que los policías aplican para que esto se pueda hacer de manera "legal", y es que ellos consideran que te encuentras en un estado de grave excitación y necesitan proteger a las demás personas y protegerte de ti mismo.

Para ello, hacen uso de su famoso
EL CÓDIGO DE POLICÍA DE BOGOTÁ D.C. s(cabe aclarar qué para cada ciudad de Colombia existe un código de policía independiente) siento este el de ciudad capital, el mas absurdo.

Cuando ellos "deciden" llevarte para la UPJ, ellos te hacen firmar un papel, en el cual dice que estas de acuerdo con los artículos de este código que se te imputan, y entre otras cosas mas importantes como lo son: los derechos que tienes ante esa situación, siendo el primero "Que tienes derecho a ser escuchado" el cual en muchas ocaciones este es violado.

Cuales son los artículos de código de policía de bogotá imputados? En este documento mencionan dos Artículos que son:

ARTÍCULO 146.- Conducción. Es el traslado inmediato de cualquier persona ante una autoridad, a un centro asistencial o de salud, a su domicilio y si ello no fuere posible a la Unidad Permanente de Justicia de la Policía Metropolitana de Bogotá.

ARTICULO 147.- Procedencia de la conducción como medida de protección. Los miembros de la Policía Metropolitana de Bogotá D.C., podrán, como medida de protección, conducir a la persona que deambule en estado de indefensión o de grave excitación con peligro para su integridad o la de otras personas, a su residencia o al centro hospitalario o de salud más cercano, según sea necesario y hasta tanto cese el peligro. En caso de estado de indefensión o de grave excitación con peligro para su integridad o la de otras personas, si quien va a ser conducido se niega a dar la dirección de su domicilio, como medida de protección, podrá ser conducido a la Unidad Permanente de Justicia, donde podrá permanecer hasta veinticuatro (24) horas, bajo la responsabilidad y cuidado estricto de la autoridad encargada de dicha unidad. En ningún caso las personas conducidas en las condiciones de este artículo compartirán el mismo sitio con quienes estén presuntamente comprometidos por causas penales.

PARÁGRAFO PRIMERO. Quien ejecute la conducción, de acuerdo a los procedimientos establecidos por la policía metropolitana de Bogotá, deberá rendir de manera inmediata el respectivo informe a su superior jerárquico y a la persona conducida.


PARÁGRAFO SEGUNDO. Tratándose de menores de edad cuando no informen la dirección de su casa, como medida de protección, deben ser conducidos a un centro de protección especial.


Como sabrán, muchas de las cosas establecidas en solo estos dos artículos para semejante operación no son tomados en cuenta en los mas mínimo.

Para finalizar, quisiera que tambien leyeran el articulo de la siguiente paginá.
http://www.soho.com.co/wf_InfoArticulo.aspx?IdArt=8276

La cual expresa de manera muy objetiva lo que es estar en la UPJ (opino por experiencia propia)

Para recordar...

Algunas razones por las que usted puede caer en la UPJ

- Por tomar licor en la calle.

- Por estar parado a las tres de la mañana, alicorado, esperando un taxi.

- Por decir "por qué me va a requisar".

- Por orinar en un árbol, el talón de Aquiles de quienes viven en la calle.

- Por dormir en la calle, el otro talón.

- Por si se están trabando, que es una de las pocas cosas que pueden hacer los indigentes.

- Por si lleva un arma en las manos.

- Por si se parece a un ladrón al estar corriendo para alcanzar el bus. A eso le dicen sospecha.

- Por cualquier otra cosa a la que también le digan sospecha.

- O por que sí, si llamas a un policia para ponerle la queja de un borracho que te está molestando, y luego este (el policia) al hablar con el borracho, concluyen que en realidad deben llevarte a ti. Y asi lo hacen. WTF!!!



Wednesday, June 24, 2009

Recuperar arranque de Windows Vista despues de la Instalacion de Windows XP

El titulo es muy diciente, me encontré con está situación y no sabia como resolver este problema.

Aquí va la solución:

Debemos descarga "algo" que se llama 'BootSect.exe', (no profundice sobre lo que puede hacer esta aplicación)

Desde windows XP, entramos a una terminal. (inicio>ejecutar, y se digita cmd).

Desde la terminal entramos a la carpeta donde tenemos la aplicación con los siguientes parámetros:

c:\bootsect\BootSect.exe /NT60 All

Y eso es todo, el arranque de windows Vista vuele a estar en su estado normal.

Si digitamos en la terminal:

c:\bootsect\BootSect.exe /help

podemos ver algunas otras opciones que podemos emplear con la aplicación.

Monday, January 19, 2009

Instalar Flash Player 10 64 bit en ubuntu

Muy sencillo.

Se descarga el "pluggin" de la pagina oficial de adobe:
http://labs.adobe.com/downloads/flashplayer10_64bit.html

En esta pagina se encuentra el archivo comprimido en un tar.gz

Lo descomprimimos para extraer el archivo .so, y colocamos este archivo en la siguiente ruta:

/home/USER/.mozilla/plugins

Se verifica que este intalado en firefox utilizando about:plugins

Debe aparecer Shockwake Flash.

Listo.

La guia oficial se encuentra:

fuente

Monday, December 10, 2007

Preguntas Frecuentes - SUN CERTIFIED PROGRAMMER FOR JAVA PLATFORM 6 EXAM

¿Cuales son las diferencias entre los examentes Sun Certified Programmer for Java Platform 5 (CX-310-055) y 6 (CX-310-065) ?
  • Preguntas concernientes al System.gc() han sido removidas.
  • Cobertura a la clase java.io.Console ha sido agregada.
  • Cobertura las Colecciones navigables han sido agregadas.
  • Muchos de los anteriores objetivos han sidos fortalecidos (asi que se puede esperar más preguntas y mucho más detalladas de estas). Estos objetivos fortalecios incluyen: Manejo de escepciones, clases e interfaces de las colecciones, asersiones, hilos y flujo de control.

¿Donde se pueden encontrar los objetivos del examen?
  • Los objetivos del examen se pueden encontrar en el sitio web de Sun de la Certificacion.
  • O aquí, en este blog traducidos al español.
¿Que ha sido removido del examen de actualizacion?

Ha sido removido lo siguiente:
  • El uso de System.gc()
¿Que ha sido agregado al examen?

Los siguientes han sido agregado al examen:
  • La clase java.io.Console.
  • Colecciones navigable.
Los siguientes han sido fortalecidos (se esperan preguntas más detalladas):
  • Manejo de excepciones.
  • Clases e interfaces de las Collection.
  • Aserciones.
  • Hilos
  • Flujo de control.
Soy un programador certificado de Java, de una version anterior. ¿La certificacion de actualizacion impactara mi status?

No, programadores certificados con una version anterior, seguiran siendo certificados. Sin embargo, siempre recomendamos a los profesionales mantenerse a la tecnologica actual. El examen de actualizacion (CX-310-066) es para programadores que quiren subir su statuos de SCJP 1.x a SCJP 6.

¿Qué es un Borderline Survey?

There is a survey at the beginning of the exam called a Borderline. This survey allows us to collect information on the candidate's experience as a programmer. That information is used to determine how exams are performing. In short, it allows us to create and maintain the highest standard in our examinations. Giving honest answers to this survey is essential.

¿Existen examen de practica en la web disponibles para el examen?

These ePractice exams will be available in December 2007:
  • ePractice Certification Exam for the Sun Certified Programmer for the Java Platform, Standard Edition 6 (WGS-PREX-J065C)
  • ePractice Sample Questions for the Sun Certified Programmer for the Java Platform, Standard Edition 6 (free) (WGS-PREX-J065-10)
¿Habran paquetes de certificación disponibles que me ayuden para prepararme para la certificacion?

Blended learning and eLearning packages will be created to help customers prepare for the certification exam. These packages will include training, the online practice exam and a voucher to take the certification exam. These packages will be available in Q3 FY08

¿Existe documentacion, especificaciones o white papers que podrian ayudarme para preperarme al examen?

Existen unas fuentes disponibles en el sitio web de Sun java.sun.com :
¿Existen libros que cubran los temas de Java SE 6 ?

  • Java 6 Platform Revealed by John Zukowski (ISBN: 1-59-059660-9)
  • Murach's Java SE 6: Training & Reference by Joel Murach (ISBN: 1-89-077442-1)

Friday, December 07, 2007

Objetivo 1.1

Definición: Desarrollar código que declare clases (incluyendo clases abstractas y todas las formas de clases anidadas), interfaces, y enumeraciones, e incluir el uso apropiado de sentencias de paquetes e importaciones (incluyendo importaciones estáticas) holamundo holamundo

Contenido
  1. Declaración de clases
  2. Clases Anidadas
  3. Clases abstractas
  4. Interfaces
  5. Enumeraciones
  6. La sentencia package
  7. La sentencia import
  8. El import static

- Declaración de Clases -

¿Como se declara una clase?, veamos un ejemplo de una clase:

1. public class MiClase { }
2. class MiOtraClase { }

En sus formas más simples así se declaran las clases. ¿Que vemos aquí? en la linea 1, vemos dos palabras, public y class; estas son palabras reservadas (keywords) que obviamente tienen un significado.

La palabra public en Java pertenecen al conjunto de palabras que hacen parte de los modificadores de acceso, cuya explicación no abordaremos en este post.

La palabra class, es la quen indica al compilador que se esta declarando una clase.

Seguido de estas dos palabras resevadas vemos la palabra MiClase, que en realidad es una palabra aleatoria que elegi para parle un nombe a mi clase. Hay que tener en cuenta que para darle un nombre a una clase, no hay que abusar del UNICODE, es decir, Java solo soporta para el nombrado de Clases y variables las siguientes reglas:
  • Puede contener cualquier cantidad de caracteres, con caracteres me refiero solo a: Letras (el conjunto de MAYUSCULAS y minusculas), Numéros, el simbolo peso ( $ ) y el guion de piso ( _ ).


Preparandose para el SCJP 6

Ya conociendo los objetivos del examen, ya sabemos que temas abordar en el estudio. Lo que escriba aquí es la copulación de material recolectado en Internet. Así que empezamos.

Antes de iniciar

Yo asumo que la gente que esta a punto de leer esto, tiene cierto conocimiento del lenguaje Java, esto no es un tutorial para principiantes, ni tampoco sirve para iniciar su aprendizaje en el lenguaje Java; así que antes de iniciar aquí, recomiendo leer algún libro de inicialización de Java y luego volver aquí.

Organización

Hmm, voy a experimentar algo, y creo que no es la mejor forma de organizar la temática, pero igual lo intentare. La organización que voy a llevar es el mismo orden que Sun organiza sus objetivos, es algo complicado ya que para un usuario regular en conocimiento del lenguaje Java, no podrá llevar bien el hilo, pero tratare en todo lo posible en ser lo más explicito y significativo en todos los conceptos que se aborden.

Nota

Para que este post no sea muy extenso, dividiré cada un de los objetivos y sub-objetivos en post diferentes, y así llevar un orden (aunque el ultimo post sea el que salga mas reciente, por lo de las fechas de publicación)

Thursday, December 06, 2007

JSP

No sabes nada de JSP?

Super Metroid

Remake en Java usando LWJGL

SCJP

Sun Certified Programmer for the Java Platform, Standard Edition 6 (CX-310-065)

[6 = Mustang]

¿Qué Estudiar? y ¿Como estudiarlo?

Muy sencillo, miramos los objetivos del examen que estan originalmente en la pagina de Sun.
(podemos verlos haciendo clic aqui)

Que dicen lo siguiente:

Objetivos del Examen

Sección 1: Declaración, Inicialización y Alcance.

  • Desarrollar codigo que declare clases (incluyendo clases abstractas y todas las formas de clases anidadas), interfaces, y enumeraciones, e incluir el uso apropiado de sentencias de paquetes e importaciones (incluyendo importaciones estaticas)
  • Desarrollar codigo que declare una interface. Desarrollar codigo que implemente o extienda una o mas interfaces. Desarrollar codigo que declare una clase abstracta. Desarrollar codigo que extienda una clase abstracta.
  • Desarrollar codigo que declare, inicialice y use datos primitivos, arreglos, enumeraciones y objetos, de las formas estaticas, de instancia y variables locales. Ademas, usar identificadores legales para el nombre de variables.
  • Desarrollar codigo que declare metodos estaticos y no estaticos, y si es apropiado, usar nombres para metodos que usen el standar para el nombrado de los JavaBeans. Ademas desarrollar codigo que declare y use una lista de argumentos variables.
  • Dado un codigo de ejemplo, determinar si un metodo esta correctamente sobre-escrito o sobre-cargando a otro metodo, e identificar valores de retorno legales (incluyendo covariantes de retorno), para un metodo.
  • Dado un conjunto de clases y superclases, desarrollar constructores para uno o mas de esas clases. Dado una declaracion de clase, determinar si un constructor por defecto sera creado, y si es asi, determinar el comportamiento de ese constructor. Dado un listado de clases anidadas y no anidadas, escribir codigo que inicialice esas clases.

Sección 2: Control de Flujo

  • Desarrollar codigo que implemente una sentencia if o switch, e identificar los tipos de argumentos legales para estas sentencias.
  • Desarrollar codigo que implemente todas las formas de ciclos e itereaciones, incluyendo el uso del for, el enhaced for (for-each), do, while, labels, break y continue; y explicar el valor tomado por el las variables contadoras durante y despues de la ejecucion del ciclo.
  • Desarrollar codigo que haga uso de asserciones, y distinguir el uso apropiado de las asserciones.
  • Desarrollar codigo que haga uso de excepciones y clausulas de maneno de excepciones (try, catch, finally). y declarar metodos y sobre-escribir metodos que lancen excepciones.
  • Reconocer el efecto de una expcetion arising en un punto especifico de un fragmento de codigo. Note que las excepciones pueden ser del tipo runtime exception, checked exception o un error.
  • Reconocer situaciones que resultara alguna de las siguientes lanzamientos: ArrayIndexOutOfBoundsException, ClassCastException, IllegalArgumentException, IllegalStateException, NullPointerException, NumberFormatException, AssertionError, ExceptionInInitializerError,StackOverflorError o NoClassDefFoundError. Entender cual de estas son lanzadas por la maquina virtual y reconocer situaciones en cual otras deberian ser lanzadas programaticamente.

Sección 3: Contenido de API

  • Desarrollar codigo que use clases envolvente de primitivos (como Boolean, Character, Double, Integer, etc.) y/o autoboxing & unboxing. Discutir las diferencias entre las clases String, StringBuilder y StringBuffer.
  • Dado un escenario donde se involucra navegacion por el sistema de archivos, leectura de archivos, escritura de archivos, o interaccion con el usuario, desarrollar la correcta solucion para el uso de las siguientes clases (algunas veces en combinacion), del paquete java.io: BufferedReader, BufferedWriter, File, FileReader, FileWriter, PrintWriter y Console.
  • Desarrollar codigo que serialize y/o des-serealize objetos usando las siguientes APIs del paquete java.io: DataInputStream, DataOutputStream, FileInputStream y Serializable.
  • Usar la API estandar de J2SE en el paquete java.text para formatear correctamente o parsear fechas, numeros y valores de moneda para localidades especificas; y, dado un escenario, determinar los metodos apropiados para usar si se desea usar una localidad por defecto o un localidad especifica. Describir el proposito y uso de la clase java.util.Locale.
  • Escribir codigo que use la API estandar de J2SE de los paquetes java.util y java.util.regex, para formatear o parsear cadenas o flujos. Para cadenas, escribir codigo que use las clases Pattern y Matcher y el metodo String.split. Reconocer y usar patrones de expresiones regulares para el matching (limitado a: . (punto), * (estrella), + (más), ?, \d, \s,\w, [], () ). El uso de *, +, y ? sera limitado a cualificadores greedy, y el operador de parentecis sera solo usado como meganismo de agrupacion y no para capturar contenido durante el matching. Para flujos, escribir codigo usando las clases Formatter y Scanner, y los metodos PrintWritter.format/printf. Reconocer y usar parametros de formateo (limitado a: %b, %c, %d, %f, %s) en formato de cadenas.

Sección 4: Concurrencia

  • Escribir codigo que defina, instancie, e inicie nuevos hilos usando java.lang.Thread y java.lang.Runnable.
  • Reconocer el estado en el cual un hilo puede existir, e identificar las maneras en la cual un hilo puede pasar de un estado a otro.
  • Dado un escenario, escribir codigo que haga el uso apropiado del bloqueo de objetos para protejer variables estaticas o de instancia de los problemas de acceso concurrente.
  • Dado un escenario, escribir codigo que haga el uso apropiado de wait. notify, o notifyAll.

Sección 5: Conceptos OO

  • Desarrollar codigo que implemente tight encapsulation, loose coupling, y high cohesion en clases, y describir sus beneficios.
  • Dado un escenario, desarrollar codigo que demuestre el uso del polimorfismo. Ademas, determinar cuando el casteo sera necesario y reconocer errores de compilacion vs runtime realacionados al casteo de referencia de objetos.
  • Explicar el efecto de modificadores sobre la herencia con respecto a constructores, variables de instancia o estaticas, y metodos de instancia o estaticos.
  • Dado un escenario, desarrollar codigo que declare y/o invoque metodos sobre-cargados y codigo que declare y/o invoque la superclase, o constructores sobre-cargagos.
  • Desarrollar codigo que implemente relaciones "is-a" y/o "has-a".

Sección 6: Colecciones / Genericos

  • Dado un escenario, determinar cuales clases de colecciones y/o interfaces deberian ser usadas para implementar apropiadamente ese diseño, incluyendo el uso de la interface Comparable.
  • Discutir entre el correcto e incorrecto sobre-cargado de los correspondientes metodos hashCode y equals, y explicar la diferencia entre == y el metodo equals.
  • Escribir codigo que use versiones genericas de la API Collections, en particular las interfaces Set, List, y Map, y su implementaicon de clases. Reconocer la limitacion de las API no genericas Collection y como refactorear codigo para usar versoines genericas. Escribir codigo que use las interfaces NavigableSet y NavigableMap.
  • Desarrollar codigo que haga el uso apropiado del tipo de parametros en la declaracion de classes/interfaces, variables de instancia, argumentos de metodos, y tipos de retorno; y escribir metodos genericos o metodos que usen tipos wildcards y entender la similitudes y diferencias entre estas dos aproximaciones.
  • Usar capacidades del paquete java.util para escribir codigo que manipule una lista: ordenandola, realizar una busqueda binaria, o convertir la lista a un arreglo Usar capacidades del paquete java.util para escribir codigo que manipule un arreglo: ordenandolo realizar una busqueda binaria, o convertir un arreglo a una lista. Usar las interfaces java.util.Comparator y java.lang.Comparable para afectar el ordenamiento de listas y arreglos. Ademas, reconocer el efecto de "la organizacion natural" de clases envolvente de primitivos y java.lang.String sobre un ordenamiento.

Sección 7: Fundamentos

  • Dado un codigo de ejemplo y un escenario, escribir codigo que use el apropiado uso de los modificadores de acceso, declaracion de paquetes, y sentencias de importanciones para interactuar con (a traves del acceso o herencia) el codigo de ejemplo.
  • Dado un ejemplo de una clase y una linea de comando, determinar el comportamiento esperado at runtime.
  • Determinar el efecto sobre referencias de objetos y valores primitivos cuando ellos son pasados a los metodos que realizan asignaciones o otros operadores de modificacion sobre los paremetros.
  • Dado un codigo de ejemplo, reconocer el punto en el cual un objeto se vuelve eligible para el recolector de basura, determinar que esta y no esta garantizado por el sistema de recoleccion de basura, y reconocer el comportamiento del metodo Object.finalize().
  • Dado el nombre fully-qualified de una clase que esta desplegada dentro y/o fuera de un archivo JAR, construir la apropiada estructra de directorio para esa clase. Dado un codigo de ejemplo y un classpath, determinar si el classpath permitira que el codigo compile exitosamente.
  • Escribir codigo que correctamente aplique el usoapropiado de operadores incluyendo operadores de asignacion (limitado a: =, +=, -=), operadores aritmeticos (limitados a: +, -, *, /, %, ++, --), operadores de relacion (limitados a: <, <=, >, >=, ==, !=), el operador instaceof, operadores logicos(limitados a: &, |, ^,!, &&, ||), y el operador condicional ( ? : ), para producir el resultaod deseado. Escribir codigo que determine la igualdad de dos objetos o dos primitivos.

Sabiendo esto, ya estaremos mentalizados que puede salir en ese examen. (bastante, pero sabemos que nada fuera de este limite nos podran preguntar.)

Ahora nos queda, ¿que estudiar? Pues, recomendaria lo que muchas personas recomiendan, leer muchos libros de certificación (en especial el de Kathy Sierra) y realizar la cantidad de mock Exams posibles. Lastimosamente, todo el material que he visto esta todo en ingles, y muchas personas me han comentado que realize algo asi como una version en español. Pues es eso exactamente la idea que intento hacer aqui.

Wednesday, May 02, 2007

Pertenencias

Intro

Sé que uno aquí escribe cosas de algún tema interesante para el publico en general, pero hoy que decido hacer un inventario del desorden que tengo en el disco duro, y en dvds, se me ocurre hacer un ese listado en el blog, ya que muchas veces se me han perdido, borrado los listados que he hecho en formatos como: texto plano, o alguna hoja de calculo. Espero que aquí no se me pierda jejje.

El Desorden

Ordenamiento: Primero que encuentro, primero que apunto.

Primeros cds quemados

Descripción: estos cds no fueron exactamente los primeros que queme, sino mas bien los que me han durado un poquito ya que con ellos hice el primer intento de ordenamiento de datos. El contenido de estos cds esta como que jodon de saber, ya que tendria que meter uno a uno y ver cada una de sus carpetas, en un futuro editare esta entrada para colocar su contenido. Es un poco trivial su id, pero aja que se va hacer. Generalmente lo que hay en el contenido de estos cds es Software y juegos.
  • cd 01
  • cd 02
  • cd 03
  • ...
  • cd 30

Colección de videos musicales

Descripción: esta fue otro de mis intentos de colección. Aquí recopile los videos musicales mas populares del momento (osea MTV) y no tan populares. También queme muchos videos clásicos que siempre hay que tener para recordar en ciertos momentos. El contenido de estos cds (artista – video) creo que si la tengo, digo creo porque según queme un listado de los contenidos cada 10 cds. Espero pronto colocar su contenido. Otra cosa, algunos cds ya se estan muriendo y su contenido es irrecuperable. =(

  • V01
  • V02
  • V03
  • ...
  • V77
  • Music Video's 01
  • Music Video's 02
Los Roms

Descripción: A quien no le sonó la idea de jugar tu video juego favorito en la computadora. ¿Es eso posible? Rta: Si, y como van las cosas en un futuro lejano también. Afortunadamente en cada uno de los cds existe un listado de su contenido, es algo extenso.

  • Nintendo 64 - a
  • Nintendo 64 - b
Aero Gauge, Banjo-Tooie, Conker's Bad Fur Day, Evangelion, International Super Star Soccer 98, Mario Party 3,Mortal Kombat Trilogy, Paperboy 64, Perfect Dark 64, Pilotwings 64, Pokemon Snap,Pokemon Stadium, Power Rangers Lightspeed Rescue,Puzzle Bobble 64 (J),Quake,Quest 64, Rampage World Tour,Rayman 2 - The Great Escape,Ridge Racer 64,RoadRash 64, San Francisco Rush,Shadowgate 64 - Trials of The Four Towers, Snow Speeder(J), Snowboard Kids,Star Fox 64,Star Soldier,Star Wars - Racer, Star Wars - RogueSquadron, Super Bowling 64, Super Smash Bros, Supercross 2000, Tetris 64 (J), The Legend of Zelda - Majora's Mask, The Legend of Zelda - Ocarina of Time, Tom Clancy's Rainbow 6, Tony Hawks 64, Top Gear Rally 2, Toy Story 2, Turok - Rage Wars, Turok 1 - Dinosaur Hunter, Turok 2 - Seeds of Evil, Turok 3 - Shadow of Oblivion, V-Rally 99, Vigilante 8, Virtual Chess 64, Virtual Pool 64, Wave Race 64, WCW Mayhem, Wipe Out, WWF Attitude, Xena Warrior Princess - The Talisman of Fate

  • Nintendo 64 - c
  • Neogeo - a
  • Game boy advance - a
  • Game boy advance - b
  • Game boy advance - c
Sistemas Operativos

Descripción: algunos cds con algún sistema operativo que alguna ves instalé, pero con el tiempo ya dejo de ser actualizado para convertirse en downdate.


  • Linux - Ubuntu 5.04 (shipit 2)
  • Linux - Ubuntu 5.10 (shipit)
  • Linux - Ubuntu 6.10 "Edgy Eft" (dvd)
  • Linux - Ubuntu 6.10 "Edgy Eft" (3 veces)
  • Linux - Kubuntu 6.10 "Edgy Eft"
  • Linux - KNOPPIX 3.3
  • Linux - KNOPPIX 5.1.0 (dvd)
  • Linux - SuSE Linux 10.0 (5cds)
  • Linux - Xubuntu 6.10 "Edgy Eft"
  • Linux - Xubuntu 7.04
  • Mandrake Linux 9.1 (3cds)
  • Mandriva 2006
  • Red Hat Linux/Intel 6.1 (Cartman)
  • Red Hat Linux/Intel 7.0 (Guinness) (3cds)
  • Windows 2003 Server Enterprise Edition
  • Windows 2003 Server Standar Edition
  • Windows Longhorn 4015 (ni idea)
  • Windows XP Pro - SP2 (en)
  • Windows XP Professional
  • Windows XP Service Pack 1 - 6 - 1 (home - pro - windows 98 2nd ed)
Cds Varios

Descripción: En los siguientes cds es de contendio variado, que va desde musica, Software, etc.


  • Albums2 (blink182, bonjovi, britney spears, KoRn ) [mp3]
  • 3D Max 4.02 (sp)
  • Borland C++ Builder 5.0
  • hentai (comix)
  • Microsoft DirectX 8.1 SDK
  • Microsoft DirectX 9.0 SDK
  • Microsoft Encarta 2006
  • Microsoft Office 97
  • Microsoft Office XP (cd 2 media)
  • Microsoft Windows 98 - Microsoft Visual 6.0
  • N64 Roms - Old Games (¿cuales juegos?)
  • NetBeans 5.5 (shipit)
  • Solid Edge V11 (sp)
  • Visual Studio .NET (7 cds)
Tutoriales

Descripción: el titulo dice todo.

  • DVD1
Digital Tutors - Backwater Bunch Module I - IV
Lynda.com - Getting Started with CorelDRAW Graphics Suite 12
  • DVD2
3DMax - Building a Airplane
Digital Tutors - Backwater Bunch Module V
Lynda.com - CINEMA 4D R9.5 Essential Training
Lynda.com - JavaScript
Lynda.com - PHP Essential Training
  • DVD3
Digital Tutors - Introduction To XSI - Second Edition
Digital Tutors Non-linear Animation with Maya Trax
Lynda.com - Carrara 5 Essential Training
Paint Shop Pro X Essential Training
  • DVD4
Character Setup - Maya
Curso Cisco
Digital tutors Female Android Modeling In Maya
Digital tutors fundamentals.dynamics.particles.and.fields cd2
Digital Tutors - Maya Unlimited Hair
XXX

Descricpion: colección de videos pornograficos que en ninguna coleccion deben faltar.

  • DVD1
BangBus: Alex, April, Crissy, Gloria, Isabelle, Jenny, Julia, Kate (a), Kate, Kelly, Kiki, Kobi, Margarita, Maritza, Melissa, Monica, Naomi, Pamela, Rebecca, Rene, Sarah, Sasha, Tracy, Sierra.

MILF: Addison, Cherokee, Harley, Lita, Mandy, Montana, Satine, Tiffany, Sonia, Xenia.

My Friends Hot Mom: Ms. Vette, Monroe.

Otro: Video de Luly Bosa, y otro ke ni idea.
Misc

Descripción: Estos cds los pongo aqui porque su contenido es variado y aja, el propio cd para liberar espacio del disco como sea.

  • DVD1
Colombia Sex [xxx]
Gattaca [movie]
hack.5 (ep1-ep5) [Serie Internet]
Pure Pwnage (s01e01-s01e11) [Serie Internet]
Wargames [movie]

PlayStation

  • MetalGear Solid (2cds) {mejor juego}




Tuesday, April 24, 2007

Probando...

Si entrasteis a este blog, y lees este mensaje sin ninguna otra entrada es porque fuiste el primero en entrar (o tal vez no), felicitaciones.

Lastimosamente en esta primera entrada que hago no escribo nada que valga la pena, pero pronto lo haré.

Gracias por visitar y hasta la próxima entrada.