Los patrones de diseño en Swift. Lo primero que me vas a decir que esto no es sólo de iOS, sino que es aplicable a todos los lenguajes de programación. Pues sí, pero yo lo voy a orientar todo para Swift, y los ejemplos de cada patrón los veremos en Swift. Dichos esto, veamos los patrones de diseño de software para ios, jejeje.
A medida que te vas introduciendo en el mundo de la programación, conforme vas avanzando en este trabajo, te vas dando cuenta que hay una serie de problemas y de posibles soluciones que tienes que aplicar que van siendo recurrentes. Es aquí donde terminamos por descubrir el término de patrón de diseño.
¿Qué es un patrón de diseño?
Vamos a dar una definición concreta para patrón de diseño. Podemos llamar patrón de diseño a técnicas que nos permiten resolver problemas comunes, en este caso en el desarrollo de software. A lo largo de una serie de entradas que iré escribiendo aquí en mi blog durante las próximas semanas iremos viendo los principales patrones de diseño en Swift.
Los patrones de The Gang of Four
Los patrones que vamos a ver son los identificados por este grupo de desarrolladores de IBM los 90s, en este caso puestos en valor con el lenguaje de programación Swift. Aunque realmente casi que da igual qué lenguaje se utilice, pero aquí barro para casa y lo veremos con Swift. Forman un total de 23 patrones.
Tipos de patrones
Se identifican diferentes tipos de patrones:
- Creacionales
- De comportamiento
- Estructurales
Creacionales
Son utilizados en lugar de la creación directa mediante constructor. Ofrecen flexibilidad cuando vamos a crear objetos y cómo se inicializan. Tenemos cinco patrones creacionales:
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Singlenton
Patrones de comportamiento
Definen la forma en la que interactúan y reparten responsabilidades las diferentes clases y objetos. En este caso tenemos once tipos:
- Chain of responsability
- Command
- Interpreter
- Iteractor
- Mediator
- Memento
- Observer
- State
- Strategy
- Template method
- Visitor
Estructurales
Sobre la composición de las clases y los objetos. Su objetivo es separar la estructura de la implementación. Nos ofrecen que cuando una de las partes cambia no se necesita cambiar toda la estructura de la aplicación.
Tenemos los siguientes tipos de patrones estructurales:
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
Pues te animo a que sigas leyendo los próximos artículos para ver cada uno de estos patrones. Iremos viendo sencillos pero prácticos ejemplos de cada uno de ellos.
Deja una respuesta