General

Esta es la categoría general donde pongo los posts que no encajan con el resto de categorías. Y algunos posts, que aunque encajan en alguna otra categoría, también los he considerado de interés general en informática. Aquí puedes encontrar contenidos varios sobre utilidades como programas, sistemas operativos, herramientas de mantenimiento y cosas de este estilo que me han parecido interesantes.

PHP: cómo construir usando el patrón de diseño Object Pool

2022-02-03 - Categorías: General / PHP / Principios y patrones

Continuando con los resúmenes sobre patrones de diseño del software llegamos al patrón Object Pool, que traducido significa Grupo de Objetos.

Este patrón está orientado a mejorar el rendimiento de la creación de objetos con alto coste temporal o espacial. Es decir, es para mejorar el uso de los recursos. Se genera una serie de objetos al inicio del programa, o la primera vez, para ir cogiendo los objetos del pool, y después devolverlos para que otros procesos o módulos del programa los reutilicen sin tener que volver a crearlos.

Continuar leyendo..

Los patrones del diseño software GRASP

2022-02-03 - Categorías: General
Pieces, design patterns, principles, patrones de diseño

Continuando con la serie de posts sobre los principios y patrones de diseño del software llegamos a los básicos patrones GRASP. Estos patrones GRASP significan según sus siglas en inglés General Responsability Assignment Software Patterns, es decir, patrones generales de asignación de responsabilidades.

Estos patrones GRASP se utilizan en la programación orientada a objetos, con lo que el punto de partida para aplicarlos siempre será usar POO. Cómo definir estos objetos/clases será la aplicación de cada patrón. Al grano..

Continuar leyendo..


PHP: cómo y cuando usar el patrón de Peso Mosca o Flyweight

2022-02-02 - Categorías: General / PHP / Principios y patrones

Este patrón del diseño del software es un patrón para optimizar los recursos, para reducir el coste espacial, y probablemente también el coste temporal de nuestros programas. El patrón Flyweight o Peso Mosca se basa en la optimización de recursos disminuyendo la cantidad de información que tiene cada objeto.

Es decir, cuando tenemos muchos objetos similares con información muy parecida, conviene desacoplar la información común y agruparla en nuevos objetos, reduciendo los originales.

Continuar leyendo..

PHP: el patrón de diseño del software Fachada/Facade

2022-02-02 - Categorías: General / PHP / Principios y patrones

Siguiendo con el repaso en PHP de los patrones de diseño del software, llegamos al patrón Fachada o Facade en inglés. Es bien sencillo, consiste simplemente en poner una clase u objeto en medio, para que se encargue de simplificar el manejo en conjunto del programa.

Es decir, suele haber tareas complejas, con varios pasos, o en las que intervienen varios elementos. Entonces, para simplificar todo, se llama a la clase de fachada para simplificar la programación y mantenimiento.

Continuar leyendo..

PHP: cómo construir usando el patrón de diseño Decorator/Decorador

2022-02-02 - Categorías: General / PHP / Principios y patrones
Pieces, design patterns, principles, patrones de diseño

Siguiendo la serie de codekatas sobre patrones de diseño del software llegamos a un patrón para añadir funcionalidades a un código ya existente a base de objetos llamados decoradores. Este post trata de lo que se llama el patrón Decorador/Decorator en inglés.

Se puede usar para decorar transacciones económicas, líneas de teléfono, clientes, etc.. es decir, se puede aplicar a muchos conceptos. Pero vamos a suponer que estamos pintando por pantalla coches, tendremos un coche básico, y queremos decorarlo. Al grano, que es más fácil ver el código que explicarlo..

Continuar leyendo..

PHP: objetos compuestos, cómo usar el patrón Composite

2022-02-02 - Categorías: General / PHP / Principios y patrones
Pieces, design patterns, principles, patrones de diseño

Siguiendo con la recopilación de codekatas sobre patrones del diseño software llegamos al patrón Composite. Este patrón es una forma de reutilizar código fuente, haciendo objetos que sean compuestos de otros, como su nombre indica.

Estos conceptos se pueden usar por ejemplo en las ventas que pueden ser combinaciones de varias ventas, en figuras geométricas compuestas, en aplicación de reglas de precios, productos simples o compuestos, etc.. Por ejemplo, aplicando descuentos, puede ser que tengamos descuentos simples y descuentos que puedan ser la acumulación de otros varios. Un producto puede ser simple, o puede ser un pack de una combinación de otros productos. Una figura puede ser simple, o puede ser una combinación de varias figuras simples. Y así suma y sigue según el escenario en curso..

Continuar leyendo..


PHP: el patrón Adaptador, cómo se implementa y cuándo usarlo

2022-01-31 - Categorías: General / PHP / Principios y patrones
Pieces, design patterns, principles, patrones de diseño

Este patrón de diseño de software es el de Adaptador, se puede usar para conectar con otros sistemas. Simplemente utiliza una interfaz para definir un contrato de uso que luego se reutiliza implementando clases que la implementan.

Por ejemplo, supongamos que queremos guardar cadenas de caracteres. Este guardar, es lo que queremos hacer, independientemente de si se hace en memoria, en un fichero, una base de datos Postgres/Mysql/etc.. entonces cada implementación del guardado, es un adaptador, porque adapta conectando el sistema informático con el destino del guardado de forma transparente.

Continuar leyendo..

Cómo usar con Doctrine de PHP nombres de tablas dinámicos

2022-01-23 - Categorías: General / PHP / Symfony
Objetos relacionados base de datos

Este es un pequeño howto para darle una vuelta de tuerca al tema de los repositorios, Doctrine, nombres de tablas, Symfony, etcétera. Doctrine es un ORM que facilita mucho el manejo de los datos en BD. De casa viene configurado para usarse de forma que una tabla corresponde a una entidad, pero esto se puede hacer dinámico fácilmente.

Supongamos entonces que estamos usando una BD relacional Mysql, tenemos entonces que una entidad se asocia a una tabla. Y podemos tener el supuesto de que queramos dividir los datos en tablas por mes.

Continuar leyendo..

UUIDs: cómo identificar las cosas en programación

2021-12-16 - Categorías: General

Una buena práctica de programación es no usar los IDs de las bases de datos para identificar las cosas en los proyectos. Si no más bien usar un propio sistema de identificación, de forma que nosotros elijamos el identificador que va a tener un objeto antes de guardarlo en la base de datos, y sobre todo antes de enviarlo a sistemas remotos para su almacenaje.

Esto se aconseja hacer, por ejemplo, con los llamados UUIDs. Si en Sistemas Distribuidos es el mismo UUID para el mismo objeto de información en varios sistemas, se evitan muchos problemas. Porque tener que transmitir IDs distintos, y tener que casarlos constantemente entre los distintos sistemas informáticos es un problema..

Continuar leyendo..

© 2022 JnjSite.com - MIT license

Sitio hecho con WordPress, diseño y programación del tema por Jnj.