PHP vs. Java: ¿Cuál es el adecuado para su aplicación?

PHP vs Java Leí este artículo porque he trabajado muchas veces en Java y en PHP y deseaba confrontar si mi opinión al respecto coincidía con el artículo.

En general, salvo alguna apreciación sobre el rendimiento, donde se ha valorado un excelente rendimiento a PHP, con todo me sentía totalmente identificado.

No tengo que olvidar que llevo unos cuantos años “alejado” de Java y por ocio, “cerca” de PHP. También, no se me olvida que el artículo es de una autor que trabaja en Zend (mantenedora de la actualizaciones de PHP), por lo que seguro está un poco sesgado.

Artículo de Zend

Es corto, directo e interesante.

Traducción un apartado del artículo:

PHP vs. Java: diferencias clave

Existen varias diferencias importantes al comparar PHP con Java. Son tan importantes que me pregunto si existe una comparación justa: si bien ambas son herramientas muy poderosas, es algo así como comparar un taladro eléctrico con una sierra de mesa. Aún así, ambos ofrecen excelentes resultados para aplicaciones web modernas y los desarrolladores a menudo se encuentran atrapados entre los dos lenguajes.

Seguir leyendo PHP vs. Java: ¿Cuál es el adecuado para su aplicación?

Guía 86 – Gestión de aplicaciones grandes

¿Qué es una aplicación grande en el entorno de PHPrunner? Que yo conozca no existe una definición concreta. Para mí, es grande cuando genera más de 3000 ficheros o cuando tiene más de 50 tablas. Espero que este criterio os sirva.

Yo he estado trabajando con aplicaciones PHPRunner que tenían ambos criterios, e incluso, éramos varias personas desarrollando el aplicativo.

En este artículo deseo comentaros los criterios y formas de trabajar con este tipo de aplicaciones, criterios y formas, que veo razonables independientemente de la herramienta de codificación. Con ello no quiero significar que la versión 11 de PHPRunner, no sea positiva, sino que para muchos, muchos casos, no era esencial para gestionar proyectos grandes o con varios desarrolladores.

Objetivo:

Explicar criterios y soluciones, a emplear, para poder gestionar aplicaciones grandes.

  1. Dividir aplicaciones en módulos e interconectarlos, para facilitar la gestión de acceso a los usuarios.
  2. La librerías externas, ubicarlas fuera del proyecto de PHPRunner.
  3. Trabajo de varios desarrolladores en el proyecto. División de actividades y forma de escribir el código.

DEMO de división de aplicaciones en módulos.
https://fhumanes.com/app1/
https://fhumanes.com/app2/

Usuarios:
– user1/user1 . Tiene perfil de grupo en las dos APP
– user2/user2. Tiene perfil de grupo en una APP

Si te interesa este artículo, sigue leyéndolo en este link.

Guía 85 – Relacionar 2 tablas de forma muy visual y rápida

Este ejemplo también lo he iniciado para ayudar a Rubén.
Me explicó que estaba diseñando un sistema de Gestión de Tesorería y que tenía que conciliar las previsiones de pago con los pagos reales, de cara a realizar las previsiones de saldos de sus cuentas corrientes a medio plazo.

Él imaginó un sistema que por arrastre de registros de un panel (de previsión)  a otro (pagos reales), se fueran cancelando los registros de previsión.

Si no queda clara esta explicación, os resumo, es relacionar unos registros de una tabla con otros registros de otra tabla, pero a ser posible de forma muy visual.

Objetivo

De forma muy visual, sencilla y rápida, relacionar registros de la tabla de previsión con los registros de la tabla de pagos reales.

En este caso, es para una gestión de Tesorería, pero puede usarse para multitud de situaciones, como:

  • Albaranes y facturas.
  • Facturas y movimientos bancarios de pagos.
  • Alumnos y clases.
  • Alumnos y asignaturas optativas.
  • Etc.

DEMO:  https://fhumanes.com/reconcile y https://fhumanes.com/reconcile2

Si estás interesado en este artículo sigue leyéndolo haciendo clic aquí.

Actualización 1/07/2024
Se ha hecho corrección en:

  • Cuando se produce error en sincronismo del orden de ejecución de los botones en ambos paneles en botón “Data Concile”, el proceso se resuelve automáticamente volviéndose a ejecutar, sin la intervención del usuario
  • En los botones del panel “REAL” se elimina el prefijo de la tabla, para que estos botones puedan estar dentro o fuera de la tabla, en dicho panel.
Ampliación 3/07/2024
Se ha ampliado la funcionalidad incluyendo un formulario de filtro sobre los paneles del DashBoard.

Esta nueva versión la he llamado “concile2”.
El formulario es una página ADD que se crea con una tabla ficticia. Creo que es una excelente alternativa  para filtrar las páginas de este tipo.

Guía 84 – Resaltar elementos en páginas LIST

Mi compañero Rubén, me pidió algunos ejemplos para resaltar celdas, filas,  columnas y agrupaciones de celdas, para información mostrada en páginas LIST y aunque puede haber multitud de formas de resaltar la información, yo he elegido 4 formas y he hecho este ejemplo para mostrárselas a él y a vosotros.

En casi todos los casos, el resaltado se produce cuando el ratón se posiciona encima de las celdas de la tabla del GRID. Ya conocéis que la función “hover” para los equipos que no disponen de un ratón, mejor no utilizarla.

Es un buen ejemplo de referencia cuando se requiera trabajar con JQUERY.

Objetivo:

Cuando una página LIST muestra muchas columnas, resulta poco claro la presentación por defecto, así pues estos ejemplos sirven para reforzar el interface y hacer más fácil la visualización de los datos.

He realizado 4 ejemplos:

  • versión 1.- Mostrar coordenadas X e Y (filas y columnas) coloreando el fondo de las celdas.
  • versión 2.- Hacer el rayado de tipo “cebra” en vertical y resaltar el registro seleccionado.
  • versión 3.- Hacer el rayado de acuerdo a las celdas agrupadas, para así identificar mejor la información de los grupos.
  • versión 4.- La misma representación que versión 1, pero en paginas LIST del tipo “maestro” y “detalle”.

DEMO: https://fhumanes.com/guia84/

Si estás interesado en este tema, sigue leyendo el articulo en este enlace.

Guía 83 – Integración con React

Según nos informa Wikipedia:

React (también llamada React.js o ReactJS) es una biblioteca Javascript de código abierto diseñada para crear interfaces de usuario con el objetivo de facilitar el desarrollo de aplicaciones en una sola página. Es mantenido por Facebook y la comunidad de software libre. En el proyecto hay más de mil desarrolladores libres.

Un ejemplo de desarrollo realizado (por INDRA) con esta tecnología es: https://resultados2023.comunidad.madrid/es/

React, se creo y difundió hace 10 años y según los entendidos, es fácil de aprender y es la solución más utilizada por los desarrolladores que utilizan JavaScript para el desarrollo del Front-end de las aplicaciones.

Me habló de esta solución, mi hijo, exponiéndome las características de la solución y lo implantada que estaba en el mercado actual y me compré un libro para aprender “REACT, curso práctico”, de Santiago Aguirre.

Es muy importante imaginar/entender la arquitectura de la solución. Con esta solución (que es similar a Angular.js y VU.js) desarrollamos el interfaz de la aplicación, pero requerimos otro desarrollo de Back-end, para mantener la persistencia de los datos y/o los objetos de negocio. Este desarrollo de Back-End puede ser PHP, Java, etc. En nuestro caso será PHPRunner, ya que nos facilita un desarrollo muy rápido y acceso a casi cualquier gestor de base de datos.

Yo veo adecuada esta tecnología para los desarrollos que tengan que ver con el usuario final (ciudadano, profesor, alumno, etc.) y para todos aquellos que requieran un dispositivo móvil. Es muy sencillo “empaquetar” este tipo de aplicación en una APP Android o IOS.

También, este tipo de solución SPA (aplicaciones de una sola página) se integran perfectamente con gestores de contenidos CMS, como WordPress, etc.

Comentaros que aún siendo accesible, no es tan fácil, al menos, para aquellos que no tengan buen conocimiento con HTML, JavaScript, CSS, PHP y SQL. Se suele disponer de 2 perfiles, el desarrollador de Front-end (REACT) y el del Back-end (PHP), pero eso es en los equipos de desarrollos y no es el caso de muchos de nosotros.

Objetivo

  • Aprender React siguiendo el libro. (instalación de la infraestructura necesaria para el desarrollo)
  • Utilizar un ejemplo de GITHUB donde se integra React y PHP. “parzibyte.me”
  • Adaptar el ejemplo para utilizar PHPRunner en el Back-end.
  • Hacer una APP Android de la aplicación desarrollada.

DEMO: https://fhumanes.com/react_api/

Back-end: https://fhumanes.com/api_php

Si estás interesado en el tema, sigue leyendo el artículo en este enlace.

Blog personal para facilitar soporte gratuito a usuarios de PHPRunner