Métricas del código¶
Una instantánea medida del código de Domain y sus módulos, contada con cloc. Los gráficos muestran líneas de código (líneas en blanco y de comentario excluidas) salvo que se indique lo contrario.
Instantánea
Medido en la rama 3.x, 2026-07-02. 485 archivos, 34,899 líneas de código, 14,633 líneas de comentario, 7,329 en blanco (56,861 líneas en total). Consulte la sección Metodología más abajo para reproducir.
Resumen¶
| Código | Comentarios | En blanco | Archivos | Producción | Pruebas |
|---|---|---|---|---|---|
| 34,899 | 14,633 | 7,329 | 485 | 22,460 | 12,439 |
Producción y pruebas¶
Domain incluye 12,439 líneas de código de prueba que respaldan 22,460 líneas de código de producción, una proporción pruebas/producción del 55%.
Líneas por lenguaje¶
| Lenguaje | Código | Comentarios | En blanco | Archivos |
|---|---|---|---|---|
| PHP | 22,698 | 14,418 | 5,054 | 316 |
| Markdown | 6,624 | 0 | 2,115 | 43 |
| YAML | 5,137 | 67 | 77 | 117 |
| CSS | 236 | 69 | 69 | 1 |
| JavaScript | 122 | 65 | 14 | 4 |
| Text | 39 | 0 | 0 | 2 |
| JSON | 25 | 0 | 0 | 1 |
| Twig | 18 | 14 | 0 | 1 |
Composición¶
En todos los lenguajes, el código supone el 61% de las líneas, los comentarios el 26% y las líneas en blanco el 13%. La proporción de comentarios refleja las convenciones de docblock de Drupal.
Por módulo¶
Código de producción (latón) y de prueba (acero) por módulo, de mayor a menor.
| Módulo | Producción | Pruebas | Total |
|---|---|---|---|
| domain | 5,070 | 4,185 | 9,255 |
| domain_access | 2,053 | 1,752 | 3,805 |
| domain_alias | 1,708 | 1,754 | 3,462 |
| domain_content | 3,003 | 263 | 3,266 |
| domain_source | 1,400 | 1,806 | 3,206 |
| domain_config_ui | 1,232 | 932 | 2,164 |
| domain_config | 430 | 531 | 961 |
| domain_config_language | 429 | 495 | 924 |
| domain_config_language_ui | 171 | 720 | 891 |
Conjunto de pruebas¶
Domain incluye 118 clases de prueba automatizadas (290 métodos de prueba), desglosadas por tipo a continuación.
| Tipo de prueba | Clases | Métodos |
|---|---|---|
| Kernel | 29 | 176 |
| Functional | 82 | 106 |
| FunctionalJavascript | 6 | 6 |
| Unit | 1 | 2 |
| Total | 118 | 290 |
Superficie de arquitectura¶
Lo que contiene el módulo, contado en todo Domain y sus módulos: los bloques de Drupal (servicios, plugins, hooks, rutas, entidades) que componen su API pública e interna.
| Elemento | Cantidad |
|---|---|
| Servicios | 72 |
| Suscriptores de eventos | 0 |
| Implementaciones de hook | 54 |
| Rutas | 19 |
| Permisos | 24 |
| Formularios | 9 |
| Controladores | 5 |
| Tipos de entidad de contenido | 0 |
| Tipos de entidad de configuración | 2 |
| Tipos de esquema de configuración | 44 |
| Plugins | 49 |
Los plugins se desglosan por tipo así, de mayor a menor:
Metodología¶
Los recuentos se producen con cloc desde la raíz del módulo, excluyendo node_modules:
cloc --exclude-dir=node_modules .
Los totales de producción y prueba se separan según el directorio de pruebas:
# production
cloc --exclude-dir=node_modules --not-match-d='(^|/)tests(/|$)' .
# test
cloc --exclude-dir=node_modules --match-d='(^|/)tests(/|$)' .
Las clases de prueba se cuentan por su directorio bajo tests/src (Unit, Kernel, Functional, FunctionalJavascript); la columna de métodos cuenta los métodos con prefijo test más los anotados @test o #[Test]. La superficie de arquitectura cuenta las definiciones de servicio en *.services.yml, las claves de ruta y permiso en *.routing.yml y *.permissions.yml, los atributos #[Hook], las clases de plugin bajo src/Plugin/, los formularios y controladores bajo src/Form y src/Controller, los atributos de tipo de entidad en src/Entity, y los tipos de nivel superior en config/schema/*.yml, todo agregado en el módulo y sus submódulos.
Los gráficos son SVG estáticos en línea generados a partir del JSON que emite cloc, por lo que no necesitan JavaScript ni complemento de gráficos. Esta página se actualiza periódicamente.