PhoneGap с бэкэндом Django
Я работаю над веб-приложением, которое использует django.
Я хотел бы создать собственное приложение сайта для IOS / Android, используя разрыв телефона.
Это возможно? Как я понимаю, нативные устройства не могут интерпретировать код Python.
Он находится на ранней стадии проекта, и, если он окажется слишком сложным, я могу использовать другой фреймворк, т.е. backbone.js.
Есть мысли / опыт?
1 ответ
Правильно, вы не можете запускать код Python на iOS или Android с помощью PhoneGap, но в этом нет необходимости. Да, вы можете создать собственное мобильное приложение для своего сайта, используя PhoneGap.
Я попытаюсь немного объяснить, как эти технологии сравниваются друг с другом:
- Django - это веб-фреймворк Python, работающий на веб-сервере
- PhoneGap - это фреймворк для создания нативных мобильных приложений с использованием веб-технологий (HTML5+CSS+Javascript), приложение будет работать на мобильном устройстве.
Одним из распространенных подходов является создание мобильного пользовательского интерфейса с помощью jQuery Mobile и использование веб-приложения Django для предоставления RESTful API для передачи данных в приложение.
Взгляните на этот вопрос для более подробной информации.
Изменить: Ответить на вопрос в первом комментарии
Да, с помощью этих фреймворков можно создать быстрое и хорошо работающее приложение. Производительность современных смартфонов в большей степени зависит от качества реализации, чем самих jQuery mobile и Django.
В основном с PhoneGap есть три разных способа показа контента пользователю:
- страницы на стороне сервера
- страницы, сгенерированные на стороне клиента с использованием Javascript, используя данные с сервера, переданные в предопределенном формате с использованием, например, JSON
- комбинация двух предыдущих
Этот ответ довольно хорошо проясняет связь между сервером и клиентом и рендеринг страницы.
Вы могли бы использовать PhoneGap немного как ограниченный веб-браузер, и в основном показывать контент прямо с вашего сервера, как если бы пользователь заходил на сайт с помощью обычного веб-браузера. Но я не рекомендую это, хотя. Этот подход имеет много недостатков (т.е. что происходит, когда пользователь открывает ссылку с вашего сайта, ведущую на другой сайт?)
Чтобы быть точным, по крайней мере, на мой взгляд, пользовательский интерфейс, написанный с использованием Javascript и работающий внутри приложения, созданного с помощью PhoneGap, не является родным. Сравнение нативных приложений и приложений PhoneGap - это еще одна вещь, здесь можно объяснить различия.
Я не знаю, какой сервис вы создаете, но в целом я бы посоветовал оценить различные подходы, прежде чем приступить к созданию приложения. Подойдет ли адаптивный мобильный оптимизированный веб-сайт или есть реальная потребность в том, что приложение может предоставить?
Если вы решили создать приложение с PhoneGap, я бы посоветовал вам сделать это с помощью Javascript на стороне клиента и извлечь данные из бэкэнда Django с запросами XHR в формате JSON. Есть много примеров, доступных в Интернете.