Имея промежуточное знание VB6, недавно люди предлагали «обновить» на новый язык. Я думаю о Lua - это легко, просто и быстро. Но, похоже, нет никакой информации о создании приложений, аналогичных K3b, uTorrent, CCleaner и mIRC.Может ли Lua использоваться для разработки приложений?
ответ
Lua - отличный язык - мы часто используем его для написания сценариев в разработке игр, потому что он легкий, легкий в освоении и имеющий хорошие привязки C.
Однако, если вы перейдете от VB6, я бы рекомендовал изучить VB.NET или, желательно, C#. Вы найдете намного больше ресурсов для разработки и поддержки библиотек.
VB.NET по существу мертв. И даже если не мертв, он никогда не был ребенком №1 в мире .NET. Его выбором будет C# (и отсутствие скриптов, но хорошая IDE) или, может быть, C# для пользовательского интерфейса, но Lua для написания его динамического поведения. Я бы пошел на Qt + Lua. – akauppi
@akauppi. Соглашусь. Я лично ненавижу VB.NET, просто думал, что это будет хороший переход, поскольку он уже знает VB6. Для сценариев я лично использовал Python. В нем есть кучи графических интерфейсов, таких как wxPython и т. Д. – zebrabox
Lua не LUA. Пожалуйста, см. Http://www.lua.org/about.html#name –
NO.
Причина, непреложность (опечатка?). Вы найдете очень мало разработчиков для такого языка, и, таким образом, вы столкнетесь с проблемами, когда команда продолжит работу после вас или вы заблокируете своего пользователя.
Даже если вы найдете разработчиков, имхо им будет намного дороже.
IMHO, выбор «более популярного» языка/технологии - это преимущество: более дешевые разработчики.
Я думаю, что любой хороший разработчик может изучить Lua через пару недель. Я знаю случай, когда разработчики, нанятые для тяжелой атлетики C/Unix, были рассказаны: «Кстати, у нас также есть язык сценариев, встроенный в этот продукт», и у него не было проблем с тем, чтобы ускориться. –
I второй tkadlubo на этом. – akauppi
Печально то, что я также согласен с tkadlubo, у реальных программистов не будет проблем с изучением хорошего языка за несколько недель. Но освоить его, чтобы создать хороший проект? Изучение языка занимает несколько месяцев. – elcuco
Lua can можно использовать для разработки приложений, но вам нужно будет выполнить определенную работу в области инфраструктуры: например, привязка к инструментам типа wx или Qt для графики. Насколько я люблю динамические языки, я бы не рекомендовал его в вашем случае.
Если вы приехали из VB6, я бы рекомендовал C#, VB.NET или Java в этом порядке. Каждый из них намного более мощный, чем VB6, но должен быть достаточно знаком, чтобы вы быстро стали продуктивными.
Я думаю, что в последнее время упоминалась привязка Qt. Я бы посмотрел на это. http://torch5.sourceforge.net/manual/qt/index.html – akauppi
Lua - довольно «легкий», который имеет свои преимущества и недостатки - если вы строите целое приложение, вы будете делать большую часть закладок, вместо того, чтобы сосредоточиться на уровне приложений развитие. Я бы предложил более богатый динамический язык, такой как Python (мой личный фаворит) или Ruby (особенно популярный для веб-приложений, но не ограничиваясь ими) - таким образом вы сможете найти множество инструментов и инфраструктуры, богатый стандарт библиотеки, сторонние расширения, используемые рамки для различных видов приложений и т. д. и т. д., уже созданных для вас.
Lua - это язык, который легко изучить. Но изучите C# или Java и включите Lua в качестве языка сценариев для своего приложения, если хотите.
Или просто изучите Python.
Да, это возможно. И легко дать ему попробовать небольшой проект.
IMHO, он идеально подходит для создания небольших приложений с графическими интерфейсами в сочетании с достойным набором инструментальных средств. Поскольку вы упомянули Visual Basic, я предполагаю, что вы сейчас концентрируетесь на Windows. В этом случае проверьте комплект Lua for Windows.
Lua for Windows объединяет ядро языка Lua с большим количеством полезных модулей расширения и упаковывает его с помощью соответствующего установщика Windows. Он включает в себя версию SCiTE editor, которая имеет синтаксическую раскраску для Lua и интегрированный отладчик. Он также включает в себя привязки для наборов инструментов GUI wxWidgets и IUP.
Я использовал Lua с IUP для создания нескольких утилит. Вместе вы можете создавать довольно сложные приложения, не прибегая к скомпилированному коду.
Одна из областей, где Lua терпит неудачу, поскольку единственный язык приложения из коробки - это упаковка. Он по-прежнему требует достаточного опыта работы с упаковкой приложений Windows для создания установщика, который обеспечивает все, что требуется вашим конечным пользователям, таким образом, чтобы ваше использование Lua в качестве основного языка не имело к ним отношения.
Однако, как продемонстрировали многие коммерческие проекты, это проблема, с которой можно справиться. Я обычно заканчиваю компиляцию небольшого EXE-файла, который может иметь свой собственный значок и ресурс по умолчанию, который загружает и инициализирует ядро Lua и отсылает сценарии Lua для остальной части приложения. Это в сочетании с DLL или двумя, которые реализуют любые функции, показанные профилированием, должны выполняться в скомпилированной среде, и вам хорошо идти.
К счастью, даже если вы закончите доставку своей копии Lua, вы обнаружите, что вся установка довольно маленькая. Кроме того, основной язык не обращает внимания на такие функции Windows, как Registry, поэтому легко иметь несколько приложений, которые все используют Lua, даже если они разные версии.
Lua существует уже более 10 лет и имеет активное сообщество пользователей. Кроме того, это не сложный язык, чтобы забрать и учиться, поэтому ИМХО не существует никакой проблемы с поиском людей, которые могут внести вклад в команду проекта.
Аминь. Есть даже большие проекты для настольных приложений, которые используют Lua - см. [Textadept] (http://foicica.com/textadept/) и [ZeroBraneStudio] (https://github.com/pkulchenko/ZeroBraneStudio). Там, вероятно, есть тонны меньших, которые больше похожи на обертки. – 10basetom
Вы найдете здесь список различных проектов с использованием Lua, один из наиболее актуальных, вероятно, Adobe Photoshop Lightroom, из которых 40% написано в Lua: Lua Uses
Хотя я не знаю много о Lua, он, безусловно, может быть использован для разработки приложений: http://en.wikipedia.org/wiki/Lua_(programming_language)#Applications – bedwyr