Является ли Lua такой же силой, как Java на Android, или есть какие-то ограничения?

Поэтому я пытаюсь проникнуть в разработку приложений для Android, и повсюду в учебниках говорится, что Java является «основным» языком для разработки Android. И я также узнал, что Lua можно использовать тоже. Мой вопрос в том, может ли Lua создавать приложения такого же класса, как Java, или мне лучше изучать Java?

Дело в том, что все, что я нашел, упоминает Lua как вторичный язык, а затем я обнаружил, что Lua легче освоить, чем Java, но приложения, созданные с использованием Corona SDK, в основном предназначены для игр. Так могут ли быть разработаны обычные приложения, или я должен отправиться в Java?

Я хочу спросить, могут ли приложения, созданные с помощью LUA, быть такими же хорошими, как приложения, созданные с помощью Java, или сделать только упрощенные и менее продвинутые приложения с помощью LUA? В принципе, я имел в виду, что LUA предлагает те же функции и функции, когда речь идет о программировании для Android?

Я бы делал такие приложения, как CCleaner, uTorrent, а не игры.

У меня также есть опыт работы в C.

Большое спасибо за ответ.

Я бы сказал, попробуйте оба языка и возьмите тот, с которым вам больше всего нравится.

Но, чтобы ответить на ваш вопрос, вы действительно можете использовать приложения Android (и iOS, Windows Phone), используя Corona SDK. Его библиотека UI очень эффективна и позволит вам создавать все приложения, которые вы хотите.

Еще одна действительно интересная структура Lua – LÖVE (или Love2D). Это становится все более популярным, так как многие используют его для создания прототипов (пробок) или даже более крупных проектов (посмотрите на Wanderer on Kickstarter).

Хотя LÖVE официально официально имеет настольные сборки (OS / X, Windows, Linux), созданные сообществом порты, которые позволяют экспортировать и на многие другие платформы. К ним относятся iOS, Android, Windows Phone и даже портативные консоли, такие как 3DS и PS Vita. Вы можете написать свое приложение один раз и экспортировать на все эти платформы.

LÖVE выполнен на C / C ++ и полностью открыт с открытым исходным кодом. При этом, если у вас есть фон C, вы сможете внедрять новые функции, если вам кажется, что чего-то не хватает.

Я настоятельно рекомендую вам проверить это на https://love2d.org

На самом деле дело не в том, что Lua предоставляет те же функции и функции. Вы должны спросить, предоставляют ли CoronaSDK те же функции и функции.

Речь идет не о языке, а о структуре.

Going native (Java) всегда имеет лучшую производительность. CoronaSDK – это библиотека, построенная на ней. Он не имеет всех функций и функций. Поэтому, если вы хотите создавать приложения того же класса (производительность / функции) в качестве родных приложений через CoronaSDK, вы не можете.

Но это не значит, что вы не можете делать хорошие приложения через CoronaSDK, потому что есть много вещей, которые следует учитывать, если приложение хорошее.

Я использую CoronaSDK почти 2 года, но теперь я изучаю Swift для создания собственных приложений для iOS. Причина, по которой я перехожу на Swift, точно такая же, как и ваша забота. CoronaSDK не может создавать приложения с тем же классом, что и родные приложения. Есть много сложных функций, которые мне нужны, но CoronaSDK не предоставляет. А также, я хочу иметь лучшую производительность.

Однако, если я хочу строить 2D-игры, я по-прежнему работаю с CoronaSDK, потому что у него есть силы для создания быстрых прототипов и для большинства игр CoronaSDK покрывает большинство функций, которые вам нужны, и вы можете быстрее строить в целом.

Поэтому, если ваша основная цель заключается в создании бизнес-приложений, я бы сказал, что вы работаете на родном языке (Java в вашем случае). И если вы хотите построить 2D-игры, CoronaSDK – хороший выбор. Выучить Lua очень легко, и вы можете строить игры быстрее, по крайней мере, в начале.