sábado, 28 de marzo de 2009

Wireless Broadcom 802.11b/g en Ubuntu 8.10

Pues hoy quiero compartir como hacer para que la tarjeta wireless funcione en Ubuntu 8.10, en mi caso es una Broadcom 802.11b/g la cual tiene licencia privativa para los drivers, esto es un problema si estas en Ubuntu.

Para solucionar este problema se ha creado un driver generico, este hace funcionar tu tarjeta sin ningun problema.

Pasos a seguir:
1. Sistema
2. Administracion
3. Gestor de Paquetes Synaptic
4. Buscamos el paquete b43-fwcutter

5. Aplicamos Cambios
6. Reiniciamos

Listo, mi wireless inicio a funcionar :P


Exitos!!!

viernes, 27 de marzo de 2009

Manejo de Archivos en Java

Hoy quiero compartir algunos conceptos basicos para el manejo de archivos en java :

Los fundamentos de flujos

Si se desea procesar los datos en un archivo existente, se debe:

1. Abrir el archivo
2. Leer o introducir los datos en las variables, un elemento a la vez
3. Cerrar el archivo cuando terminemos de trabajar con el.

Si se desea transferir algunos datos de ciertas variables a un archivo, se debe:

1. Abrir el archivo
2. Extraer o escribir nuestros elementos en la secuencia requerida.
3. Cerrar el archivo cuando terminemos de trabajar con el.


Entonces un archivo es una serie de líneas de texto, y cada una compuesta por un número de caracteres. Cada línea termina con un carácter de fin de línea (\n)



Las clases de E/S en Java

Las clases de flujos están organizadas en forma jerárquica. A continuación las clases mas útiles.

1. Reader
1.1 BurreredReader
1.2InputStreamReader
1.2.1 FileReader

2. Writer
2.1 PrintWriter
2.1.1 FileWriter


Las clases BufferReader y PrintWriter

Para leer y escribir líneas de texto, se utilizan:

* El método readLine de BufferedReader.
* Los métodos print y println de PrintWriter.


Agloritmo a seguir para la Salida de Archivos

ArchivoDemo1.java
Abre el archivo “textoSalida.txt”
Obtiene una cadena del area de texto
Escribe la cadena en el archivo
Cierra el archivo

Algoritmo archivo de Salida de Archivos

ArchivoDemo2.java
Introduce un nombre de archivo proveniente del campo de texto.
Abre un archivo con ese nombre
Introduce las lineas del archivo y las anexa al área de texto siempre y cuando no se llegue al fin del archivo.
Cierra el Archivo.


Hice tres clases en java para el manejo de archivos, ArchivoDemo1.java; ArchivoDemo2.java; FileDialogDemo.java ; Por aqui les dejo el link de descarga: Manejo Archivos Java


Exitos!!



miércoles, 18 de marzo de 2009

Compilador Vs Intérprete

Hoy escribire algunas diferencias entre un compilador y un intérprete, las cuales a mi parecer son:

• Un programa compilado puede funcionar por si solo mientras que un código traducido por un intérprete no puede funcionar sin éste.

• Un programa traducido por un intérprete puede ser ejecutado en cualquier máquina ya que, cada vez que se ejecuta el intérprete, tiene que compilarlo.

• Un archivo compilado es mucho más rápido que uno interpretado.

domingo, 15 de marzo de 2009

What Drives Design?

Hoy dare un resumen de una presentacion que encontre en InfoQ la cual se titula What Drives Design?  la expositora fue Rebecca Wirfs-Brock, y da un enfoque sobre que deberia dirigir el diseño de software, se enfoca principalmente en RDD, aunque se mencionan otros.... a continuacion una sintesis del video:

What  Drives Design

Definicion de Driven: motivado para tener o necesitar una compulsiva calidad

RDD Responsability Driven Design
Para esta forma de manejar el diseño, existen métodos abstractos para construir en base a bloques: 
1) Add: un Objeto

2) Remove: Un objeto

3) Do: un Bloque

Principios de RDD

  • Maximizar Abstracción: distinción entre la data y el comportamiento
  • Comportamiento Distribuido: control delegado en arquitectura
  • Flexibilidad: objetos que pueden ser cambiantes

Receta para diseñar sw complejo:

- Identificar funcionalidad e info relacionada: Definir num objetos y componentes
- Decidir que funcionalidad e información pertenece a cada elemento
- Decidir que elementos se comunicarán con msj 
- Diseñar clases que cumplan con lo anterios

 
Nota: Contexto es importante para diseñar con responsabilidad RDD 

En RDD Diseño de Construcciones, se pueden clasificar algunos elementos como lo son:

  • Role: set de responsabilidades
  • Responsabilidad: obligación por cumplir una tarea
  • Colaboración: interacción entre elementos de diseño (Objetos / Roles)
  • Contrato: acuerdo de los términos de colaboración

El Modelo de Responsabilidad, Es una demostración de cómo un grupo de componentes u objetos trabajando juntos por una tarea especifica. 

Estereotipos de Roles

(cada uno tiene una responsabilidad)

Information Holders : conocen y dan a conocer info
Structurer: mantiene relación entre info y objetos
Interfacer: Traduce información y peticiones
Service Provider: Realiza trabajo en demanda
Coordinator: realiza eventos mecánicos (semáforo) 
Controller: toma decisiones q afectan otras acciones u eventos (policía)

Nota: Tanto el controller como el coordinator, son controles de diseño 

XX- Driven Design 

Algunas caracteriticas de elementos que pueden guiar el diseño son: 

FDD Feature Driven Design (Feature by Feature )
 Walktrhough -> Desing -> Design Inspection -> Code -> Code Inspection
 Diseña la primera semana, se codifica en la segunda 

TDD Test Driven Design (Stroy by Story)
 Text -> Code -> Run Test -> Code pass the test
 Diseño va evulucionando mediante historias 

BDD Behaivor Driven Design
 Dar un contexto (Give a context)
 Cuando ocurre un evento (When a event ocurre)
 Luego asegura resultados (Then ensure some outcomes)

DDD Domain Driven Design
 Objeto Entidad
 Valor del Objeto 

CDD Contract Driven Design
 Aceptar valores
 Retornar valores
 Errores de excepcion
 Pre y Post condiciones 

RDD Resposability Driven Design
 Contactos como interface del diseño