8 фактов о Windows CE +

i (4)Что нужно знать прежде, чем начинать проект под Windows CE

Первый раз нам довелось разрабатывать под Windows CE в 2004 году. Тогда это был мобильный терминал для логистической системы, работающий на Pocket PC (что есть практически та же самая Windows CE). Тогда мы разрабатывали только прикладную программу на C# в среде Visual Studio 2003 (т.е. под .NET Compact Framework 1.1). Второй и гораздо более обширный опыт с этой операционной системой мы получили в этом году, при разработке системы нэрроукастинга, рассчитанной на 10000 и более терминалов под Windows CE 5.0. Тут мы разрабатывали и прикладную программу, и «платформу», т.е. собирали операционную систему в требуемой конфигурации. Прикладная программа разрабатывалась опять же на C#, но теперь уже в среде Visual Studio 2005.

Эта статья обобщение тех уроков, которые мы получили в начале работы над проектом для Windows CE.

1. Программирование под Windows CE это фан

2. Разрабатывать приложения просто. Разумеется, если вы пишете на C# в среде Visual Studio. Все точно так же, как при разработке обычных desktop приложений. Некоторые хлопоты доставит сильно урезанный Compact Framework, но в целом кривая обучения весьма пологая.

3. А вот разрабатывать платформу не так просто. Под «платформой» подразумевается конфигурация операционной системы. Тут все немножко не так, как в обычной Windows: архитектура системы, средства конфигурации, форматы данных, реестр, установка приложений и т.д. Тут кривая обучения крутая, как какой-нибудь горный пик.

4. Для разработки платформы задействуйте свой самый быстрый компьютер. На обычном Pentium 4 компиляция образа платформы занимает больше 20 минут. Добавьте к этому время на копирование образа на целевой компьютер, и получится, что на один билд нужно почти пол-часа. Это значит, что за один рабочий день можно проделать эту операцию не больше 16 раз. Этого, конечно, недостаточно, особенно если ты новичок в Windows CE перестраивать платформу приходится часто. Так что берите компьютер с самым быстрым процессором, не меньше гигабайта оперативной памяти (лучше больше) и самый быстрый диск. Кстати, понадобится довольно много свободного места на диске. Одна конфигурация платформы занимает порядка 500 мегабайт.

5. Разработка платформы занимает уйму времени, поскольку цикл «изменили конфигурацию; построили; загрузили на железо; проверили бац, не работает; снова изменили конфигурацию; построили… и т.д.» приходится повторять многократно. Поэтому не откладывайте это напоследок, как легкую задачку. Начинайте конфигурировать, строить и тестировать платформу с самого начала проекта, сразу же, как только станет известной требуемая конфигурация аппаратуры. Будьте готовы к тому, что это займет больше времени, чем вы ожидаете.

6. Конечно, некоторые трудности возникнут и с разработкой приложений. Всякий раз, прежде чем задействовать класс или метод, проверяйте по MSDN, поддерживается ли он в Compact Framework. Кстати, в MSDN бывают ошибки. Другой пример проблемы эмулятор Windows CE. По какой-то причине Microsoft не включил в поставку Visual Studio 2005 эмулятор Windows CE 5.0. Есть только эмулятор для Pocket PC. Подключить эмулятор Windows CE оказалось нетривиальной задачей. С технической точки зрения, Pocket PC это та же Windows CE. Но основное отличие в том, что Pocket PC (которая теперь называется Windows Mobile) это унифицированная платформа, т.е. каждое устройство с Pocket PC имеет абсолютно одинаковый, неизменный набор функций. В то же время, в обычной Windows CE вы сами задаете, какие функции включать в конфигурацию платформы, так что тут нет одной унифицированной конфигурации.

7. Железо для тестирования и отладки. Если в вашем проекте участвует более одного разработчика, вам понадобится как минимум два экземпляра целевой аппаратной платформы (материнская плата с процессором, память и прочие устройства): один для разработки и один для тестирования параллельно с разработкой. Конечно, удобнее всего разрабатывать приложение под эмулятором и только тестирование проводить на реальном железе. Однако, это не всегда возможно. Например, когда используются специальные устройства, для них может попросту не быть драйвера для эмулятора.

8. Драйверы устройств. Эта проблема почти позабыта пользователями современных версий Windows. Практически любое устройство в мире поставляется с драйвером для Windows XP. Однако, для Windows CE это далеко не так. Тут можно запросто напороться на отсутствие драйвера даже для такого ширпотреба, как USB Web камера. Так что прежде, чем браться за проект, убедитесь, что есть драйверы для всех требуемых аппаратных устройств, или включите в план проекта достаточно времени для разработки собственных драйверов.

Комментарии

  1. bizoninvest.com 2016-02-08 Reply

Оставьте ваш комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *