Мы ждем ваших комментариев и надеемся на них. Вы можете прислать нам бумажное или электронное письмо, либо просто посетить наш Web-сервер и оставить свои замечания там. Одним словом, любым удобным для вас способом дайте нам знать, нравится или нет вам эта книга, а также выскажите свое мнение о том, как сделать наши книги более интересными для вас.
Посылая письмо или сообщение, не забудьте указать название книги и ее авторов, а также ваш обратный адрес. Мы внимательно ознакомимся с вашим мнением и обязательно учтем его при отборе и подготовке к изданию последующих книг.
Наши координаты:
E-maiclass="underline" info@williamspublishing.com
WWW: http://www.williamspublishing.com
Информация для писем из:
России: 115419, Москва, а/я 783
Украины: 03150, Киев, а/я 152
ГЛАВА 1
Введение
"Скажите, пожалуйста, как мне выйти отсюда?"
"Все зависит от того, куда тебе надо выйти ", — ответил Кот.
Льюис Кэрролл, Алиса в стране чудес (Encarta 2004, Quotations)
Добро пожаловать в мир разработки мобильного программного обеспечения
С каждым днем программное обеспечение играет в жизни людей все более заметную роль, давая нам возможность получать информацию, принимать решения "в режиме реального времени" и вообще вести более продуктивную и интересную жизнь. Вначале, когда количество доступных компьютеров было весьма невелико, каждый из них использовался в режиме коллективного доступа. Сегодня триумфальное шествие закона Мура подарило нам более демократичный и распределенный вид вычислительной техники — настольные и переносные (лэптопы, ноутбуки) "персональные компьютеры". В настоящее время мы являемся свидетелями еще более глубокого эволюционного процесса. Персональные компьютеры и централизованные серверы ни куда не делись, но их постепенно начинают окружать мириады мобильных устройств, обеспечивающих дальнейшую децентрализацию вычислительных мощностей. Это расширяет сферу применения программных приложений на доселе неведомые области. Те самые люди, которые просматривают Web-страницы, обмениваются сообщениями электронной почты, проводят время за электронными играми, совершают электронные покупки или каким-то иным образом интерактивно взаимодействуют с миром сетевой информации при помощи настольных компьютеров, все чаще предпочитают захватывать с собой "в дорогу" ту или иную отдельную частичку этих возможностей. Несколько лет тому назад компания Microsoft, в которой я работаю уже длительное время, сформулировала свои рыночные цели таким образом: "Компьютер на каждом столе и в каждом доме!" Сейчас становится очевидным, что эта формулировка должна быть дополнена словами о "программном обеспечении, которое может выполняться в любое время, в любом месте и на любом устройстве". Тем самым мы вплотную подходим к вопросу о мобильных устройствах.
Что такое, собственно говоря, мобильные устройства и в чем состоит специфика разработки программного обеспечения для них?
Что такое мобильные устройства? С вычислительной точки зрения мобильные устройства представляют собой некое компромиссное решение. Мы жертвуем невероятной вычислительной мощью, огромной емкостью памяти и графическими возможностями современных настольных компьютеров в пользу мобильных устройств в основном ради небольших размеров самих устройств, возможности использовать устройства сразу же, как только в этом возникает необходимость, а также их способности работать в течение длительного времени без перезарядки батарей. Этот компромисс вовсе не так уж плох, как могло бы показаться на первый взгляд. Принимая во внимание непрерывный экспоненциальный рост мощности процессоров и снижение цен, мы находимся на том этапе, когда, например, мое самое заурядное устройство Pocket PC (процессор XScale с тактовой частотой 400 МГц, ОЗУ объемом 64 Мбайт) по своим возможностям во многих отношениях оказывается мощнее настольных компьютеров, работавших под управлением Windows 95 всего лишь несколько лет тому назад. Но наряду с этим мобильные устройства являются также качественно другими. Простой перенос операционной системы и приложений с настольного компьютера на мобильное устройство не даст тех результатов, которые могли бы удовлетворить конечного пользователя. Каждому, кто пользуется современным мобильным телефоном или устройством PDA (Personal Digital Assistant — персональный электронный помощник, "карманный компьютер"), хорошо известно, что хотя устройство, которым он владеет, и является самым настоящим компьютером с богатым набором разнообразных возможностей, все же оно значительно отличается от настольного или переносного компьютера. В случае мобильных устройств приоритеты проектирования и пользовательские ожидания иные, нежели в случае традиционных настольных компьютеров.