¿Qué lenguaje de programación se recomienda para construir un software de edición de video en línea / fuera de línea? ¿Cuánto tiempo llevaría programar una aplicación de este tipo?

Necesitaría más de un idioma para un proyecto como este, ya que necesitaría combinar las mejores fortalezas de varios idiomas diferentes.

En primer lugar, la edición y manejo de archivos de video, lo que requiere rutinas muy rápidas. También necesita poder manejar muy bien la memoria. El lenguaje C ++ funcionaría muy bien aquí, aunque podría preferir ir aún más bajo y usar Standard C en su lugar. Usaría el Estándar C para hacer una biblioteca compartida con docenas de funciones de edición. Esta biblioteca se puede llamar desde varios lenguajes de programación diferentes.

Para la solución del servidor web, necesitaría envolver la biblioteca C en una solución mejor. Python y PHP pueden hacer uso directo de las bibliotecas C, por lo que estos dos lenguajes serían prácticos. Sin embargo, C # con ASP.NET también es una solución excelente y proporciona una solución “más limpia” que PHP y tiene más funcionalidad que Python o PHP. Esto se debe a que puede escribir módulos adicionales en C # que también se pueden llamar desde una aplicación de escritorio o una aplicación móvil que se escriben en C #. Por lo tanto, tendría el menor número de idiomas.

Si usa PHP o Python, aún necesita crear aplicaciones de escritorio y aplicaciones móviles. Como Apple depende de Swift u Objective-C y Android en Java, ya tienes varios idiomas que necesitarás aprender. El escritorio también se vuelve problemático, aunque Python también podría usarse para hacer aplicaciones de escritorio. Sin embargo, prefiero usar C ++ que Python.

Java también sería una buena alternativa, pero Java no es compatible con dispositivos móviles de Apple y apenas es compatible con Mac OS X, ya que requiere una descarga e instalación por separado. A Java también le disgustan un poco los sistemas de escritorio y necesitaría convertirse para usarse en sistemas Android, aunque eso es parte del desarrollo de aplicaciones de Android. Pero como Java podría usarse para desarrollar el servidor back-end del servidor web, aún podría ser una buena alternativa.

¡Pero también existe la opción de seguir usando C ++ para el servidor de servidor web, para la aplicación de escritorio y para las aplicaciones móviles! Muchas personas no se dan cuenta de esto, pero puede usar C / C ++ para desarrollar aplicaciones para Android y Apple, si sabe lo que está haciendo. En cuanto al escritorio, puede usar C ++ para Linux, Windows y Mac OS X y si realmente desea que su aplicación sea lo más portátil posible, escríbala en Standard C, ya que podría manejar casi todos sistema operativo en existencia.

¿No me crees cuando digo que el Estándar C es altamente portátil? Luego, visite la página de inicio de NetHack, que es solo un juego de computadora que tiene décadas de antigüedad y que todavía funciona en numerosas plataformas diferentes. De todos modos, es de código abierto …

Pero programar en el Estándar C significa que su código será extremadamente detallado. Es posible que desee que su código sea más compacto, por lo que C ++ es una mejor opción para las aplicaciones. C # es mejor si la versión web es más importante que la versión de escritorio. trate de evitar la necesidad de aprender media docena de idiomas diferentes …

En línea o fuera de línea, este proyecto requiere una cosa segura: velocidad.

C ++ es un lenguaje que me viene a la mente.

Debe hacer el back-end en c ++ y el script Java en el front-end.

Pero intenta buscar licuadora. Es un editor y modelado 3D hecho en python para que el lenguaje también pueda funcionar bien.

Solo asegúrese de que para este proyecto necesita aprovechar el hardware al máximo. Entonces, no hay idiomas que necesiten su propia VM para ejecutarse.

Es un gran proyecto. Lo codificaría lo codificaría en el servidor html5 + ffmpeg, etc.