Capítulo 1. ¿Qué es KDevelop?

KDevelop es un moderno entorno de desarrollo integrado (IDE) para C++ (y otros lenguajes) que es una de las muchas aplicaciones de KDE. Como tal, funciona sobre Linux® (incluso si está utilizando cualquier otro escritorio, como GNOME), aunque también está disponible para otras variantes de UNIX®, e incluso para Windows.

KDevelop ofrece todos los servicios de un IDE moderno. Para grandes proyectos y aplicaciones, la característica más importante es que KDevelop entiende C++: analiza todo el código fuente y recuerda las funciones miembro que posee cada clase, dónde se han definido las variables, cuáles son sus tipos y muchas otras cosas de su código fuente. Por ejemplo, si uno de los archivos de cabecera de su proyecto declara una clase

class Car {
  // ...
  public:
    std::string get_color () const;
};

y posteriormente escribe en su programa

Car my_ride;
// ...hacer algo con esta variable...
std::string color = my_ride.ge

recordará que el my_ride de la última línea es una variable de tipo Car y le ofrecerá la posibilidad de completar ge como get_color(), ya que esta es la única función miembro de la clase Car que empieza de ese modo. En lugar de continuar escribiendo, solo tiene que pulsar Intro para obtener la palabra completa; esto le ahorra pulsaciones de teclado, le evita errores al teclear y no le obliga a recordar los nombres exactos de los cientos o miles de funciones y clases que componen los grandes proyectos.

Como segundo ejemplo, supondremos que tiene un código como este:

double foo ()
{
  double var = my_func();
 return var * var;
}
double bar ()
{
  double var = my_func();
  return var * var * var;
}

Si sitúa el cursor del ratón sobre el símbolo var de la función bar se le ofrecerá la posibilidad de ver todos los usos de este símbolo. Si pulsa sobre esta opción le mostrará únicamente los usos de esta variable dentro de la función bar, ya que KDevelop entiende que la variable var de la función foo no tiene nada que ver con ella. De igual modo, si pulsa con el botón derecho del ratón sobre el nombre de la variable podrá cambiar el nombre de la misma; si lo hace, solo se modificará la variable de la función bar, pero no la que tiene el mismo nombre dentro de la función foo.

Pero KDevelop no es solamente un editor de código inteligente; hay otras cosas que KDevelop hace bien. Por supuesto, puede resaltar el código fuente con diferentes colores, posee sangrado personalizable, dispone de una interfaz integrada con el depurador gdb de GNU, puede mostrarle información sobre una función al situar el cursor del ratón sobre ella, puede lidiar con diferentes clases de entornos de construcción y compiladores (por ejemplo con proyectos basados en make y cmake), entre otras muchas cosas interesantes que se describen en este manual.