Кривая обучения
Мне неприятно говорить "это зависит", но это действительно так, и по нескольким причинам. Каков ваш опыт разработки .NET? Имейте в виду, что CF поддерживает C # и VB.NET, поэтому, если вы парень на COBOL.NET, он будет круче, чем если вы парень на C #. Если вы делаете в основном ASP.NET на рабочем столе, это будет круче, чем если бы вы делали WinForms. Если вы ничего не знаете о иногда подключаемых сценариях и ничего о встроенных системах, это будет круче, чем если бы вы знали.
Переход с настольного компьютера на мобильный довольно прост, но Compact Framework содержит подмножество полной структуры, но это не просто подмножество. Он также содержит несколько вещей, которые просто не существуют на рабочем столе. Так что есть чему поучиться.
Однако гораздо важнее то, что вам часто нужно другое мышление. У вас нет файлов подкачки. У вас ограниченная память и память. Вы спите / просыпаетесь. У вас есть меньшее разрешение и динамическое разрешение и изменения сторон. Разработчики настольных компьютеров редко думают об этом.
Операционные системы
Это более просто. Только платформы Windows CE (подробности см. В следующем ответе) поддерживают Compact Framework. Существует также Micro Framework, но я бы назвал его более «встроенным», чем «мобильным», так что, скорее всего, это не то, что вы думаете (поправьте меня, если я ошибаюсь).
CE против WinMo
Это большая путаница для многих начинающих. В отличие от XP (исключая XPe ради этого обсуждения) или Vista, Windows CE является модульной ОС. Это означает, что производитель устройства может включить или исключить практически любую функцию в ОС. Это означает, что нет ни одного «Windows CE». Подумайте о Windows Mobile и клиенте Windows CE. Они берут CE и выбирают определенное подмножество доступных функций. Затем они добавляют свои части (например, оболочку WinMo, несколько API и т. Д.). Это означает, что устройство vanilla CE может (и часто будет) иметь то, чего нет на устройстве Windows Mobile. Это также означает, что все устройства Windows Mobile содержат элементы, которые не могут быть использованы ни одним устройством CE vanilla. Чтобы сделать его еще более увлекательным, OEM-производитель WinMo может добавить даже свои собственные элементы, поэтому на одном устройстве WinMo могут быть элементы, которых нет на другом.
Это даже не влияет на различия между самими платформами WinMo (Professional, Standard, Smartphone, Phone Edition и т. Д.).
Другие соответствующие вопросы SO
Возможно, вы захотите взглянуть на это: