Con una conoscenza intermedia di VB6, recentemente le persone hanno suggerito di "aggiornare" a una nuova lingua. Sto pensando a Lua: è facile, semplice e veloce. Ma non sembrano esserci informazioni sulla creazione di applicazioni simili a K3b, uTorrent, CCleaner e mIRC.È possibile utilizzare Lua per lo sviluppo di applicazioni?
risposta
Lua è una grande lingua - lo usiamo spesso per gli script in fase di sviluppo giochi perché è leggero, facile da imparare e ha buone binding C.
Tuttavia, se ci si sposta da VB6, consiglierei di imparare VB.NET o preferibilmente C#. Troverai molte più risorse di sviluppo e supporto per le biblioteche.
VB.NET è essenzialmente morto. E anche se non è morto, non è mai stato il bambino numero 1 nel mondo .NET. La sua scelta sarebbe C# (e senza script, ma bello IDE) o forse C# per l'interfaccia utente, ma Lua per lo scripting del suo comportamento dinamico. Vado per Qt + Lua. – akauppi
@akauppi. Sarei d'accordo Personalmente odio VB.NET, ho pensato che potrebbe essere una buona transizione come già conosce VB6. Per gli script, personalmente utilizzerei Python. Ha un sacco di opzioni della GUI come wxPython ecc. – zebrabox
Lua non è LUA. Si prega di consultare http://www.lua.org/about.html#name –
NO.
Il motivo è continuità (errore ortografico?). Troverai pochissimi sviluppatori per un tale linguaggio, e così avrai dei problemi quando un team continua il lavoro dopo di te, o stai bloccando il tuo utente.
Anche se si trovano sviluppatori, IMHO saranno molto più costosi.
IMHO, la scelta di un "più popolare" linguaggio/tecnologia è un vantaggio: più-meno costosi sviluppatori.
Penso che ogni buon sviluppatore possa imparare Lua entro un paio di settimane. Conosco un caso in cui agli sviluppatori ingaggiati per il sollevamento pesante C/Unix è stato detto, "A proposito, abbiamo anche un linguaggio di scripting incorporato in questo prodotto" e non abbiamo avuto problemi ad aggiornarci. –
I secondo tkadlubo su questo. – akauppi
La cosa triste è che sono d'accordo anche con tkadlubo, i veri programmatori non avranno problemi ad imparare una buona lingua in poche settimane. Ma padroneggiarlo per creare un buon progetto? ci vogliono diversi mesi per imparare una lingua. – elcuco
Lua può può essere utilizzato per lo sviluppo di applicazioni, ma si dovrà eseguire una certa quantità di lavoro infrastruttura: ad esempio legandosi a toolkit come wx o Qt per la grafica. Anche se amo le lingue dinamiche, non lo consiglierei nel tuo caso.
Se arrivate da VB6 io consiglierei di C#, VB.NET, o Java, in questo ordine. Ognuno di questi è molto più potente di VB6, ma dovrebbe essere abbastanza familiare da farti diventare rapidamente produttivo.
Penso che ci fosse un binding Qt menzionato da qualche parte, ultimamente. Lo darei un'occhiata. http://torch5.sourceforge.net/manual/qt/index.html – akauppi
Lua è piuttosto "leggero", che presenta vantaggi e svantaggi: se stai costruendo un'intera app, eseguirai una grande quantità di fondamenta, ponendo te stesso, anziché concentrarti sul livello di applicazione sviluppo. Suggerirei un linguaggio dinamico più ricco come Python (il mio preferito) o Ruby (particolarmente popolare per le app Web, ma non solo), in questo modo sarete in grado di trovare molti strumenti e infrastrutture, standard ricco librerie, estensioni di terze parti, framework utilizzabili per vari tipi di app, ecc., già costruiti per te.
Lua è un linguaggio facile da imparare. Ma impara C# o Java e incorpora Lua come linguaggio di scripting per la tua applicazione, se vuoi.
Oppure basta imparare Python.
Sì, è possibile. Ed è facile provarlo su un piccolo progetto.
IMHO, è ideale per la costruzione di piccole applicazioni con GUI quando accoppiato con un discreto toolkit. Dal momento che hai citato Visual Basic, suppongo che ti stai concentrando su Windows per ora. In tal caso, controlla il pacchetto Lua for Windows.
Lua per Windows integra il nucleo linguaggio Lua con un gran numero di moduli di estensione utili, ei pacchetti su con un installatore di Windows corretta. Include una versione di SCiTE editor con colorazione della sintassi per Lua e un debugger integrato. Include inoltre i binding per entrambi i toolkit wxWidgets e IUP GUI.
Ho usato Lua con IUP per creare diverse utilità. Insieme, è possibile costruire applicazioni abbastanza elaborate senza ricorrere al codice compilato.
Un settore in cui Lua fallisce poiché l'unica lingua dell'applicazione fuori dalla confezione è l'imballaggio. Richiede ancora una discreta esperienza con il packaging delle applicazioni Windows per produrre un programma di installazione che fornisca tutto ciò di cui l'utente ha bisogno in un modo che renda l'uso di Lua come il linguaggio principale irrilevante per loro.
Tuttavia, come molti progetti commerciali hanno dimostrato, questo è un problema che può essere affrontato. Di solito finisco per compilare un piccolo file EXE che può avere la sua icona predefinita e la sua risorsa di versione che carica e inizializza il core Lua e rimanda agli script Lua per il resto dell'applicazione. Quello combinato con una DLL o due che implementa qualsiasi funzionalità che la profilazione ha mostrato dovrebbe essere fatto in un ambiente compilato e sei a posto.
Fortunatamente, anche se si finisce per consegnare la propria copia di Lua, si scoprirà che l'intera installazione è abbastanza piccola. Inoltre, il linguaggio di base non presta attenzione alle funzionalità di Windows come il Registro di sistema, quindi è facile avere diverse applicazioni che utilizzano Lua, anche se sono versioni diverse.
Lua è attiva da oltre 10 anni e ha una comunità di utenti attiva. Inoltre, non è una lingua difficile da imparare e imparare, quindi IMHO non c'è davvero alcun problema nel trovare persone che possano contribuire a un team di progetto.
Amen. Esistono anche grandi progetti di app desktop che utilizzano Lua - vedi [Textadept] (http://foicica.com/textadept/) e [ZeroBraneStudio] (https://github.com/pkulchenko/ZeroBraneStudio). Ci sono probabilmente tonnellate di più piccoli là fuori che sono più come wrapper di utilità. – 10basetom
troverete un elenco qui di diversi progetti che utilizzano Lua, una delle più rilevante è probabilmente Adobe Photoshop Lightroom, di cui il 40% è scritto in Lua: Lua Uses
- 1. Quale server Web utilizzare per lo sviluppo Web Lua
- 2. Approccio per lo sviluppo di applicazioni disconnesse
- 3. È consigliabile utilizzare solo GCM per lo sviluppo di applicazioni di chat per Android Xitching?
- 4. È possibile lo sviluppo di app "indie" per Xbox 360?
- 5. Possibile sviluppo multipiattaforma di applicazioni Watch/Wearable?
- 6. Linee guida per lo sviluppo di applicazioni GIS
- 7. Utilizzo di python per lo sviluppo di applicazioni Web
- 8. Vaadin per lo sviluppo di applicazioni Web - Pochi dubbi
- 9. consigliato IDE per lo sviluppo di Piloni applicazioni
- 10. Google utilizza Ruby per lo sviluppo di applicazioni?
- 11. IDE migliore per lo sviluppo di applicazioni desktop Java
- 12. Qual è lo strumento migliore per lo sviluppo di applicazioni Blackberry?
- 13. Come utilizzare VIM per lo sviluppo .Net
- 14. È possibile utilizzare il framework Spring per le applicazioni batch?
- 15. Posso utilizzare https per lo sviluppo locale?
- 16. È possibile utilizzare Scala per scrivere applicazioni GWT?
- 17. libGDX è adatto allo sviluppo di applicazioni solo per desktop?
- 18. Sviluppo di applicazioni per chat Android
- 19. È possibile utilizzare Jetty come server applicazioni Java EE leggero?
- 20. Simula + = in Lua, è possibile?
- 21. È possibile utilizzare il codice lua in Unity3D
- 22. qual è la dimensione dell'immagine (risoluzione) per lo sviluppo di applicazioni per iPad 3?
- 23. Come progettare/pianificare lo sviluppo di applicazioni Web?
- 24. Kernel utente lo sviluppo di applicazioni di I/O
- 25. Haskell per lo sviluppo mobile
- 26. Sviluppo applicazioni per Windows CE
- 27. È possibile utilizzare EJB 3.1 in applicazioni desktop?
- 28. È possibile utilizzare Spring MVC per implementare il pattern MVC nelle applicazioni Swing?
- 29. Come posso utilizzare lo sviluppo di TFS per iPhone?
- 30. Qual è l'ecosistema per lo sviluppo web di Haskell?
Anche se non so molto di lua, certamente può essere usato per sviluppare applicazioni: http://en.wikipedia.org/wiki/Lua_(programming_language)#Applications – bedwyr