Ingeniería de software

10
¿Puedo, como autor y titular de los derechos de autor, volver a licenciar mi código bajo una licencia más liberal después de que se haya publicado bajo una licencia más restrictiva?

Digamos, por ejemplo, publiqué mi código bajo GPL. Un mes después del lanzamiento, decido que las corporaciones malvadas ( *tos *) pueden usar mi código después de todo, porque es tan brillante y libre de errores. ¿Puedo volver a licenciar mi propio código o me he excluido del derecho a...

10
Quadtree con duplicados

Estoy implementando un quadtree. Para aquellos que no conocen esta estructura de datos, incluyo la siguiente pequeña descripción: Un Quadtree es una estructura de datos y está en el plano euclídeo lo que es un Octree en un espacio tridimensional. Un uso común de los quadtrees es la indexación...

10
¿Cuándo se considera que una API es un DSL incorporado?

¿Cuál es la diferencia entre una API y un lenguaje específico de dominio (DSL) incorporado? ¿Es solo sintaxis? Considere una API como OpenGL. ¿Cómo es eso diferente de un DSL de gráficos? En otras palabras, si una API es suficientemente compleja, ¿se puede considerar un DSL...

10
¿Por qué las estructuras empaquetadas no forman parte del lenguaje C?

Cada compilador de C ofrece la opción de "empaquetar" estructuras de C (por ejemplo __attribute__ ((__packed__)), o #pragma pack()). Ahora, todos sabemos que se requiere empacar, si queremos enviar o almacenar datos de manera confiable. Esto también debe haber sido un requisito desde los primeros...

10
¿Cómo determinar qué debería tener su propio controlador respectivo?

Estoy usando el patrón MVC en mi aplicación web creada con PHP. Siempre me cuesta determinar si necesito un nuevo controlador dedicado para un conjunto de acciones o si debo ubicarlos dentro de un controlador ya existente. ¿Hay alguna buena regla a seguir al crear controladores? Por ejemplo,...