2009-06-27 12 views
9

Con conocimientos intermedios de VB6, recientemente las personas han sugerido "actualizar" a un nuevo idioma. Estoy pensando en Lua, es fácil, simple y rápido. Sin embargo, no parece haber ninguna infomación sobre la creación de aplicaciones similares a K3b, uTorrent, CCleaner y mIRC.¿Se puede usar Lua para el desarrollo de aplicaciones?

+1

Aunque no sé mucho acerca de lua, sin duda se puede utilizar para desarrollar aplicaciones: http://en.wikipedia.org/wiki/Lua_(programming_language)#Applications – bedwyr

Respuesta

5

Lua es un lenguaje excelente: lo usamos con frecuencia para crear secuencias de comandos en el desarrollo de juegos porque es liviano, fácil de aprender y tiene buenas encuadernaciones en C.
Sin embargo, si te estás moviendo de VB6, te recomendaría aprender VB.NET o preferiblemente C#. Encontrará muchos más recursos de desarrollo y soporte de biblioteca.

+1

VB.NET está esencialmente muerto. E incluso si no está muerto, nunca fue el hijo # 1 en el mundo .NET. Su elección sería C# (y sin secuencias de comandos, pero IDE agradable) o tal vez C# para la interfaz de usuario, pero Lua para guiones de su comportamiento dinámico. Yo iría por Qt + Lua. – akauppi

+0

@akauppi. Estoy de acuerdo. Personalmente odio VB.NET, solo pensé que podría ser una buena transición, ya que él ya conoce VB6. Para las secuencias de comandos, yo personalmente usaría Python. Tiene un montón de opciones de GUI como wxPython, etc. – zebrabox

+1

Lua no es LUA. Por favor, consulte http://www.lua.org/about.html#name –

-4

NO.

El motivo, ¿es la continuidad (error ortográfico?). Encontrará muy pocos desarrolladores para este tipo de lenguaje y, por lo tanto, tendrá problemas cuando un equipo continúe el trabajo después de usted, o le esté bloqueando el usuario.

Incluso si usted encuentra los desarrolladores, en mi humilde opinión que será mucho más caro.

En mi humilde opinión, elegir un idioma/tecnología "más popular" es un beneficio: desarrolladores más baratos.

+8

. Creo que cualquier buen desarrollador puede aprender Lua en un par de semanas. Conozco un caso en el que los desarrolladores contratados para el levantamiento de pesas C/Unix dijeron: Por cierto, también tenemos un lenguaje de scripting incorporado en este producto '' y no tuvimos problemas para ponernos al día. –

+0

I segundo tkadlubo en esto. – akauppi

+0

Lo triste es que también estoy de acuerdo con tkadlubo, los programadores reales no tendrán problemas para aprender un buen idioma en unas pocas semanas. ¿Pero dominarlo para crear un buen proyecto? lleva varios meses aprender un idioma. – elcuco

3

Lua puede utilizar para el desarrollo de aplicaciones, pero tendrá que hacer una cierta cantidad de trabajo de infraestructura: vinculando a kits de herramientas como wx o Qt para gráficos, por ejemplo. Por mucho que ame los lenguajes dinámicos, no lo recomendaría en su caso.

Si vienes de VB6 recomendaría C#, VB.NET o Java, en ese orden. Cada uno es mucho más poderoso que VB6, pero debe ser lo suficientemente familiar como para que pueda ser productivo rápidamente.

+1

Creo que hubo un enlace Qt mencionado en alguna parte, últimamente. Echaré un vistazo a eso. http://torch5.sourceforge.net/manual/qt/index.html – akauppi

8

Lua es bastante "liviana", lo que tiene ventajas y desventajas: si está construyendo una aplicación completa, estará realizando una gran cantidad de cimientos, en lugar de centrarse en el nivel de aplicación desarrollo. Sugeriría un lenguaje dinámico más rico como Python (mi favorito) o Ruby (especialmente popular para aplicaciones web, pero no limitado a eso) - de esta manera podrás encontrar muchas herramientas e infraestructura, estándar rico bibliotecas, extensiones de terceros, marcos utilizables para varios tipos de aplicaciones, etc., etc. ya desarrollados para usted.

2

Lua es un lenguaje que es fácil de aprender. Pero aprenda C# o Java e incruste Lua como lenguaje de scripting para su aplicación, si lo desea.

O simplemente aprende Python.

24

Sí, puede. Y es fácil probarlo en un proyecto pequeño.

En mi humilde opinión, es ideal para la construcción de pequeñas aplicaciones con GUI cuando se combina con un juego de herramientas decente. Como mencionó Visual Basic, supongo que se está concentrando en Windows por ahora. En ese caso, consulte el paquete Lua for Windows.

Lua para Windows integra el núcleo del idioma Lua con una gran cantidad de módulos de extensión útiles, y lo empaqueta con un instalador de Windows adecuado. Incluye una versión del SCiTE editor que tiene colorante de sintaxis para Lua y un depurador integrado. También incluye enlaces para los kits de herramientas GUI wxWidgets y IUP.

he utilizado Lua con IUP para construir varias utilidades. Juntos, es posible construir aplicaciones bastante elaboradas sin recurrir al código compilado.

Un área donde falla Lua, ya que el único idioma de aplicación que se saca de la caja es el embalaje. Todavía requiere una buena cantidad de experiencia con el paquete de aplicaciones de Windows para producir un instalador que proporciona todo lo que su usuario final necesita de una manera que hace que el uso de Lua como el lenguaje principal sea irrelevante para ellos.

Sin embargo, como muchos proyectos comerciales han demostrado, este es un problema que puede abordarse. Normalmente termino compilando un pequeño archivo EXE que puede tener su propio ícono predeterminado y recurso de versión que carga e inicializa el núcleo Lua y difiere a los guiones Lua para el resto de la aplicación. Eso combinado con una DLL o dos que implemente cualquier funcionalidad que los perfiles hayan demostrado debe hacerse en un entorno compilado y listo.

Afortunadamente, incluso si termina entregando su propia copia de Lua, verá que toda la instalación es bastante pequeña. Además, el lenguaje central no presta atención a las características de Windows, como el Registro, por lo que es fácil tener varias aplicaciones que utilicen Lua, incluso si son versiones diferentes.

Lua ha existido por más de 10 años, y tiene una comunidad de usuarios activa. Además, no es un idioma difícil de aprender y aprender, por lo que en mi humilde opinión, realmente no hay ningún problema para encontrar personas que puedan contribuir con un equipo de proyecto.

+2

Amen. Incluso hay grandes proyectos de aplicaciones de escritorio que utilizan Lua: consulte [Textadept] (http://foicica.com/textadept/) y [ZeroBraneStudio] (https://github.com/pkulchenko/ZeroBraneStudio). Probablemente hay toneladas de más pequeñas que se parecen más a las envolturas de las herramientas. – 10basetom

4

Usted encontrará aquí una lista de los diversos proyectos que utilizan Lua, uno de los más relevantes es, probablemente, Adobe Photoshop Lightroom, de los cuales el 40% está escrito en Lua: Lua Uses

Cuestiones relacionadas