Acabo de realizar una pequeña modificación a la carpeta test del proyecto. Ahora esta divida en cases, en donde estan los casos de test y coverage donde estan las estadisticas de test code coverage que devuelve phpunit
Acabo de realizar una pequeña modificación a la carpeta test del proyecto. Ahora esta divida en cases, en donde estan los casos de test y coverage donde estan las estadisticas de test code coverage que devuelve phpunit
Esta semana comencé a utilizar un feature de PHPUnit que nunca le había prestado atención, el Code Coverage (cobertura de código/código cubierto ¿?), la cosa es que un compañero de trabajo la estaba usando y me llama mucho la atención.
¿Por que? porque este feature indica el porcentaje de código que fue cubierto por el test unitario (wow!) esto sumado a una UI agradable y de fácil compresión (doblemente wow!) logra maravillas.
Una de las cosas que mas me agrado es que no solo muestra el % de código testeado, sino que muestra el código de la clase coloreada en verde las lineas testeadas y en rojo las no testeadas.
En fin, excelente feature de PHPUnit para los que realizamos TDD o tenemos que testear código legacy
Buscando información sobre POA (programación orientada a aspectos) me encontré con esta nota sobre Context-oriented programming (existe un pdf del mismo autor para descargar), que por lo que pude investigar es muy parecido (y quizás lo mismo) que variation-oriented engineering.
Muchos de estos conceptos nacieron en los 90 apartir de algunas limitaciones que tiene el paradigma de objetos, como por ejemplo la separación de los asuntos.
Adjunto el “abstract” de la nota
Context-dependent behavior is becoming increasingly important for a wide range of application domains, from pervasive computing to common business applications. Unfortunately, mainstream programming languages do not provide mechanisms that enable software entities to adapt their behavior dynamically to the current execution context. This leads developers to adopt convoluted designs to achieve the necessary runtime flexibility. We propose a new programming technique called Context-oriented Programming (COP) which addresses this problem. COP treats context explicitly, and provides mechanisms to dynamically adapt behavior in reaction to changes in context, even after system deployment at runtime. In this paper we lay the foundations of COP, show how dynamic layer activation enables multi-dimensional dispatch, illustrate the application of COP by examples in several language extensions, and demonstrate that COP is largely independent of other commitments to programming style.
Les dejo también unos papers sobre COP para el que quiera seguir investigando
Hace muucho tiempo que no escuchaba Cabezones, por esas cosas de la vida estaba escuchando Los Reyes de la Noche por la Mega y cerraron el programa con Mi pequeña infinidad del album “Jardín de extremidad”.
Es una de pocas bandas nacionales que me gustan y tuve el placer de poderlos ver en vivo.
Les dejo el video y la letra!
Y una noche, me tuve que guiar
de tu imperceptible… (respirar)
en mis brazos, refugié tu ansiedad…
vamos recorriendo,
tan dulce… tan hermosa, tus sueños se cumplirán…!
¡nadie puede separarnos, mi pequeña princesa
nadie puede separarnos, mí pequeña infinidad…!
tus palabras… inundaron mi debilidad,
tu sonrisa… mi alma
y creí, que todo te debía enseñar
y me mostraste como caminar…
tan dulce… tan hermosa… tus sueños se cumplirán…!
¡nadie puede separarnos, mi pequeña princesa
nadie puede separarnos, mí pequeña infinidad…!
tan dulce… ¡tan hermosa…!, ¡tus sueños se cumplirán…!
¡nadie puede separarnos, mi pequeña princesa
nadie puede separarnos, mi pequeña infinidad…!