8 minutos de lectura ( 1519 palabras)

Porqué las universidades han de tener en cuenta a Joomla

Porqué las universidades han de tener en cuenta a Joomla

Si tuviera que volver a la docencia universitaria, seleccionaría Joomla como plataforma web para las tareas de los estudiantes. Seguidamente explico el por qué...

 

En los últimos 25 años he estudiado o enseñado en tres universidades diferentes, he visto, y vivido, una transición a través de las tecnologías actuales para enseñar el desarrollo de software. En particular, los departamentos eligieron Smalltalk, C++ y Java para enseñar programación y desarrollo orientado a objetos. La estandarización de las tecnologías OO permitirá nuevas prácticas que surjan en el lugar de trabajo: los patrones de diseño, procesos ágiles, refactorización, desarrollo basado en pruebas, etc. Estas son las disciplinas de la vida real que los estudiantes deben aprender, por lo que la elección de una escuela tecnológica es importante.

Por supuesto, en los últimos quince años, una cantidad considerable del desarrollo de software se ha desplazado a la web. El desarrollo web es diferente, y tiene temas y disciplinas que se extienden más allá del ámbito tradicional de la informática. Una experiencia de aprendizaje bien equilibrada debe incluir ejercicios prácticos con las tecnologías web y la exposición de los temas relacionados como la seguridad y la internacionalización. Tanto los estudiantes como la industria y empresas, esperan que estas tecnologías se desarrollen, pues todas ellas se podrían beneficiar.

Hace cinco años me cambié al desarrollo web a tiempo completo. Mi selección de Joomla frente a otros CMS fue deliberada y con conocimiento de mi pasado. Quería una plataforma CMS que me permitiera aplicar las disciplinas que aprendí durante mi carrera de ingeniería de software. Joomla era la opción lógica para alguien como yo. Si tuviera que volver a la docencia universitaria, seleccionaría Joomla como plataforma web para las tareas de los estudiantes. He aquí mis razones:

1. Código abierto (open source)

Esto es una obviedad. Para utilizarse en las universidades, cualquier tecnología candidata debe tener una base de código abierto para que los estudiantes puedan trabajar libremente con ella.1. Código abierto (open source)

2. Orientado a Objetos

En el campo de la ingeniería de software, la falta de OO es un ultimátum. El diseño orientado a objetos es el sistema que se enseña la encapsulación de datos, la abstracción, la herencia, el polimorfismo, la cohesión ante el acoplamiento, la colaboración y las dependencias de los objetos, la reutilización de código, y todos los otros principios esenciales de un buen diseño de software. Además, OO es el factor propicio para algunas de las disciplinas más importantes de los últimos veinte años. Necesitamos un sistema orientado a objetos para la enseñanza...

  • Patrones de diseño: soluciones abstractas reutilizables a los problemas comunes del diseño.
  • Unidad de Pruebas y desarrollo Test-Driven: Aumento de una serie de pruebas para guiar el desarrollo de software e identificar los cambios de código que rompen el comportamiento previamente probado.
  • Refactorización: Mejorar la capacidad de mantenimiento del software. (Si, se puede refactorizar código de procedimiento, pero gran parte de refactorización la asume OO).
  • Principios de diseño: El uso de objetos nos permite descubrir y practicar los principios de diseño probados, como "abierto-cerrado" "sustitución Liskov" y "dependencia de la inversión".

Dentro de un mercado de CMSs significativamente fragmentado, la lista de candidatos se reduce drásticamente cuando exigimos de código abierto y orientado a objetos. De los CMS que cumplen estos dos criterios importantes, Joomla es el más desarrollado y tiene una gran comunidad de desarrolladores y usuarios finales.

3. Soporte IDE

Cualquier plataforma de desarrollo para los estudiantes debería permitir la depuración, así como la instalación en un ordenador portátil. La tecnología web se acomoda.

Profesionales del software utilizan IDE (Integrated Development Environment), y múltiples IDEs soportan el desarrollo de Joomla. Por ejemplo, PhpStorm, un IDE comercial que es gratuito para uso en el aula, ofrece la depuración de páginas web y aplicaciones web, se integra con los sistemas de control de versiones como GitHub, y ofrece herramientas de codificación de gran alcance como la refactorización. Otros IDEs como Eclipse y NetBeans ofrecen una funcionalidad similar.

Además, dado que los servidores web se pueden instalar y ejecutar en un ordenador portátil, cada estudiante puede tener su propia instalación y entorno de desarrollo dedicado.

4. Modelo-Vista-Controlador

El framework de Joomla se basa en el patrón clásico MVC - algo sorprendentemente ausente en los CMS similares. Esta separación permite a los desarrolladores de aplicaciones para usuarios, centrarse en las tecnologías de la interfaz pública (front-end) como HTML, CSS y JavaScript. El desarrollo de la interfaz pública se separa de los problemas del servidor más profundos. Utilizando Joomla como plataforma de enseñanza, brinda la oportunidad de ofrecer un plan de estudios de diseño web o clases conjuntas con el departamento de artes gráficas. Joomla se ha ganado la reputación de ser un CMS de diseño amigable, dada su facilidad y flexibilidad, no corriente, de cambiar y reorganizar el diseño visual a través de módulos y plantillas.

5. Control de Acceso/Seguridad

La seguridad es un concepto muy importante para enseñar en la era de Internet. Joomla es excepcionalmente fuerte aquí. Su ACL nativo (Access Control List) integra un sistema configurable de usuarios, grupos y permisos. Los modelos de seguridad establecidos, como RBAC (Role-Based Access Control) pueden ofrecer experiencia sobre el uso del ACL de Joomla.

6. Internacionalización

El desarrollo basado en la web debe pensar globalmente. Como Joomla es un CMS adoptado por todo el mundo, incluye la funcionalidad multi-idioma en su núcleo. Más de 60 paquetes de idiomas están disponibles para la instalación, y en cada proyecto se recomienda encarecidamente a implementar esta función. Componentes bien diseñados ilustran la importancia de los sitios multilingües y demuestran cómo se pueden implementar varios idiomas.

7. Bibliotecas y Reutilización de código

Todo el CMS se basa en bibliotecas reutilizables a partir de las cuales se espera que se entiendan los componentes básicos y de terceros. Los estudiantes pueden caminar a través de la ejecución de código para entender mejor los principios de la reutilización de código y las dependencias de paquetes. Departamentos y estudiantes pueden crear y añadir sus propias bibliotecas y conjuntos de API para extender las aplicaciones especializadas.

8. Aplicaciones Web reales

Conocido como un CMS, Joomla es también una plataforma para el desarrollo de aplicaciones web con todas las funciones. Prácticamente cualquier asignación de un estudiante, que ha requerido compiladores de escritorio (C#, Java, etc), también se puede programar en PHP en la plataforma de Joomla (Joomla Framework) - ya sea como un archivo ejecutable CLI o como una aplicación web. Como una aplicación web que el desarrollador puede utilizar las ricas características del CMS, tales como la gestión de usuarios,el control de acceso, el acceso a la base de datos, y mostrarlo en la página web. El trabajo de un estudiante no debe ser teórico - puede empaquetarse en una aplicación web real y distribuible.

9. Oportunidades reales

Joomla es de código abierto y en constante desarrollo por su comunidad, los proyectos de estudiantes que se han desarrollado correctamente, pueden aportarse a la "Joomlaesfera". Aquellas aplicaciones que tengan una utilidad, pueden presentarse como productos, ya sea de manera gratuita o de pago (a esto se les conoce como "extensiones" dentro del mundo Joomla) y que el público las pueda descargar. Dado que el desarrollo del núcleo de Joomla depende de voluntarios que colaboran en GitHub, los estudiantes están invitados a ofrecer contribuciones ("patches" a las nuevas características) que se consideraran para la aceptación y revisados por expertos. Cada año, el programa Google Summer of Code, patrocina a estudiantes universitarios, para trabajar con un mentor, en proyectos especiales de desarrollo de Joomla.

10. Arquitectura Joomla. Explicación

El libro JoomlaProgramming,de Dexter y Landry, es justo lo que usted y los estudiantes necesitan para comprender cómo funciona Joomla "bajo la cubierta." Se explican todos los pasos de cómo se construye una página web, acciones rápidas para la ampliación o la inyección de código personalizado, y cuestiones como la seguridad, el lenguaje y el acceso a la base de datos. Como cualquier proyecto de código abierto, Joomla está en constante evolución y se han añadido nuevas características desde la salida del libro. Sin embargo, este libro es importante para comprender la arquitectura y para ilustrar cómo extender la plataforma para proyectos a medida.

El Punto

El punto de todo esto no es que Joomla o cualquier plataforma web deben sustituir las tecnologías tradicionales como Java, en un plan de estudios. Pero la tecnología web debe incluirse dentro del plan de estudios actual. Y que la tecnología debe de probarse orientada a objetos y ampliable para los proyectos de los estudiantes, y propicio para la enseñanza.

Como tecnología web para apoyar tareas de los estudiantes, Joomla responde perfectamente a esta necesidad. El objetivo es la enseñanza de los principios y las disciplinas del software, y puede avanzarse con los estudiantes de codificación en tecnologías web y hacer frente a los problemas modernos de los sitios web. Como plataforma de desarrollo basada en la web, considere Joomla, un CMS de código abierto, orientado a objetos, en el que los estudiantes pueden experimentar y practicar los fundamentos de la construcción de un gran software.

Original: Why Universities Should Consider Joomla
Autor: 

0
JoomlaDay Boston 2014
¿Por qué actualizar las extensiones de terceros?
 

Comentarios

¿Ya està registrado? Ingresa Aquí
No hay comentarios por el momento. Sé el primero en enviar un comentario.

By accepting you will be accessing a service provided by a third-party external to https://magazine.joomla.org/