Programowanie na Androida bez użycia Java [zamknięte]

9

Jak sugeruje tytuł tego pytania, z niecierpliwością czekam na rozwój aplikacji na platformę Android bez korzystania z Java . To nie znaczy, że mam wendetę przeciwko temu pięknemu językowi lub nie wiem, jak tworzyć aplikacje w Javie. Zastanawiam się jednak, czy moje aplikacje można opracowywać tylko przy użyciu XML, JavaScript i Ajax.

  • Czy nadal muszę polegać na Javie?
  • Czy będą jakieś wady związane z nieużywaniem Javy?
  • Czy nadal będę w stanie rozszerzyć moje aplikacje w przyszłości?
  • Czy zadaję tutaj naprawdę głupie pytanie?

Prosimy mi pomóc.

Edytować:

Aplikacja, nad którą pracuję (wciąż na tablicy, potrzebuję opinii eksperta na temat tego podejścia) po prostu pobierze wiadomości z różnych źródeł wiadomości i wyświetli się jej użytkownikowi.

FaizanRabbani
źródło
1
@gnat Myślę, że ten link może pomóc w zrozumieniu mojego pytania. meta.stackoverflow.com/questions/254570/…
FaizanRabbani
3
pytanie jest bezpośrednie i jasne
Ali
2
Pytanie jest jasne, ale nie pokazuje żadnego wysiłku badawczego. Proste wyszukiwanie w Google dla „Androida bez java” pokazuje wiele możliwości.
GrandmasterB
1
fakt, że pytanie jest źle dopasowane do SO, nie magicznie czyni go dobrym dla Programistów. Czy sprawdziłeś meta wytyczne programistów, o których mowa w poprzednim komentarzu?
komar
1
@FaizanRabbani Stack Exchange ogólnie, a szczególnie SO / Programiści nie nadają się do wyrażania opinii. Idealnie byłoby, gdyby pytania były obiektywne z odpowiedziami, które są poprawne lub nie. Pytanie o przemyślenia, ankiety itp. Nie jest odpowiednie dla tego formatu.

Odpowiedzi:

2

Kasa Aplikacja Ionic i TelerikBuilder .

Jeśli bardziej docierasz do drobiazgów i robisz wszystko na własną rękę, sprawdź Cordova, która jest podstawą dwóch wyżej wymienionych.

Czy nadal muszę polegać na Javie?

Nie w większości przypadków.

Czy będą jakieś wady związane z nieużywaniem Javy?

  • nie korzystasz z natywnej aplikacji
  • jesteś ograniczony przez wtyczki dostępne w używanym frameworku
  • i mały problem z wydajnością

Czy nadal będę w stanie rozszerzyć moje aplikacje w przyszłości?

Tak, ale znowu zależy od tego, jakie ramy to robisz i na co pozwala.

Czy zadaję tutaj naprawdę głupie pytanie?

Ani trochę.

Ali
źródło
3

Jeśli myślisz o unikaniu Javy, ale nie o Dalvik, możesz użyć Kotlina.

http://kotlinlang.org

Bardzo fajny język autorstwa JetBrains; dzięki temu dobrze integruje się z Android Studio (lub IntelliJ Idea). Znacznie mniej gadatliwy niż Java i wprowadza pewne koncepcje programowania funkcjonalnego. Coś jak Scala, tylko prościej. Może współistnieć z Javą w projekcie Android lub możesz przenieść wszystko do Kotlina. Wtyczka IDE pozwala na automatyczną konwersję kodu Java na Kotlin, dzięki czemu jest łatwa i ułatwia naukę.

Zobacz: http://blog.gouline.net/2014/08/31/kotlin-the-swift-of-android/

Jest to język niszowy i jeszcze nie w 100% dojrzały. Nie zalecałbym używania go w komercyjnych projektach na dużą skalę, ale do czegoś lekkiego lub aplikacji hobby; idź po to. Jako doświadczenie edukacyjne i dla smaku nieco innego paradygmatu.

Czego byś brakował?

  • Umiejętności Kotlin nie są poszukiwane przez pracodawców (przynajmniej na razie), więc nauka nie dodaje znaczącego doświadczenia do twojego CV. Mimo że projekt zrealizowany w Kotlinie wciąż mógłby zawierać ciekawy wpis w CV, co sugeruje entuzjastyczny programista;

  • Znakomita funkcjonalność refaktoryzacji zapewniona przez Android Studio dla Java jest bardzo ograniczona podczas kodowania w Kotlin.

Ma swojego odpowiednika urodzonego w świecie Eclipse: http://eclipse.org/xtend/ - co wydaje się nieco podobne. Jednak nigdy tego nie próbowałem.

Konrad Morawski
źródło
Aplikacja, którą opracuję, może nie być używana na dużą skalę, ale jej podstawowa idea (programowanie inne niż Java) może być używana w innych aplikacjach. Czy na tej platformie pojawią się problemy?
FaizanRabbani
2
Nikt nie może powiedzieć ci w 100% :) Z mojego doświadczenia wynika, że ​​działa dobrze, ale napotkałem problem z modułem ładującym klasy, próbując uruchomić test jednostkowy, który używał zarówno Kotlin, jak i Realm.io. Realm działa jako procesor adnotacji, więc musiało być między nimi nieprzyjemna interferencja. Tego rodzaju rzeczy. Regularne testy jednostkowe były w porządku. Innymi słowy, wydaje się, że działa dobrze dla standardowego stosu technologii, ale jeśli potrzebujesz jakiegoś specyficznego frameworka lub biblioteki lib, lepiej upewnij się, że gra dobrze z Kotlinem. Najpierw prototypuję aplikację. To, co jest przypadkiem jednego człowieka, może być przełomem dla innego.
Konrad Morawski
Co jeśli chcę się rozwijać od zera?
FaizanRabbani
@FaizanRabbani od podstaw w jakim sensie?
Konrad Morawski
2
@FaizanRabbani dobrze, Kotlin nie jest obsługiwany przez system Android po wyjęciu z pudełka, ale współpracuje z Javą, więc jest to w końcu natywna aplikacja - chociaż nie jest to przypadek Ionic ani PhoneGap. Jeśli nawet nie podoba ci się fakt, że potrzebujesz kompilatora i wtyczki Kotlin, aby to działało, to dobrze, wybór jest dość wąski i jest to tylko Java dla SDK. Możesz także używać C ++, ale dotyczy to NDK, a nie typowego programowania. Jak mówią oficjalne dokumenty: "In general, you should only use the NDK if it is essential to your app—never because you simply prefer to program in C/C++"- bit.ly/1fSbhs8
Konrad Morawski