Quiero hacer un software que requiera algunos diagramas y gráficos 2D. Es un software profesional con un mercado muy limitado, por lo que estoy dirigido a PC en lugar de teléfonos inteligentes. ¿Qué idioma debo usar para programarlo?

Gracias a su idea de entrar en el desarrollo de software.

Según la descripción dada por usted, puedo interpretar que usted es nuevo en el desarrollo y que no ha tenido ninguna experiencia con el desarrollo de software antes. Entonces déjenme anotar mi respuesta en un sentido figurado.

1. Cuando dijo que iba a apuntar a la audiencia de PC, creo que se refería a una aplicación independiente que se ejecuta como una aplicación nativa del sistema. Sí, eso es fácil de desarrollar y tiene abundantes recursos en línea, pero tendrá opciones y características limitadas según el idioma que elija, ya sea .NET o JAVA. Y las aplicaciones independientes se han convertido en la vieja escuela hoy en día. Puede utilizar el poder de la web y desarrollar una aplicación web, con HTML5, CSS3 y Scripts en el front-end y su lenguaje de programación favorito en el back-end, como JAVA o .NET. De esta manera, puede proporcionar capacidades de GUI muy potentes para sus características 2D.

2. También creo que quieres aprender algo de este proyecto que tomas. Y HTML5, CSS3, JS no son ciencia espacial. Será fácil para ti si ya tienes experiencia en informática.

3. Según el mercado actual, las aplicaciones web son más atractivas que las aplicaciones de escritorio independientes. No solo su aplicación necesitará solo un navegador web para ejecutarse, sino que también se ejecutará en diferentes plataformas como Windows, Mac, Linux, Android, iOS, etc.

4. Cuando su aplicación se vuelva realmente popular y bienvenida por la comunidad en general, será más fácil mejorarla si se trata de una aplicación web, ya que implementar actualizaciones y dependencias no será una tarea burlona.

5. Y mencionó que no desea dependencias como JDK o .NET. Cada aplicación Java necesita un JRE (el que se descarga cuando hace clic en “este Java necesita ejecutar, descargue la última versión”). Y todas las aplicaciones .NET (VB, c #, etc.) necesitan que se instale el cliente .NET. No puede desarrollar una aplicación que pueda ejecutarse sin estas dependencias porque así es como se crean lenguajes de alto nivel como Java y .NET o cualquier otro lenguaje. Necesitan un entorno de ejecución. El entorno de ejecución convierte el código que escribe en el lenguaje del sistema, digamos 0 y 1.

No quiero entrar en detalles. Pero si realmente desea desarrollar una aplicación independiente para Windows, vaya con .NET. Da características ricas de interfaz de usuario.

Para comenzar con el desarrollo de aplicaciones web, comience con un tutorial “Aplicación web Java y servlets”. Buena suerte.

En lugar de crear una aplicación de escritorio usando vb o java, ¿por qué no creas una aplicación web y la portas usando awesomium? Puede crear enlaces nativos en C ++ y cargar su aplicación web en awesomium en el que puede usar muchos digrams y gráficos 2D y 3D utilizando bibliotecas javascript como d3js. Google al respecto o léalo en el siguiente enlace
Awesomium – Motor de interfaz de usuario HTML