Android против iPhone против Windows Phone против других как платформа для внутреннего делового программного обеспечения - PullRequest
2 голосов
/ 21 декабря 2010

Я оцениваю операционные системы для смартфонов и аппаратные платформы (и окольными путями, операторы мобильной связи), чтобы определить, какая из них будет наиболее подходящей для поставки программного обеспечения для бизнеса. Наши приложения будут использоваться только внутренними сотрудниками. Вот некоторые особенности и маркеры, которые влияют на выбор:

  • Нашим приложениям потребуется доступ к около 1 ГБ проприетарных данных. Мы могли бы использовать встроенную базу данных SQL, но для скорости мы предпочитаем иметь доступ к какой-либо файловой системе или, возможно, к хранилищу на SD-карте.

  • Эти данные в основном доступны только для чтения на мобильной стороне. Но нам нужно регулярно обновлять его из корпоративных источников данных. Это может произойти по проводному соединению, либо при подключении к рабочей станции, либо при извлечении SD-карты и обновлении данных на ПК.

  • Нашими приложениями будут графические визуализации проприетарных данных. Данные используются в аг / биотехнологической / исследовательской среде.

  • Скорость выполнения кода является критической.

  • 1 ГБ данных будет совместно использоваться несколькими приложениями, которые мы создаем.

  • Устройства будут использоваться во всем мире, но относительно небольшим числом пользователей (~ 1000).

  • Пользователи работают как в помещении, так и на улице, проводя сельскохозяйственные исследования. Находясь в помещении, они имеют хорошее сетевое соединение. На улице связь плохая. Они также путешествуют на протяжении всего года.

  • Наш опытный персонал имеет большой опыт работы с C # и .net (в основном это формы Windows), а также немного знаком с C ++ и Java. Мы уже несколько лет назад занимались разработкой мобильных приложений для .net, а также некоторыми системами для Palm, и несколько разработчиков начали изучать разработку для iPhone.

  • Желательно быть кроссплатформенным и не привязанным к конкретному поставщику услуг беспроводной связи или программной платформе. Но в наши дни название игры - вот название игры.

  • Мы будем развертывать приложения самостоятельно и не будем нуждаться в магазинах приложений и т. П.

Я знаю, что многое нужно переварить. Так в чем мой вопрос? Мне хотелось бы узнать, какие устройства и платформы наиболее подходят для того, что мы делаем. Я также хотел бы, чтобы разработчики, которые разработали внутреннее бизнес-программное обеспечение для этих платформ, могли присоединиться и поделиться тем, что они узнали.

Ответы [ 4 ]

3 голосов
/ 21 декабря 2010

Если вас интересуют традиционные возможности корпоративной интеграции Blackberry, вы можете посмотреть на это.

В противном случае Android, вероятно, будет лучшим выбором с точки зрения популярных в настоящее время платформ (некоторые из более традиционных телефонных стеков на основе Linux могут бытьтехнически предпочтительнее, но их будущее неясно).

У вас есть все полномочия для самостоятельного развертывания приложений.

Большинство телефонов Android поддерживают SD-карту объемом до 32 ГБ или предоставляют 16 ГБ встроенной памяти.Вы можете использовать Wi-Fi или смонтировать его на ПК в качестве USB-диска для обновлений (в дополнение, конечно, к мобильным данным)

Хотя android поддерживает разработку Java, на самом деле его использовать не нужно, за исключением жизненного цикла приложения и пользователяИнтерфейсные цели.Вы можете написать весь свой основной код на C, используя большинство обычных непривилегированных возможностей Unix-типа, или на C ++ - хотя список C ++ медленно сокращается.OpenGL ES доступен для отображения.И на самом деле, последняя версия android предлагает необходимые java-оболочки, уже написанные для того, чтобы вы могли самостоятельно создавать приложения на C / C ++ без написания java-кода.

Еще одна причина перехода на android - возможность развертывания.Ваше собственное устройство, не обязательно смартфон, но, возможно, планшет / кпк или защищенная система в будущем.

Кроме того, если основная часть кода написана на C / C ++ и ваши разработчики используют разумные абстракции, вы должны иметь возможность создать проект, который будет создаваться как для настольного компьютера, так и для мобильного приложения, оборачивая основной кодс пользовательским интерфейсом и контейнером приложения.

1 голос
/ 22 декабря 2010

Я ожидаю, что доступность оборудования сыграет свою роль в принятии решения.В зависимости от того, что делается с устройствами на открытом воздухе, вам может потребоваться использовать защищенные устройства и / или устройства с высоким IP-кодом .

Если это так, я бы порекомендовалрассмотреть возможность использования Windows Mobile (6.x).
Да, Мобильный, а не Телефон 7.

Он может удовлетворить все ваши требования, перечисленные выше, плюс доступно большое количество различных устройств.
Хотявремя потребительской платформы пришло, это именно тот сценарий, для которого она была предназначена.

Также обратите внимание, что этот продукт еще не закончился, но будет называться Windows Embedded Handheld идти вперед.

0 голосов
/ 21 декабря 2010

Monotouch на iPhone, вероятно, будет вашим лучшим путем - особенно для корпоративного программного обеспечения, где вам могут не понадобиться все возможности платформы.В быстродействующем коде вы можете при необходимости использовать Objective-C или даже C.

Одной из причин, по которой я бы рекомендовал iOS на других платформах, является:

1) Более сильные платформы.У Android довольно неплохие фреймворки, но у них нет ничего похожего на CoreData, что может быть очень удобно для ускорения развития предприятия.Существуют также другие сторонние фреймворки, такие как CorePlot, которые могут быть действительно полезны для создания графиков в приложении, и CoreAnimation имеет много возможностей для визуализации данных.Существует также инфраструктура Accelerate, которая использует графический процессор устройства (если имеется) для ускорения вычислений для таких вещей, как работа Linpack и FFT.

2) Полная возможность развертывания того, что вы хотите - нет ограничений на развертывание корпоративного iOS,и любой человек с номером D & B может быть в программе разработки iOS Enterprise.Так что вам не нужно беспокоиться о магазине приложений.

3) Использование существующей базы приложений - хотя неясно, что вы пытаетесь сделать, есть хороший шанс, что вы сможете использовать какую-то стороннюю компаниюприложения в вашем рабочем процессе, где гораздо больший и качественный магазин приложений для iPhone может быть полезным.Обработчики URL и типов файлов позволяют приложениям передавать данные между ними.

4) Чехлы и аксессуары сторонних производителей - Otterbox изготавливает чехлы для Touch, iPhone и iPad, но в основном существует масса вариантов сторонних производителей для зарядных устройств, комплекты для монтажа в автомобиле и т. д.

Похоже, что iPad будет хорошо работать для ваших нужд, будь то модель 3G (с которой вы можете использовать микро-сим) или в сочетании с устройством MiFi (как в случае с Verizon).

Monotouch действительно требует больших затрат, но, вероятно, он даст вашим разработчикам реальный прирост скорости во время разработки и позволит им сосредоточиться на изучении фреймворков.

0 голосов
/ 21 декабря 2010

Это непростая задача.

Первое, что я исключу, это платформа iOS:

  • Закрытое мышление
  • Строгие правила публикации,даже для внутреннего развития предприятия
  • Objective C / Cocoa Touch - это PITA для изучения.
  • Ограниченные и дорогие устройства

Symbian - очень популярная платформа, но только дляодна из причин - самая дешевая операционная система для смартфонов, я думаю, что, хотя она и хороша, все остальные платформы лучше, а что еще важнее, со временем станет еще лучше, Symbian, наконец, начинает ослабевать.

Windows Phone: Я не проводил тщательных исследований, но мне кажется, что winMO лучше подходит для бизнес-решений, Windows Phone - это скорее продукт для конечных потребителей, ориентированный на социальные сети и онлайн-бум.

Blackberry: отлично подходит для обеспечения безопасности ваших данных, в то время какне так хорошо, как iOS или Android, как платформа, она предлагает много вещей, которые не делает никакое другое оборудование, если вы управляете критически секретной информацией,k в blackberry.

Android: Мой личный текущий любимый, API прост в использовании с инструментами в основном infinte, он такой же гибкий, как iOS, без всех безумных ограничений.Есть более 50 устройств, которые имеет смысл купить за то, что вы хотите, в диапазоне от 200 до 800 долларов, вы сами выбираете, насколько хороши аппаратные средства.Google также вкладывает в это сумасшедший объем работы, поэтому ожидайте, что он будет становиться все лучше и лучше, просто чтобы вы поняли, что Android имеет 3,5% рынка в 3Кв09 и 25,5% 3К10.Подобный рост наблюдается редко, и для меня означает, что Android - это платформа, на которую было бы разумно делать ставки.

...