rss resume / curriculum vitae linkedin linkedin gitlab github twitter mastodon instagram
Documentando
Jun 19, 2005

No hay nada mí¡s agradable que utilizar tu aplicacií³n para realizar tus tareas, y ahora que es momento de documentar MonoUML que mejor oportunidad que documentar tu aplicacií³n con tu misma aplicacií³n X-).

Entre Miguel Huerta y yo hemos terminado un demo que estarí¡ contenido en la documentacií³n oficial de MonoUML (y que ahora sí³lo esta para un documento del Concurso de Creatividad de mi U) que busca como objetivo mostrar las maravillas de Mono y MonoUML, para esto hicimos 4 clases en 4 diferentes lenguajes, una clase por lenguaje, así­ de esta forma tenemos una clase escrita en Boo, una en Java, una en VB.NET y otra en C#.

La idea de esto crear una aplicacií³n (muy breve en verdad) que esta realmente Orientada a Objetos y sirva como ejemplo para ser utilizada por MonoUML, en pocas palabras, un ejemplo mí¡s real. ¿Quí© hace la aplicacií³n? Pues calcula el valor mí¡ximo, mí­nimo y medio de una matriz de níºmero fraccionarios.

Es decir, algo como esto:

Claro que no podí­a faltar un ejemplo de diagramas de caso de uso, este es de un mí©todo de la clase escrita en VB.NET, este diagrama serí¡ base para cuando implementemos los Diagramas de Secuencia y Diagramas de Colaboracií³n, para hacer sus correspondientes ejemplos.

El cí³digo no es tan complejo en realidad:


Public Sub Calculate ()
  Dim sum As FractionalNumber
  sum = new FractionalNumber (0, 0)
  _maximum = _matrix (0, 0)
  _minimum = _matrix (0, 0)
  Dim i As Integer
  For i = 0 To _rows - 1
    Dim j As Integer
    For j = 0 To _columns - 1
      sum = sum.Addition (_matrix (i, j))
      If _matrix (i, j).GreaterThan (_maximum) Then
        _maximum = _matrix (i, j)
        End If
        If _matrix (i, j).LessThan (_minimum) Then
          _minimum = _matrix (i, j)
        End If
    Next
  Next
  _medium = sum.Division (new FractionalNumber (_rows * _columns, 1))
End Sub

Ahora con este documento que se escribio, me he dado cuenta de varias cosas:

  • No se porque la gente programa en Visual Basic .NET, entiendo a aquellos que vienen de MS Windows con el viejo Visual Basic, pues ahí­ en realidad ni programabas sí³lo arrastrabas "componentes", ¡pero vamos! muchos de los que comienzan en .NET prefieren VB.NET, lo bueno es que los que comienzan con mono se crean mí¡s carí¡cter con C# (y si fuiste desarrollador Java ¡que mejor!). Di no a VB.NET
  • Boo es muy parecido a Python y es sencillo de aprender, pero no me gusta, no me agrada la idea de que los bloques se indiquen por indentacií³n, pero bueno, cada quien tiene sus gustos.
  • La suma de Java + IKVM + mono posiblemente pronto sea algo que los programadores Java tomen en cuenta.
  • MonoUML necesita mejoras de usabilidad, hay que trabajar duro.
  • Si que hace falta un generador de documentacií³n para MonoUML, unos tres clicks y tener toda tu documentacií³n lista.
  • Creo que la solucií³n al FN+Pet Sis (en portí¡tiles Dell) = Congelamiento esta en un post viejo de BarraPunto.

Me emociona ver que ahora se pueden hacer cosas realmente íºtiles, claro, con un poco de hacking ;) pero se pueden. Ya estamos cumpliendo uno de los viejos objetivos que algíºn dí­a Rodolfo y yo nos plantemos: Diagramas de Casos de Uso y Diagramas de Clases.

Debido a que el logo del Mono de MonoUML sale caro para hacer una serigrafí­a, decidí­ hacer un logo mí¡s sencillo, el resultado me gusto pero aun así­ necesita un poco mí¡s de pincelado para mejorarlo y que no se vea tan cuadrado en algunos aspecto, lo harí© con mí¡s calma pronto.


Back to posts