Java в Android: Грядут перемены (Слухи)

    В канун Нового года многие забугорные сайты разразились статьями, в которых сообщалось о намерении Google отказаться от Java API, который является собственностью компании Oracle. На страницах Хабра/Гиктаймса не раз обсуждались судебные тяжбы между двумя IT-гигантами.

    В конце концов, Гуглу надоело это положение вещей и они решили сделать следующий «финт ушами» — следующая версия Android N (7.0) уже пишется при помощи открытой OpenJDK.

    В качестве косвенного доказательства приводят ссылку на страницу одного коммита https://android.googlesource.com/platform/libcore.git/+/51b1b6997fd3f980076b8081f7f1165ccc2a4008, который датирован ноябрем 2015 года, где есть упоминание об OpenJDK.

    Сама компания говорит, что подобный шаг позволит использовать новые возможности Java 8. Но независимые аналитики предполагают, что не последнюю роль в этом решении сыграло желание Google покончить с обвинениями Oracle в нарушении патентов.

    OpenJDK является открытым и свободным ПО и подобный шаг кажется логичным. В тоже время при обсуждении этой новости зарубежные комментаторы указывают на определённые юридические проблемы, которые по-прежнему останутся. И юристы из Oracle без работы не останутся. Поживём — увидим. Пока официальных комментариев от двух компаний не поступало. Поэтому новость нельзя считать полностью подтверждённой.

    Некоторое время назад также циркулировали слухи, что Google думает о замене Java в Android на другой язык программирования. В качестве преемника назывались Go и Dart, И где-то в секретных подвалах компании разработчики якобы пробуют портировать код. Думается, что на данный момент такой исход маловероятен. Их время ещё не пришло, а может и не придёт.

    Upd: через час после выхода моей статьи на Гиктаймс появился более развёрнутый пост на эту тему — http://geektimes.ru/company/icover/blog/268644/
    Поделиться публикацией
    Похожие публикации
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 15
    • +6
      Go и Dart? Я лично вангую Kotlin
      • 0
        а Kotlin разве уже ушёл хотя бы в стабильный предрелиз?
        • +1
          А в чём разница, если всё равно в JVM компилится? Или тяжбы лишь из-за языка?
          • +4
            В том то и дело, что go и dart в JVM не компилятся. Зачем их в статье упомянули — вообще непонятно. Для них ни вменяемых средств разработки нет, ни нормального комьюнити. Переучиваться на эти языки с java как-то странно. А для kotlin уже и поддержка в android studio есть и писать на нём можно одновременно с java.
            • +2
              Ээээ. Как я понимаю, суть проблемы в том, что Андроид использует Джава АПИ без разрешения. Если поменять на Котлин, то проблема не исчезнет. Поэтому, менять на него смысла особого нет.
              • 0
                Все правильно упомянули, и в Dart и в Go есть коммиты которые напрямую относятся к андроид. Dart вон даже отдельный фреймворк выкатил. Сам я за kotlin, но нельзя отрицать, что работа ведется по многим направлениям. В Google тоже не одни пророки, видимо распределяют риски, авось что-то одно да выстрелит.
          • +2
            • 0
              Go уже позволяет делать мобильные приложения без участия Java;
              и может быть использован на обеих ведущих платформах.
              • +5
                При желании можно хоть на паскале писать. Но поддержка всего этого оставляет желать лучшего
                • 0
                  Если точнее, то именно поддержки вовсе нет — есть возможность. Что ни возьми — Go, C++ или Pascal — всё равно всё придётся делать через JNI, т.к. подавляющая часть Android API написана на Java и недоступна напрямую в native code, так что полноценное приложение нельзя написать целиком даже на C++, на котором сам Android написан. Другими словами, в Android внутри C++, а снаружи — Java. А для полноценной поддержки нужен C'шный API, для работы с которым уже сто лет в обед существуют всевозможные FFI в подавляющем большинстве языков программирования.
                    • +1
                      Хеловордные примеры, картинка кликабельна (см. с 24-го слайда)
                      • 0
                        Про них и речь. Без использования JNI, у NativeActivity приложений есть доступ только к тому, что предоставляет NDK. Послать интент, к примеру, вы не сможете — такого API в NDK нет.
              • 0
                Интересно:
                1. Спорят уже компании давно, что мешало то раньше перейти на OpenJDK тем более с ресурсами Гугла?
                2. Затронет ли переход на OpenJDK code base стандартизацию API Андроида? Иначе говоря, JCK будут проходить или просто стянули API + имплементацию?
                • 0
                  Здесь хорошо описано что из этого следует и чего ждать:
                  http://gluonhq.com/android-moving-openjdk/

                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.