Приложения для Android теперь можно писать на C/C++

Разработчики приложений для мобильной платформы Android впервые получили возможность писать приложения не только с помощью языка Java и виртуальной Java-машины Dalvik. Выпущенный 24 июня пакет Android NDK (Native Developers Kit) позволяет применять огромное множество оптимизированных алгоритмов, уже реализованных в стандартных библиотеках для языков С/С++.

Виртуальная машина Dalvik, на которой построена вся операционная система Google Android, дает разработчикам приложений удобный механизм для написания приложений, которым не принципиален объем используемой памяти и мощность процессора. Если же разработчик хочет написать приложение, интенсивно нагружающее процессор и использующее минимум оперативной памяти, то возможностей Dalvik и языка Java оказывается недостаточно. Кроме того, до сих пор, до появления NDK, разработчики не могли использовать напрямую весь огромный опыт, накопленный в реализации различных типовых алгоритмов для языков С/С++ и для платформы Linux.

Новый инструментарий разработчика Android NDK является дополнением к уже выпущенному инструментарию SDK. Механизм Android NDK дает разработчику возможность использовать набор машинных инструкций ARMv5TE, включая функции из libc, стандартной библиотеки языка C, из libm – стандартной библиотеки математических функций, libz – единой библиотеки с алгоритмами сжатия ZLib, а также функции интерфейса JNI (Java Native Interface) и библиотеки liblog, которая может передавать сообщения logCat в ядро операционной системы.

Разработка приложений с использованием стандартных библиотек C/C++ является вполне насущной задачей. Именно эти стандартные библиотеки помогают писать эффективные приложения, требующие интенсивных вычислений и небольшого объема памяти – обработка сигналов, физические симуляторы и др. В то же время сами создатели NDK подчеркивают, что использовать новый инструмент нужно далеко не во всех программах. Например, использование NDK закрывает доступ к базовым интерфейсам API, снижает уровень совместимости с различными аппаратными платформами, а также затрудняет отладку. Также NDK служит крайне полезным инструментом для продуктивного использования кода, уже написанного на C/C++.

Кроме поддержки программирования с использованием оригинального машинного кода, компания Google также реализовала поддержку популярных скриптовых языков в платформе Android. В частности, представлена технология ASE (Android Scripting Environment), которая позволяет сторонним разработчикам создавать небольшие Android-приложения на языках Python и Lua. Среда ASE обеспечивает доступ к базовым функциям платформы через мост JSON-RPC. В результате скрипты, работающие поверх среды ASE, могут пользоваться такими возможностями операционной системы, как управление громкостью звонка, включение Wi-Fi, совершение звонков, определение текущего местоположения пользователя и обработка движений аппарата (перевороты, повороты и др.). Одна из самых интересных функций технологии ASE заключается в возможности написания новых сценариев непосредственно на мобильном устройстве.

Поддержка альтернативных языков программирования делает Android более привлекательной платформой для сторонних разработчиков. Инструментарий NDK открывает дорогу к более эффективному использованию процессорной мощи, а среда ASE снижает входной барьер для новичков, предлагая удобный способ для ускоренной разработки приложений и быстрого написания сценариев. - Сообщает Софт@Mail.ru



Опубликовал admin
6 Июл, Понедельник 2009г.



Программирование для чайников.