Quiero escribir un IDE para Python. ¿Cuál es la mejor opción, C ++ o C #? ¿Y Visual Studio es un buen entorno para construir mi software (IDE)?

Una de las dificultades que probablemente enfrentará es cómo construir la GUI, por lo que me centraré en esto primero:

C ++ le ofrece una amplia gama de bibliotecas GUI como GTK o QT. Ambos son compatibles con Linux, Windows y OSX, tenga esto en cuenta cuando pasemos a la siguiente parte.

C # le ofrece cierta diversidad con los kits de herramientas mono gui o libs como eto.

Pasemos al siguiente tema, el soporte multiplataforma.

C ++ tiene compiladores para todo, desde tostadoras hasta mainframes y cohetes, pero configurar todos esos scripts de compilación puede ser bastante difícil.

C # (Mono) se ha portado a osx y Linux, por lo que tampoco es un problema.

Entonces, ¿qué idioma debes elegir?

Me gusta C #, es un lenguaje genial y muy útil para Windows, así que si planeas admitir principalmente Windows, elige C # (la multiplataforma es posible pero mono no es estándar en OSx (?) Y Linux)

C ++ es muy poderoso y especialmente QT podría impulsar su proyecto. Entonces, si está buscando código multiplataforma, vaya a C ++.

Como está preguntando si debe usar VS o no, probablemente esté en Windows, así que sí, debe elegir VS.

Si va a construir un IDE para Python, me parece deshonesto construirlo en otra cosa que no sea Python, utilizando cualquier cosa que no sea el IDE que va a construir.

Si no puede molestarse en usar su propio idioma y software, ¿por qué alguien más debería hacerlo?

Además, necesitará acceso a un entorno Python en todo momento, para pedirle que analice y ejecute la fuente por usted. No es que no puedas interactuar con Python desde prácticamente cualquier otro idioma, pero …

Y de todos modos, tendrá problemas mucho mayores que la elección del lenguaje de programación y el IDE; por ejemplo, en inglés simple, ¿cómo se autocompleta para un idioma que permite agregar y eliminar propiedades dinámicamente en tiempo de ejecución, de una manera que no ser fácil de encontrar estáticamente? Por ejemplo, las propiedades de un objeto pueden provenir de una base de datos SQL en algún lugar, ¿cómo se maneja eso? Además, ¿cómo refactorizar de forma segura, por ejemplo, cambiar el nombre de un método, cuando no puede estar seguro de que el nombre en cuestión no está contenido en una cadena?

Lo anterior son los problemas reales. La elección de idioma e IDE no es 🙂

No sé mucho sobre los editores de C ++, he trabajado con Visual C usando Visual Studio. Sugeriría trabajar con C ++ / C # pero hacerlo usando Visual Studio. Sería de gran ayuda.

Creo que mucho mejor c # más que c o c ++. Porque c # tiene muchas funciones incorporadas. Si está desarrollando ide, necesita tener una estructura de datos y conocimientos de algoritmos.

  1. Visual Studio es lo último que querría usar para crear incluso un editor de texto. (VS no es un marco de todos modos).
  2. Si quieres hacerlo de la manera correcta, usa Python para construirlo.
  3. No use marcos, escriba código.
  4. Si está decidido a escribir un lenguaje que no sea Python, la mejor opción dependerá del entorno en el que se está construyendo y del entorno para el que se está construyendo.