Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las transformaciones funcionales puras son aplicables en una amplia variedad de situaciones.
El enfoque de transformación funcional es ideal para consultar y manipular datos estructurados; por lo tanto, encaja bien con las tecnologías LINQ. Sin embargo, la transformación funcional tiene una aplicabilidad mucho más amplia que el uso con LINQ. Cualquier proceso en el que el enfoque principal consiste en transformar datos de un formulario a otro probablemente debe considerarse como candidato para la transformación funcional.
Este enfoque es aplicable a muchos problemas que a primera vista pueden no parecer candidatos. Se usa junto con o por separado de LINQ, se debe tener en cuenta la transformación funcional para las siguientes áreas:
- Documentos basados en XML. Los datos bien formados de cualquier dialecto XML se pueden manipular fácilmente a través de la transformación funcional. Para obtener más información, vea Transformación funcional de XML.
- Otros formatos de archivo estructurados. De Windows.ini archivos a documentos de texto sin formato, la mayoría de los archivos tienen cierta estructura que se presta a análisis y transformación.
- Protocolos de streaming de datos. La codificación de datos en y la descodificación de datos de protocolos de comunicación a menudo se pueden representar mediante una transformación funcional simple.
- Datos de RDBMS y OODBMS. Las bases de datos relacionales y orientadas a objetos, al igual que XML, son orígenes de datos estructurados ampliamente usados.
- Soluciones matemáticas, estadísticas y ciencias. Estos campos tienden a manipular grandes conjuntos de datos para ayudar al usuario a visualizar, calcular o resolver problemas no triviales.
Como se describe en Refactorización en funciones puras, el uso de funciones puras es un ejemplo de programación funcional. Además de sus ventajas inmediatas, el uso de funciones puras proporciona una experiencia valiosa al pensar en problemas desde una perspectiva de transformación funcional. Este enfoque también puede tener un impacto importante en el diseño de programas y clases. Esto es especialmente cierto cuando un problema se presta a una solución de transformación de datos como se ha descrito anteriormente.
Aunque están fuera del ámbito de este tutorial, los diseños que están influenciados por la perspectiva de transformación funcional tienden a centrarse en procesos más que en objetos como actores, y la solución resultante tiende a implementarse como una serie de transformaciones a gran escala, en lugar de cambios de estado de objeto individuales.
De nuevo, recuerde que C# y Visual Basic admiten enfoques imperativos y funcionales, por lo que el mejor diseño para la aplicación podría incorporar elementos de ambos.