¿F # ofrece algo particularmente útil para el desarrollo web basado en bases de datos?

18

Mi organización finalmente se actualizó a MS Visual Studio 2010 este año. Una de las grandes características nuevas que ofrece Visual Studio 2010 es el lenguaje de programación F #.

Entiendo que F # ofrece un paradigma de programación funcional, similar a Lisp. Sin embargo, a diferencia de Lisp, F # se compila en código administrado para el marco .net.

En este momento, trabajo en el desarrollo de aplicaciones web basadas en bases de datos. En este momento, estoy trabajando con una aplicación de n niveles con código SQL en el back-end y una aplicación web C # .net AJAX en el front-end. Me gustaría saber si F # ofrece algo que sea particularmente útil para este tipo de desarrollo.

Galletas De Harina De Arroz
fuente
¿Su software hace algún análisis financiero o estadístico? No estoy diciendo que esto es para lo que F # es (es mucho más que eso), pero sobresale en esta área y el tipo general de "poner x adentro, salir y".
AndrewC
Por cierto, también debe tener en cuenta el mantenimiento asociado de cualquier código escrito en F #. ¿Vas a formar desarrolladores en el idioma? No desea ser la única persona que comprende un área particular de su sistema.
AndrewC
No hay análisis financiero o estadístico. Básicamente es solo un mantenimiento de registros
galletas de harina de arroz el

Respuestas:

9

F # realmente no hace nada que C # no pueda. En última instancia, todos se compilan en el mismo CLR, por lo que no hay una tecnología única que sea increíblemente útil para usted. Incluso puede llamar a F # desde C # y viceversa.

Dependiendo de los problemas, su diseño de F # podría proporcionar un código más simple y conciso.

Los lenguajes funcionales también se prestan muy bien para pruebas unitarias. Eso y ese hecho de que hay datos mucho menos mutables significa que su código, si se escribe bien, tendrá muchos menos errores.

Puedo decir por experiencia personal que aprender algo de F # realmente puede mejorar sus habilidades de C # y ayudarlo a pensar en los problemas de una manera nueva.

Aprender conceptos de programación funcional también puede ayudar realmente a su Javascript (que en sí mismo es un lenguaje funcional).

Tom Squires
fuente
6

Una característica que tiene la última versión de F # que C # no tiene es Type Providers .

Los tipos proporcionados por los proveedores de tipo F # generalmente se basan en fuentes de información externas. Por ejemplo, un proveedor de tipo F # para SQL le proporcionará los tipos, propiedades y métodos que necesita para trabajar directamente con las tablas de cualquier base de datos SQL a la que tenga acceso. Del mismo modo, un proveedor de tipos para servicios web WSDL le proporcionará los tipos, propiedades y métodos que necesita para trabajar directamente con cualquier servicio web WSDL.

El proveedor de tipo SQL Server es particularmente fácil de usar. Aquí hay un tutorial sobre cómo usarlo.

JonnyBoats
fuente