Использование скриптового языка типа JavaScript может облегчить написание приложений и в очередной раз применить навыки по веб-разработке, которыми владеет ваша команда. При этом вы получите все преимущества использования «родных» компонентов в ваших «родных» приложениях.
Кроме того, поскольку Titanium Mobile является кроссплатформенной технологией, она обрабатывает «родные» iOS-компоненты для вашего «родного» iOS-приложения и использует «родные» Android-компоненты, когда компилирует «родное» приложение под Android. Преимущества налицо: вы используете простой скриптовый язык (JavaScript), и вам нужно всего лишь поддерживать один базовый код, вместо того, чтобы изучать и применять Objective-C в iOS и Java в Android, и поддерживать два отдельных языка.
Минус в том, что у вас есть еще один слой абстракции для работы. В конце концов, качество ваших приложений зависит от качества кода, который напишет Appcelerator в своих абстрактных фреймворках. А вы будете зависеть от того, как быстро Appcelerator поддержит новые свойства, которые выпускаются для «родных» фреймворков и SDK. Хотя Appcelerator пытается сделать разницу между платформами прозрачной, насколько это возможно в Titanium, есть различия, не в последнюю очередь культурные, к которым вам еще нужно будет обращаться и оптимизировать (помните наше кредо: напиши один раз, оптимизируй везде).
Это не к тому, что вы должны бояться кроссплатформенных технологий, а, скорее, к тому, что вам нужно проводить исследования, взвешивать все за и против и принимать обоснованное решение по поводу того, добавлять ли еще один слой абстракции в ваш процесс разработки. Каждая кроссплатформенная технология имеет свои плюсы и минусы, а также ситуации, при которых она лучше приспособлена для определенных видов приложений. В то время как Corona – это прекрасный выбор для 2D-игр, Titanium Mobile может быть лучше для построения кроссплатформенного рабочего приложения.
Конечно, Titanium не единственная кроссплатформенная технология, которая может создавать «родные» бинарные файлы и использовать фреймворки. Если у ваших разработчиков есть навыки в разработке C# и. NET, вы также могли бы рассмотреть технологию Mono (а особенно MonoTouch для iOS и Mono для Android). Mono работает по такому же принципу, как и Titanium, но вместо использования JavaScript, вы берете язык программирования C# (…и с осторожностью другие языки программирования. NET),NET паттерны и инструменты для создания «родных» приложений.
Если вы читаете эту книгу, скорее всего, вы либо веб-дизайнер, либо веб-разработчик (либо и то и другое), либо вы только учитесь. Ваша роль как веб-дизайнера заключается в разработке набора документов (в этом случае вы могли бы здорово положиться на ваши навыки в графическом дизайне) для приложений с разнообразным поведением (здесь вы бы поупражнялись в применении ваших интерактивных дизайнерских способностей).
У вас также есть богатый выбор материала для разработки вашего продукта. Исходя из нужд вашей аудитории, вы можете выбрать использование «родных» авторских веб-технологий, таких как HTML, CSS и JavaScript, для создания «родных» веб-приложений. В качестве альтернативы вы можете использовать «неродные» кроссплатформенные авторские технологии, такие как Adobe Flash или Unity, для создания «неродных» веб-приложений. И как третий вариант, вы можете использовать комбинацию обеих авторских технологий: «родной» и «неродной» для создания гибридных веб-приложений. Например, сайт, изначально построенный на HTML, CSS и JavaScript, но дополненный технологией Flash, чтобы обеспечить богатый игровой опыт.
Независимо от того, что вы выберете– «родные» или «неродные» веб-технологии, обратите внимание на то, как ваше приложение запускается, откуда (как) оно доступно и есть ли доступ к нему из Сети. Проще говоря, это означает, что у вашего сайта или приложения должен быть URL-адрес [119]и оно должно обслуживаться через протокол HTTP. Это то, что делает веб-приложение веб-приложением.
«Родные» приложения одиночной платформы
В процессе работы, описанном выше, вы, возможно, придете к выводу, что лучше удовлетворите нужды пользователя, если оборудуете одиночную платформу или устройство под ваше приложение. А свое ограниченное время и бюджет вы вложите в оптимизацию опыта взаимодействия именно на ней.
Если все же вы решаете поддерживать одиночную платформу, вам все равно нужно выбрать технологию. Если вы делаете игровое или другое интерактивное приложение, то можете взять кроссплатформенную технологию, такую как Corona от Ansca, Unity или Adobe Flash, которые существенно облегчают разработку подобных приложений.
Читать дальше
Конец ознакомительного отрывка
Купить книгу