SentinelAPI es una API RESTful construida en F# utilizando Giraffe y Entity Framework Core. Esta API permite realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en una entidad llamada Sentinel
.
F# es un lenguaje de programación funcional que ofrece varias ventajas, lo que lo convierte en una opción interesante para construir aplicaciones web y APIs. Algunas de las razones por las cuales F# es una excelente elección son:
- Concisión y Legibilidad: F# permite escribir código conciso y expresivo, lo que facilita la lectura y el mantenimiento del código.
- Inmutabilidad por Defecto: Las estructuras de datos inmutables son la norma en F#, lo que ayuda a evitar errores comunes relacionados con el estado mutable.
- Funciones de Orden Superior: F# soporta funciones de orden superior, lo que facilita la creación de abstracciones y la composición de funciones.
- Tipado Fuerte y Estático: El sistema de tipos de F# es fuerte y estáticamente tipado, lo que ayuda a atrapar errores en tiempo de compilación en lugar de en tiempo de ejecución.
- Conciencia de la Concurrencia: F# facilita la escritura de código concurrente y paralelo, lo que puede mejorar el rendimiento de las aplicaciones.
- Interoperabilidad: F# se ejecuta en el runtime de .NET, lo que permite utilizar bibliotecas y herramientas de C# y otros lenguajes del ecosistema .NET.
Estas características hacen que F# sea ideal para construir APIs robustas y eficientes. La combinación de F# con Giraffe y Entity Framework Core en SentinelAPI proporciona una base sólida para el desarrollo web funcional y la gestión de datos.
- F#
- Giraffe
- Entity Framework Core
- SQL Server
-
Clonar el repositorio:
git clone https://github.com/tu-usuario/SentinelAPI.git cd SentinelAPI
-
Restaurar los paquetes NuGet:
dotnet restore
-
Crear la base de datos y aplicar las migraciones:
- Asegúrate de tener un servidor SQL Server en funcionamiento.
- Configura la cadena de conexión en el archivo
appsettings.json
:
{ "ConnectionStrings": { "DefaultConnection": "Server=tu-servidor;Database=SentinelDB;Trusted_Connection=True;" } }
- Ejecuta la aplicación para aplicar las migraciones:
dotnet run
Para ejecutar la aplicación:
dotnet run