jueves, 6 de diciembre de 2007

Casting de wikis en PHP

Tras varios días, por fin he terminado (hace breves instantes) el casting realizado entre los wikis escritos en PHP. El proceso ha consistido principalmente en un estudio somero del código fuente y la documentación de cada wiki, pues la calidad de la arquitectura externa era muy similar en todos los casos. El proceso me ha resultado más sencillo de lo que en un principio había pensado, aunque no por ello fácil. De hecho en algunos casos encontrar algo de documentación me ha requerido algo de tiempo. Y ya sin más preámbulos, paso a comentar los resultados del estudio, en orden alfabético.

Bitweaver


En principio parece el mejor wiki de todos los escritos en PHP y, además, con bastante diferencia. Dicha diferencia se debe principalmente en el hecho de que está implementado basándose en el patrón de diseño Modelo-Vista-Controlador. Además de lo apropiado del patrón para el problema que plantea el desarrollo de wikis, están todas las ventajas inherentes al uso de patrones de diseño. Creo que a estas alturas, hablar de dichas ventajas sería prolongar innecesariamente esta entrada, por lo que remito a aquellos que las desconozcan a alguno de los muchos sitios web especializados en el tema.
Por otra parte la documentación me ha parecido bastante buena. En principio parece extensa y de calidad. Además, los ficheros están autodocumentados con un sistema parecido al javadocs.
Además el código es orientado a objetos, lo que, en mi opinión, supone una ventaja importante a la hora de trabajar con el wiki (suponiendo, claro, que el diseño sea apropiado).
Por todo ello, si tuviera que quedarme con un wiki escrito en PHP sería con éste sin lugar a dudas.

DekiWiki


Se trata de un wiki externamente muy interesante, aunque su arquitectura interna me ha parecido un poco extraña. Tiene varias características muy originales y es un buen candidato, bien documentado además, pero me lo pensaría un poco si tuviera que trabajar con él.

MediaWiki


Probablemente ha sido el wiki que ha contado con mejores recursos para su desarrollo (ojo porque no hablo de recursos económicos necesariamente) y tiene algunas características en las que sobrepasa con creces a sus competidores, como por ejemplo su interfaz traducida a 100 lenguas (el siguiente debe estar traducido a 20 ó 30). Sin embargo su arquitectura es bastante farragosa y no está especialmente bien documentado. A simple vista da la impresión de ser un sistema diseñado ad hoc en su día para unas circunstancias concretas y al ir creciendo no se ha modificado, sino más bien parcheado.
Por ello,no creo que sea la mejor opción para trabajar con él.

PhpWiki


Este wiki tiene una arquitectura un tanto extraña. Su sitio web es un poco pobre en cuanto a recursos y la documentación del sistema es bastante mejorable.
No creo que sea tampoco una opción interesante puestos a trabajar como desarrollador sobre él.

TikiWiki


Se trata de un wiki con una documentación extensísima, que dispone además de un buen sitio web (aunque algún diagrama se agradecería). En principio parece una opción más "apetecible" que algunas de las anteriores, pero lo considero peor que Bitweaver.

WikkaWiki


Se trata de un wiki muy ligero y rápido, que dispone de bastante documentación y de bastante calidad. Está implementado utilizando el paradigma de orientación a objetos lo que lo convierte en un candidato serio, pero no tanto como Bitweaver.

WikyBlog


Este wiki está implementado usando también el paradigma de la orientación a objetos, pero me parece perfectamente descartable debido a que no dispone de documentación alguna.


Por todo lo dicho considero que el wiki más interesante escrito en PHP es Bitweaver y, de momento, es el único que sigue en el proceso de selección.
Por tanto, las listas quedarían así:

C#/ASP.NET



  • ScrewTurn wiki


JAVA



  • Daisy

  • JAMWiki

  • JSPWiki

  • SnipSnap

  • VQWiki

  • XWiki

  • yawiki


PHP



  • bitweaver


Ahora "sólo" resta hacer lo mismo con los wikis escritos en JAVA, cosa que ya de por si es más complicada puesto que están a un nivel muy similar entre ellos.
¡A trabajar!

No hay comentarios: