CLOC la herramienta para contar líneas de código

por:

Cloc la herramienta para contar las líneas de código

En algunos casos cuando desarrollamos proyectos, no interesa llevar un conteo de cuantas líneas hemos escrito para estimar el trabajo que nos ha llevado hacer el proyecto. Pero medir este número muchas veces es complejo, puesto que podemos tener muchos ficheros fuente y algunos IDEs no traen una herramienta que nos ayude a contarlas. Para ello hoy les quiero hablar sobre CLOC.

Cloc tu contador de líneas de código

Aunque como comentaba anteriormente, las líneas de código no es una buena medida del esfuerzo de un proyecto, ya que podemos tener algoritmos muy complejos que ocupen pocas líneas, en algunos casos es interesantes medirlas. Pero también encontramos distintas maneras de medir las líneas de código, medir solo el código, medir el código y los comentarios o medir el código, los comentarios y las líneas blancas que haya en los archivos. Además en ciertos lenguajes como C o C++ es útil diferenciar si las líneas son en ficheros de cabecera, o en ficheros fuente.

Todas estas cosas nos las va a permitir CLOC, para ello lo primero que tenemos que hacer es descargarlo para nuestra plataforma.

Este programa no tiene interfaz de usuario, así que debemos ejecutarlo desde la terminal y podemos indicarle como parámetro la carpeta donde tenemos el proyecto que queremos medir:

Cloc muestra el numero de lineas de mi proyecto java
Como se puede ver en la imagen nos informa del número de ficheros, líneas en blanco, líneas con comentarios y líneas de código.

Otra de las cosas que hacen a cloc una de las mejores herramientas para medir las líneas de código, es que soporta gran cantidad de lenguajes de programación por defecto y en caso de no soportar un lenguaje que necesitemos, podemos definir una plantilla para este lenguaje.

Cloc cuenta las lineas de mi proyecto en C#

Como podéis ver este proyecto tiene muchas líneas de código, pero yo no recuerdo haber escrito tantas, así que vamos a usar el argumento –by-file para que nos detalle la cuenta por ficheros:

cloc da un numero muy alto de lineas de codigo

Pero resulta que esas líneas son debidas a ficheros que se crean al generar el proyecto, por parte del compilador y cloc los detecta al escanear de manera recursiva todas las carpetas.

cloc cuenta lineas filtrando archivos

Así que lo que he hecho es filtrar ese tipo de archivos, para que no los cuente y así obtengo un resultado más fiel al número de líneas escritas por mí en este proyecto.

Tokei un Cloc optimizado

Uno de los problemas que tiene cloc es que es una herramienta un poco lenta si el proyecto a escanear tiene muchos ficheros o carpetas. Sin embargo, ese no es problema para Tokei un software similar a Cloc pero escrito en Rust en lugar de en Perl, el cual es muchísimo más rápido realizando el conteo de las líneas de código de tus proyectos. Por eso, si el proyecto es muy grande te recomiendo usar esta alternativa.

Tokei es un buen programa para contar líneas de código rápidamente en proyectos grandes

Espero que esta entrada os haya resultado útil.

12 comentarios en “CLOC la herramienta para contar líneas de código”

  1. Luis

    Como le hago con laravel, me cuenta todo en general y no filtra nada

    Responder
  2. marco a loyo

    porque no me toma este tipo de archivo .pc

    REDCLIQCIBCV03_01.pc

    Responder
    • Jorge

      Qué tipo de código guarda en un archivo .pc? es la primera vez que veo esa extensión.

      Responder
      • Kata

        Es un archivo ProC,es un lenguaje ensamblado de SQL codigo C o C++, utilizado para soluciones Oracle.

        Responder
  3. marco a loyo

    hola voy a comenzar una certificación de proveedores de CMMI me piden CLOC donde puedo bajar un software para comenzar a trabajar

    Responder
  4. Marcos Gonzalez

    Está muy buena la herramienta! Eso si, no lee los directorios con espacios y tuve que ponerles guión bajo a los nombres de las carpetas para que lo procese.
    Felicito a la persona que desarrolló este programa

    Responder
  5. Yo Albert

    Gracias!

    Responder
  6. Side Master

    Excelente caballero. ¡Saludos!.

    Responder
  7. XYU[r0nin]

    Hola,

    Ahora CLOC esta alojado en github: https://github.com/AlDanial/cloc.

    La versión actual es la 1.70

    Responder
  8. Matias Zamorano

    Genial! Gracias por compartir.

    Responder

Deja una Respuesta