Entradas

GRASP

Patrones de diseño GRASP (General Responsibility Assignment Software Patterns) Estos patrones lo que buscan es responder la pregunta: ¿Quién hace qué? ¿Cuál objeto o clase es responsable de  una acción o rol? También ayuda a definir cómo trabajan las clases entre sí. Lo que busca GRASP es que el  código escrito sea entendible y limpio. Los principios GRASP son: El controlador : Es el responsable de dirigir las peticiones realizadas por parte del usuario por medio de la interfaz  gráfica hacia el back-end del sistema. Este patrón permite la separación de la interfaz de usuario del componente de  negocio del sistema. Se debe prestar especial atención cuando un controlador tiene muchas responsabilidades, en  este caso es recomendable crear más controladores y asignarles las respectivas responsabilidades. Experto en información : Tiene la necesidad de establecer las responsabilidades adecuadas al experto correcto, esto es,  la clase que tiene l...

SQL Server y JSON

Imagen
Una de las maneras más simples de retornar un set de datos en un objeto JSON es por medio de las sentencias FOR JSON AUTO y FOR JSON PATH. Al utilizar una de estas sentencias el resultado del query no será retornado de la manera tradicional, filas y columnas, sino que retornará un objeto tipo JSON. Ejemplo: SELECT TOP ( 2 ) [BusinessEntityID] , [NationalIDNumber] , [LoginID] , [OrganizationNode] FROM [AdventureWorks2016] . [HumanResources] . [Employee] FOR JSON AUTO SELECT TOP ( 2 ) [BusinessEntityID] , [NationalIDNumber] , [LoginID] , [OrganizationNode] FROM [AdventureWorks2016] . [HumanResources] . [Employee] FOR JSON PATH [{"BusinessEntityID":1,"NationalIDNumber":"295847284","LoginID":"adventure-works\\ken0"},{"BusinessEntityID":2,"NationalIDNumber":"245797967","LoginID":"adven...