Pregunta

Quiero ampliar mis horizontes de programación a Linux.Un conjunto de herramientas básico bueno y confiable es importante, y ¿qué es más básico que un IDE?

Pude encontrar estos temas SO:

no estoy buscando un ligero IDE.Si un IDE vale la pena, entonces lo pagaré, por lo que no tiene por qué ser gratuito.

Mi pregunta entonces:

¿De qué sirve el IDE de programación C++ disponible para Linux?

Los mínimos son bastante estándar:resaltado de sintaxis, finalización de código (como inteligencia o su contraparte de Eclipse) y la depuración integrada (por ejemplo, puntos de ruptura básicos).

Lo he buscado yo mismo, pero hay tantos que es casi imposible separar los buenos de los malos a mano, especialmente para alguien como yo que tiene poca experiencia en codificación C++ en Linux.Yo sé eso Eclipse soporta C++, y realmente me gusta ese IDE para Java, pero ¿es bueno para C++ y hay algo mejor?

La segunda publicación en realidad tiene algunas buenas sugerencias, pero lo que me falta es qué hace exactamente que el IDE sugerido sea tan bueno para el usuario, ¿cuáles son sus (des)ventajas?

Por lo tanto, tal vez mi pregunta debería ser:

¿Qué IDE propones (dada tu experiencia) y por qué?

¿Fue útil?

Solución

Inicialmente:confusión

Cuando escribí originalmente esta respuesta, recientemente hice el cambio de Visual Studio (con años de experiencia) a Linux y lo primero que hice fue intentar encontrar un IDE razonable.En aquel momento esto era imposible:no existía ningún buen IDE.

Epifanía:UNIX es un IDE. Todo ello.1

Y luego me di cuenta de que el IDE en Linux es la línea de comando con sus herramientas:

  • Primero configuras tu shell
  • y su editor;Elige tu veneno: ambos son de última generación:

Dependiendo de tus necesidades, tendrás que instalar y configurar varios complementos para que el editor funcione bien (esa es la parte molesta).Por ejemplo, la mayoría de los programadores de Vim se beneficiarán de la Tu me completas complemento para autocompletado inteligente.

Una vez hecho esto, el shell es su interfaz de comando para interactuar con las diversas herramientas: depuradores (gdb), perfiladores (gprof, valgrind), etc.Usted configura su proyecto/entorno de construcción usando Hacer, Chacer, serpientehacer o cualquiera de las diversas alternativas.Y administra su código con un sistema de control de versiones (la mayoría de la gente usa git).También usas tmux (anteriormente también pantalla) para multiplexar (= pensar en varias ventanas/pestañas/paneles) y conservar su sesión de terminal.

El punto es que, gracias al shell y algunas convenciones de escritura de herramientas, todo esto integrarse entre sí.Y de esa manera El shell de Linux es un entorno de desarrollo verdaderamente integrado., completamente a la par con otros IDE modernos.(Esto no significa que los IDE individuales no tengan características de las que la línea de comando pueda carecer, pero lo contrario también es cierto).

A cada cual lo suyo

No puedo exagerar lo bien que funciona el flujo de trabajo anterior una vez que se ha acostumbrado.Pero algunas personas simplemente prefieren los editores gráficos, y en los años transcurridos desde que se escribió originalmente esta respuesta, Linux ha obtenido un conjunto de excelentes IDE gráficos para varios lenguajes de programación diferentes (pero no, hasta donde yo sé, para C++).Pruébalos incluso si, como yo, terminas sin usarlos.Aquí hay sólo una pequeña y sesgada selección:

Tenga en cuenta que esta lista está lejos de ser completa.


1 Robé ese título del comentario de dsm.

2 Solía ​​​​referirme a Vim aquí.Y aunque Vim simple sigue siendo más que capaz, Neovim es un reinicio prometedor y ha modernizado algunas viejas verrugas.

Otros consejos

Mi favorito personal es el CódigoLite 2.x IDE.

ver: http://www.codelite.org

La decisión de utilizar CodeLite se basó en una investigación sobre el siguiente IDE de C++ para Linux:

  • Eclipse Galileo con el complemento CDT
  • NetBeans 6.7 (que también es la base del IDE de SunStudio)
  • KDesarrollar4
  • Bloques de código 8.02
  • CódigoLite 2.x

Después de todo he decidido usar CódigoLite 2.x.

A continuación, enumero algunos pros y contras de los IDE de C++ mencionados.¡Tenga en cuenta que esto refleja únicamente mi opinión personal!

EDITAR:que lástima que SOF no soporta tablas, así que tengo que escribir en párrafos…

Eclipse Galileo con el complemento CDT

Ventajas:

  • razonablemente rápido
  • también es compatible con Java, Perl (con el complemento E.P.I.C)
  • comúnmente usado y bien mantenido
  • también disponible para otros tipos de sistemas operativos (Windows, MacOS, Solaris, AIX(?))

Contras:

  • La GUI es muy confusa y algo inconsistente, nada intuitiva
  • peso pesado
  • Solo admite CVS (AFAIK)

NetBeans 6.7 (tenga en cuenta que esta también es la base del IDE de SunStudio)

Ventajas:

  • Una de las GUI más intuitivas que he visto jamás.
  • también es compatible con Java, Python, Ruby
  • integra CVS, SVN, Mercurial
  • comúnmente usado y bien mantenido
  • también disponible para otros tipos de sistema operativo (Windows, MacOS, Solaris)

Contras:

  • extremadamente lento
  • peso pesado
  • utiliza espacios para sangría, que no es la política en mi trabajo.Estoy seguro de que esto es configurable, pero no pude encontrar cómo hacerlo.

KDesarrollar4 (nota:No hice muchas pruebas)

Ventajas:

  • comúnmente utilizado en Linux
  • integra CVS, SVN, Mercurial

Contras:

  • la GUI parece algo pasada de moda
  • peso pesado
  • muy específico para el entorno KDE

Bloques de código 8.02 (nota:No hice muchas pruebas)

Ventajas:

  • razonablemente rápido

Contras:

  • la GUI parece algo pasada de moda (aunque tiene una bonita pantalla de inicio)
  • las fuentes en el editor son muy pequeñas
  • algunos iconos (p. ej.los iconos relacionados con el depurador (iniciar/pasar) son muy pequeños
  • sin integración de control de fuente

CódigoLite 2.x (nota:este es mi favorito personal)

Ventajas:

  • la mejor GUI intuitiva y de aspecto moderno que he visto en Linux
  • ligero
  • razonablemente rápido
  • integra SVN
  • también disponible en otras versiones de sistema operativo (Windows, MacOS, Solaris(?))

Contras:

  • sin integración CVS (eso es importante para mí porque tengo que usarlo en el trabajo)
  • no hay soporte para Java, Perl, Python (sería bueno tenerlo)
  1. Código::Bloques
  2. Eclipse CDT

Pronto descubrirás que los IDE no son suficientes y tendrás que aprender la cadena de herramientas GCC de todos modos (lo cual no es difícil, al menos aprender la funcionalidad básica).Pero no hay nada de malo en reducir el dolor de transición con los IDE, en mi opinión.

Una respuesta rápida, sólo para añadir un poco más de conocimiento a este tema:
Definitivamente debes revisar NetBean.Netbeans 6.7 tiene las siguientes características:

  • Proyectos y plantillas C/C++:Admite resaltado de sintaxis, finalización automática del código, sangría automática.
  • Tiene un depurador C/C++
  • Admite configuraciones de compiladores, administrador de configuración y soporte de makfile (con un asistente).
  • Tiene una ventana de Clases, una ventana de Usos y una ventana (o panel) de Navegación de Archivos.
  • A Vista de expansión macro, y también información sobre herramientas.
  • Apoyo para desarrollo QT.

Creo que es una sustitución perfecta (y mucho mejor) de Visual Studio y una muy buena herramienta para aprender C/C++.

¡Buena suerte!

Al menos para proyectos específicos de Qt, el Creador de Qt (de Nokia/Trolltech/Digia) es muy prometedor.

¿Podrías aclarar un poco más cómo te fue, qué tuviste que cambiar?Tal vez puedas indicarme la dirección correcta proporcionándome algunos enlaces a la información que utilizaste.

Mi primera fuente fueron en realidad las herramientas. man páginas.Sólo tipo

$ man toolname

en la línea de comando ($ Aquí está parte del mensaje, no la entrada).

Dependiendo de la plataforma, están bastante bien redactados y también se pueden encontrar en Internet.En el caso de make, de hecho leí el completo documentación lo cual tomó algunas horas.En realidad, no creo que esto sea necesario o útil en la mayoría de los casos, pero tenía algunos requisitos especiales en mis primeras tareas en Linux que requerían un archivo MAKE sofisticado.Después de escribir el archivo MAKE, se lo di a un colega experimentado que hizo algunos ajustes y correcciones menores.Después de eso, supe bastante make.

Utilicé GVIM porque tenía algo de experiencia previa (pero no mucha) allí, no puedo decir nada sobre Emacs o alternativas.Creo que realmente ayuda leer los escritos de otras personas. .gvimrc archivo de configuración.Mucha gente lo sube a la web.Aquí está mío.

No intentes dominar todos los binutils a la vez, hay demasiadas funciones.Pero obtenga una descripción general para saber dónde buscar cuando necesite algo en el futuro.Tú debería, sin embargo, conozca todos los parámetros importantes para g++ y ld (la herramienta de vinculación de GCC que se invoca automáticamente excepto cuando se impide explícitamente).

También tengo curiosidad: ¿tienes finalización de código y resaltado de sintaxis cuando codificas?

Resaltado de sintaxis:sí, y mucho mejor que Visual Studio.Finalización del código:Sí-ish.Primero, debo admitir que no utilicé la finalización de código C++ ni siquiera en Visual Studio porque (en comparación con VB y C#) no era lo suficientemente bueno.Ahora no lo uso a menudo pero, aun así, GVIM tiene Compatibilidad con finalización de código nativo para C++.Combinado con el etiquetas biblioteca y un complemento como lista de etiquetas esto es casi un IDE.

En realidad, lo que me hizo empezar fue una artículo por Armin Ronacher.¡Antes de leer el texto, mira las capturas de pantalla al final!

¿Tienes que compilar primero antes de recibir errores (de sintaxis)?

Sí.Pero esto es lo mismo para Visual Studio, ¿no es así (nunca he usado Whole Tomato)?Por supuesto, el resaltado de sintaxis le mostrará corchetes que no coinciden, pero eso es todo.

¿Y cómo se depura (nuevamente piense en puntos de interrupción, etc.)?

yo suelo gdb que es una herramienta de línea de comandos.También hay una interfaz gráfica llamada DDD. gdb es una herramienta de depuración moderna y puede hacer todo lo que puedes hacer en un IDE.Lo único que realmente me molesta es leer un seguimiento de la pila porque las líneas no están sangradas ni formateadas, por lo que es muy difícil escanear la información cuando usas muchas plantillas (lo cual hago).Pero estos también saturan el seguimiento de la pila en los IDE.

Como dije, tuve el 'placer' de dar mis primeros pasos en el lenguaje de programación Java usando el bloc de notas de Windows y el compilador de línea de comandos de Java en la escuela secundaria, y fue, ..bueno una pesadilla!ciertamente, cuando pude compararlo con otros cursos de programación que tenía en ese entonces, donde teníamos IDE decentes.

Ni siquiera deberías intentar comparar un editor moderno y con todas las funciones como Emacs o GVIM con el Bloc de notas.El bloc de notas está adornado TextBox control, y esto realmente marca la diferencia.Además, trabajar en la línea de comandos es una experiencia muy diferente en Linux y Windows.Las ventanas cmd.exe está gravemente lisiado.PowerShell es mucho mejor.

/EDITAR:Debo mencionar explícitamente que GVIM tiene edición con pestañas (como en la navegación con pestañas, no pestañas versus espacios).Me llevó mucho tiempo encontrarlos, aunque no están escondidos en absoluto.Sólo tipo :tabe en lugar de simple :e al abrir un archivo o crear uno nuevo, y GVIM creará una nueva pestaña.Se puede cambiar entre pestañas usando el cursor o varios atajos diferentes (según la plataforma).La clave gt (tipo gramo, entonces t en modo comando) debería funcionar en todas partes y salta a la siguiente pestaña, o pestaña no. norte si se le diera un número.Tipo :help gt para obtener más ayuda.

No quiero repetir una respuesta, pero creo que puedo agregar un poco más.

Slickedit es un excelente IDE.

Admite grandes bases de código sin ralentizarse ni perder todo el tiempo indexando.(Este es un problema que tuve con el cdt de eclipse).De hecho, la velocidad de Slickedit es probablemente lo mejor.
La finalización del código funciona bien y hay una gran cantidad de opciones para cosas como formato automático, embellecimiento y refactorización.
Tiene depuración integrada.
Tiene soporte para complementos y una comunidad bastante activa que los crea.
En teoría, deberías poder integrarte bien con personas que hacen cosas tradicionales con archivos MAKE, ya que te permite crear un proyecto directamente a partir de uno, pero eso no funcionó tan bien como me hubiera gustado cuando lo probé.
Además de Linux, existen versiones para Mac y Windows, en caso de que las necesite.

Como un veterano de UNIX, siempre uso Emacs.Pero tiene una curva de aprendizaje bastante pronunciada y larga, por lo que no estoy seguro de poder recomendarlo a los recién llegados.

Realmente no existe un IDE "bueno" para Linux.Eclipse no es muy bueno para C/C++ (CDT está mejorando, pero aún no es muy útil).A los demás les faltan todas las funciones que estarás buscando.

Realmente es importante aprender cómo funcionan todas las herramientas individuales (gcc, make, gdb, etc.).Después de hacerlo, es posible que la forma en que Visual Studio hace las cosas le resulte muy limitante.

Consulte Netbeans, está escrito en Java, por lo que tendrá el mismo entorno independientemente de su sistema operativo y admite mucho más que solo C++.

No voy a intentar convencerte porque creo que los IDE pueden ser una elección muy personal.Para mí, mejora mi productividad al ser rápido, admitir los idiomas en los que codifico y tener las características estándar que esperarías de un IDE.

Sólo un rápido seguimiento de esta pregunta...

Ha pasado un mes desde que comencé a usar VIM como mi herramienta principal 'GUI' para programar C ++ en Linux.Al principio, la curva de aprendizaje era un poco elevada, pero después de un tiempo y con las opciones correctas activadas y scripts ejecutándose ¡Realmente lo entendí!

Me encanta la forma en que puedes darle forma a Vim para que se adapte a tus necesidades;solo agrega/cambia asignaciones clave y Vim se convierte en un 'ide' altamente productivo.

La cadena de herramientas para construir y compilar un programa C ++ en Linux también es realmente intuitivo.hacer y g ++ son el Herramientas que usará.

El depurador ddd Sin embargo, no es realmente tan bueno, pero tal vez sea porque no he tenido tiempo de dominarlo correctamente.

Entonces, para cualquiera que esté, o esté buscando un buen IDE C ++ en Linux, tal como lo estaba, su mejor apuesta se encuentra con las herramientas disponibles estándar en Linux (Vim, G ++, DDD) y realmente debería al menos intentar usar ellos, antes de buscar sonhing más ...

Por último, pero no menos importante, realmente quiero agradecer konrad Para su respuesta aquí, realmente me ayudó a encontrar mi camino en el entorno de desarrollo de Linux, ¡gracias!

También estoy no Cerrar esta pregunta, para que las personas aún puedan reaccionar o tal vez incluso agregar nuevas sugerencias o adiciones a las respuestas ya realmente agradables ...

te recomiendo leer El arte de la programación UNIX.Le permitirá utilizar el entorno como su IDE.

La respuesta más corta es:elija el "editor" que desee y luego use la consola GDB o una interfaz GDB simple para depurar su aplicación.Los depuradores vienen con IDE sofisticados como Netbeans, que apesta para C/C++.Utilizo Netbeans como editor y la consola Insight y GDB como depurador.

Con información, tienes una buena GUI y el poder puro de GDB.

Tan pronto como te acostumbres a los comandos de GDB, te empezará a encantar, ya que puedes hacer cosas que nunca podrás hacer usando una GUI.Puedes usar incluso usar Pitón como su lenguaje de script si está utilizando GDB 7 o una versión más reciente.

La mayoría de la gente aquí prestó más atención a los "Editores" de los IDE.Sin embargo, si está desarrollando un proyecto grande en C/C++, fácilmente podría dedicar más del 70% de su tiempo a los "depuradores".Los depuradores de los IDE sofisticados están al menos 10 años por detrás de Visual Studio.Por ejemplo, Netbenas tiene interfaces muy similares con Visual Studio.Pero su depurador tiene una serie de desventajas en comparación con Visual Studio.

  1. Muy lento para mostrar incluso una matriz con solo unos pocos cientos de elementos.
  2. No se resalta el valor modificado (de forma predeterminada, Visual Studio muestra los valores modificados en las ventanas de inspección en rojo)
  3. Capacidad muy limitada para mostrar memoria.
  4. No puede modificar el código fuente y luego continuar ejecutándolo.Si un error tarda mucho en solucionarse, le gustaría cambiar la fuente, aplicar los cambios en vivo y continuar ejecutando su aplicación.
  5. No puede cambiar la "siguiente declaración" para que se ejecute.En Visual Studio, puede utilizar "Establecer instrucción siguiente" para cambiar la forma en que se ejecuta su aplicación.Aunque esta función podría bloquear su aplicación si no se usa correctamente, le ahorrará mucho tiempo.Por ejemplo, si descubrió que el estado de su aplicación no es correcto, pero no sabe qué causó los problemas, es posible que desee volver a ejecutar una determinada región de sus códigos fuente sin reiniciar su aplicación.
  6. No hay soporte integrado para STL como vector, lista, deque y mapa, etc.
  7. Sin puntos de vigilancia.Debe tener esta función cuando necesite detener su aplicación justo en el momento en que se cambia una variable.Las computadoras basadas en Intel tienen puntos de vigilancia de hardware para que los puntos de vigilancia no ralenticen su sistema.Puede llevar muchas horas encontrar algunos errores difíciles de encontrar sin utilizar puntos de vigilancia."Visual Studio" llama "puntero de vigilancia" como "Punto de interrupción de datos".

La lista puede ser mucho más larga.

Me sentí tan frustrado por las desventajas de Netbeans u otros IDE similares, que comencé a aprender GDB.Descubrí que GDB en sí es muy poderoso.BGF no tiene todas las "desventajas" mencionadas anteriormente.En realidad, GDB es muy poderoso, es incluso mejor que Visual Studio en muchos sentidos.Aquí sólo os muestro un ejemplo muy sencillo.

Por ejemplo, tienes una matriz como:

struct IdAndValue
{
  int ID;
  int value;
};


IdAndValue IdAndValues[1000];

Cuando su aplicación se detiene y desea examinar los datos en IdAndValues.Por ejemplo, si desea encontrar los ordinales y valores en la matriz para un "ID" particular, puede crear un script como el siguiente:

define PrintVal 
set $i=0
printf "ID = %d\n", $arg0
while $i<1000
  if IdAndValues[$i].ID == $arg0
    printf "ordinal = %d, value = %d\n", $i, IdAndValues[$i].vaue
    set $i++
  end
end
end

Puede utilizar todas las variables de su aplicación en el contexto actual, sus propias variables (en nuestro ejemplo, es $i), los argumentos pasados ​​(en nuestro ejemplo, es $arg0) y todos los comandos de GDB (integrados o definidos por el usuario). ).

Usar ImprimirVal 1 desde el mensaje de GDB para imprimir los valores para el ID "1"

Por cierto, NetBeans viene con una consola GDB, pero al usar la consola, podrías bloquear Netbeans.Y creo que es por eso que la consola está oculta por defecto en NetBeans.

Si te gusta Eclipse para Java, te sugiero Eclipse CDT.A pesar de que el soporte de C/C++ no es tan potente como lo es para Java, aún ofrece la mayoría de las funciones.Tiene una característica interesante llamada Proyecto Gestionado que facilita el trabajo con proyectos C/C++ si no tienes experiencia con Makefiles.Pero aún puedes usar Makefiles.Codifico en C y Java y estoy muy contento con CDT.Estoy desarrollando el firmware para un dispositivo integrado en C y una aplicación en Java que se comunica con este dispositivo, y es realmente bueno usar el mismo entorno para ambos.Supongo que probablemente me haga más productivo.

Estoy usando "Geany"Me pareció bueno hasta el momento: es un IDE rápido y liviano.

Entre las características de Geany se encuentran:

  • Plegado de código
  • Guardar sesión
  • Funciones básicas del IDE, como resaltado de sintaxis, tabulaciones, sangría automática y finalización de código.
  • Gestión de proyectos sencilla
  • Sistema de construcción
  • Selector de color (sorprendentemente útil durante el desarrollo web)
  • Emulación de terminal integrada
  • consejos de llamadas
  • Listas de símbolos
  • Autocompletado de construcciones comunes (como if, else, while, etc.)

Me encanta cómo la gente pasa por alto por completo la solicitud de la pregunta original para un IDE.Linux NO es un IDE.Simplemente eso no es lo que significan esas palabras.Aprendí c y c++ usando vi y gcc y make, y no digo que no sean herramientas adecuadas, pero NO son un IDE.Incluso si utiliza herramientas más elaboradas como vim o emacs o cualquier editor sofisticado que desee, escribir comandos en una línea de comandos no es un IDE.

Además, todos sabéis que make existe como parte de Visual Studio, ¿verdad?La idea de que un IDE es "limitante" es simplemente una tontería si puedes usar el IDE para acelerar algunas cosas, pero aún así puedes recurrir a la línea de comandos cuando sea necesario.

Dicho todo esto, sugeriría, como lo han hecho varios de los anteriores, probar los bloques de código.Tiene un resaltado de código decente, una forma bastante sencilla de crear un proyecto, codificarlo, ejecutarlo, etc., que es el núcleo de un IDE real y parece bastante estable.La depuración apesta... Nunca he visto un depurador interactivo decente en ninguna variante de Linux/Unix.gdb ¿no es así?Si está acostumbrado a la depuración del estilo de Visual Studio, no tendrá suerte.

De todos modos, iré a empacar mis cosas, sé que la multitud de Linux de una sola vista gritará esto y me echará de la ciudad en poco tiempo.

make + vim + gdb = un gran IDE

me gusta bastante Definitivo++'lado.Tiene algunas características que fueron diseñadas para usar con su propia biblioteca (que, por cierto, es un conjunto de herramientas bastante bueno si no quieres comprar en GTK+ o QT) pero funciona perfectamente bien con proyectos generales de C++.Proporciona una finalización de código decente, buenos colores de sintaxis, depuración integrada y todas las demás características que admiten la mayoría de los IDE modernos.

realmente sugiero bloques de código.No es tan pesado como Eclipse y tiene soporte para proyectos de Visual Studio.

Quizás el Proyecto de herramientas Linux ¿Para Eclipse podría satisfacer sus necesidades?

El proyecto Linux Tools tiene como objetivo ofrecer un IDE de C y C++ con todas las funciones a los desarrolladores de Linux.Nos basamos en las funciones de edición y depuración de código fuente del CDT e integramos herramientas de desarrollo nativas populares como GNU Autotools, Valgrind, OProfile, RPM, SystemTap, GCov, GProf, LTTng, etc.Los proyectos actuales incluyen analizadores y visores de seguimiento LTTng, un editor RPM .spec, integración de compilación de Autotools, una herramienta de análisis de uso del montón Valgrind y herramientas de creación de perfiles de llamadas OProfile.

En Linux hay muchos IDE:

En mi experiencia, las más valiosas son Eclipse y Creador de Qt.Ambos proporcionan todas las funciones "estándar" (es decir, autocompletado, resaltado de sintaxis, depurador, integración de git).Vale la pena señalar que Eclipse también proporciona funcionalidades de refactorización, mientras que Qt Creator proporciona integración con Valgrind y soporte para implementación en objetivos remotos.

También el comercial CLión IDE Parece bastante bueno (pero no lo he usado mucho).

He oído que Anjuta es bastante hábil para los usuarios de Gnome.Jugué un poco con KDevelop y es bueno, pero le faltan funciones.Code::Blocks también es muy prometedor y ese me gusta más.

La versión 12 de Sun Studio es una descarga gratuita (soporte GRATUITO y de pago disponible). http://developers.sun.com/sunstudio/downloads/thankyou.jsp?submit=%A0FREE+Download%A0%BB%A0.

Estoy seguro de que tiene soporte para completar y depurar código, incluido el soporte para complementos en este IDE.

Sun Studio está disponible tanto para Linux como para Solaris.foros: http://developers.sun.com/sunstudio/community/forums/index.jsp.Foros de Sun Studio Linux: http://forum.sun.com/forum.jspa?forumID=855

Estaré ansioso por escuchar sus comentarios sobre esta herramienta.

BR,
~Un

Anteriormente usé Ultimate++ IDE y es bastante bueno.

Y luego me di cuenta de que simplemente no es así como se trabaja allí*, y tiré todo, pasé unos días leyendo manuales, configuré mi shell (bash), configuré un entorno GVIM, aprendí la cadena de herramientas GCC/binutils, make y gdb y vivieron felices para siempre.

Estoy mayoritariamente de acuerdo, pero el problema también es de percepción:Olvidamos lo difícil que era ser productivo en cualquier IDE (u otro entorno) elegido.Los IDE (Visual Studio, NetBeans, Eclipse) me parecen sorprendentemente engorrosos en muchos sentidos.

Como un veterano de UNIX, siempre uso Emacs.Pero eso tiene una curva de aprendizaje bastante empinada y larga, por lo que no estoy seguro de poder recomendarla a los recién llegados.

Yo apoyaría eso;uso Emacs como mi editor principal tanto en Linux como en MSW (XP2,W2K).No estoy de acuerdo con que tenga un empinado curva de aprendizaje, pero diría que debido a la gran cantidad de funciones, tiene una largo curva de aprendizaje.Puede ser productivo en poco tiempo, pero si lo desea, puede aprender nuevas funciones durante los próximos años.

Sin embargo, no espere que todas las funciones de Emacs estén disponibles en los menús desplegables, simplemente hay demasiadas funciones para encontrarlas allí.

Como mencioné, he usado GNU Emacs en MSW durante años.Y siempre funcionó bien con Visual Studio hasta que "actualicé" a 2008;ahora a veces demora muchos segundos antes de actualizar los archivos desde el disco.La razón principal para editar en la ventana VS es la función de finalización de código "Intellisense".

geany recomiendo

Aunque uso Vim, algunos de mis compañeros de trabajo usan Resbaladizo que se ve bastante bien.No estoy seguro acerca de la depuración integrada porque de todos modos no podríamos hacerlo en nuestro proyecto particular.

SlickEdit tiene un buen soporte para navegar por bases de código grandes, con referencias cruzadas y salto de etiquetas.Por supuesto, también tiene elementos básicos como resaltado de sintaxis y finalización de código.

Utilizo Eclipse CDT y Qt Creator (para aplicaciones Qt).

Esas son mis preferencias.Es una pregunta muy sugerente y hay tantas respuestas como desarrolladores.:)

Edición elegante.He usado y amado SlickEdit desde 2005, tanto en Windows como en Linux.También tengo experiencia trabajando en Visual Studio (5, 6, 2003, 2005) y solo con Emacs y línea de comandos.Utilizo SlickEdit con archivos MAKE externos, algunos de mis compañeros de equipo usan SlickEdit, otros usan Emacs/vi.No uso el depurador integrado, el control de versiones integrado, el sistema de compilación integrado:Generalmente considero que demasiada integración es un verdadero dolor.SlickEdit es robusto (muy pocos errores), rápido e intuitivo.Es como un coche alemán, un coche para conductor.

Las versiones más nuevas de SlickEdit parecen ofrecer muchas características que no me interesan, me preocupa un poco que el producto se hinche y se diluya en el futuro.Por ahora (yo uso V13.0) es genial.

Para mí Definitivo++ parece ser la mejor solución para escribir programas cross-os

Si estuvo usando vim durante mucho tiempo, entonces debería convertirlo en su IDE.Hay muchos complementos disponibles.Varios de ellos me parecieron bastante útiles y los compilé aquí, échale un vistazo.

Y mucho más en la serie de consejos y trucos de vi/vim.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top