2010-06-26 2 views
1

Я планирую разработку Symbian на платформе S60 3.1. Похоже, что доступными языковыми параметрами являются Python и C++. Однако официальный форум Nokia, похоже, очень склонен к C++.PyS60 vs Symbian C++

Я хочу знать, каковы преимущества и недостатки использования Python для S60 по сравнению с Symbian C++? И возможно ли вообще программировать Python для платформы S60 3.1?

ответ

2

PyS60 хорош, когда вам нужно прототипировать что-то простое быстро. Если вы попытаетесь создать с ним полноценное приложение, скорее всего, вам рано или поздно захочется использовать функции, доступные в Symbian C++, но не в PyS60 без написания привязок (на C++) для него. Также вам нужно иметь дело с правильной версией среды исполнения PyS60, которая доступна, а некоторые из них не поддерживают обратную совместимость.

Если вы идете на маршруте Symbian C++, you can embed a python interpreter in it too.

+0

Сложно ли смешивать Symbian C++ и Python? – sharjeel

+0

Ну, сложность этого немного субъективна. Но я бы сказал, что по сравнению с изучением разработки Symbian C++, не так сложно писать привязки для python. (если записывать привязки - это то, что вы подразумеваете при смешивании) – Phatency

+0

Да, привязки, которые я имел в виду, но контекст отличается, поскольку я хочу иметь «скомпилированный» SIS моего приложения Python S60. Вот почему я использовал слово «mix». Надеюсь, это возможно. – sharjeel

1

C++ очень, очень быстро, а библиотека Qt предназначена для C++. Если вы программируете на мобильном телефоне, Python будет очень медленным, и вам придется потратить много времени на переписку.

+1

Не могли бы вы объяснить, до какой степени PyS60 работает медленно? Скажем, если я хочу сделать простое приложение Uploader для Flickr, которое имеет возможность делать фотографии непосредственно с камеры и загружать их на учетную запись Flickr, будет ли PyS60 действительно узким местом? – sharjeel

+0

@sharjeel: Никто не может сказать, насколько медленнее или быстрее или это узкое место, пока вы на самом деле не напишите код и не сравните его. – Puppy

0

PyS60 имеет очень ограниченный API. Приложения, написанные с его использованием, медленны, их трудно развернуть (поскольку вам нужно сначала установить среду выполнения), и их нельзя размещать в магазине Ovi. Если вы ищете простой способ написать простые приложения для Symbian, взгляните на Nokia WRT.

Если вы не возражаете, чтобы C++ попробовал недавно выпущенный Qt SDK 1.0. Это действительно мощное, будущее доказательство и скоро будет поддерживаться магазином Ovi.

+0

Невозможно ли преобразовать программу Python S60 в скомпилированный SIS? – sharjeel

+0

Технически да. Но пользовательский опыт (в основном установка/удаление) ужасен. У вас также будет проблемы с подписью SIS. – Mridul

1

Я отвечаю на это как пользователь.

PyS60 работает медленно и не так много приложений и образцов для начала.

C++ - хороший, родной, быстрый, но если вы хотите разработать приложение для большинства устройств (текущие N-серии), вам не захочется идти с Qt, у меня есть N78 и проверенный Qt в N82 тоже, он медленный (более, чем Python, к сожалению, правда)

0

Какова цель вашего программирования? Планируете ли вы распространять свое приложение через Ovi Store? Если это так, вы должны использовать инструмент, который может быть протестирован и подписан Symbian Signed.

Что это значит? Насколько я знаю, они не предоставляют такую ​​функциональность для Python. Поэтому вам нужно выбрать родной Symbian C++ или Qt.

Кстати, процедура подписи Qt пока не совсем понятна. Кажется, Ovi Store и Symbian Signed разрешают только приложения Qt для определенных устройств (Nokia X6, Nokia N97 mini, может быть, некоторые другие). Я предполагаю, что это предмет для перемен и довольно быстрых изменений, но вы тоже должны это учитывать.

+0

Вы в этом уверены? Я читал на форумах Nokia, что приложения PyS60 могут быть скомпилированы в SiS, а также могут быть подписаны. – sharjeel

+0

Да, вы можете создать пакет sis из PyS60 и подписать его с помощью своего devcert или самогенерируемого сертификата. Но если ваше приложение требует некоторых возможностей, требующих подписания с реальным сертификатом, ваше приложение должно быть подписано корпорацией SymbianSigned (http://symbiansigned.com). Только в этом случае вы сможете установить его на любых устройствах. Однако, если ваше приложение PyS60 использует только предоставленные пользователем возможности, вы можете пойти с ним в магазин OVI. Дополнительная информация о возможностях на форуме Nokia Wiki: http: //wiki.forum.nokia.com/index.php/Platform_Security_in_PyS60: _Part2 – Haspemulator

+0

Не возникает ли та же проблема в случае Symbian C++? – sharjeel

0

Когда 3-й выпуск Feature Pack 1 запускал новейшие телефоны на рынке, основными пользователями, которые использовали для их программирования, был J2ME (http://www.forum.nokia.com/Develop/Java/). Я знаю заголовок C++ для Python, но вы считали Java? Это было намного проще, чем родной Symbian C++. Производительность хорошая.

-jk

+0

Я фактически переношу приложение из J2ME на родной Symbian из-за того, что все эти сообщения безопасности появляются, когда я обращаюсь к файловой системе, отсутствию хорошего пользовательского интерфейса, ограничениям и другим проблемам J2ME. – sharjeel