Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework

Тут можно читать онлайн Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом Вильямс, год 2006. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Программирование мобильных устройств на платформе .NET Compact Framework
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс
  • Год:
    2006
  • Город:
    Москва • Санкт-Петербург • Киев
  • ISBN:
    5-8459-0989-9
  • Рейтинг:
    4.22/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework краткое содержание

Программирование мобильных устройств на платформе .NET Compact Framework - описание и краткое содержание, автор Иво Салмре, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга известного профессионала в области компьютерных технологий посвящена разработке приложений для широкого спектра мобильных устройств с использованием популярной и постоянно развивающейся платформы .NET Compact Framework. Уникальность этой книги состоит в том, что в ней гармонично переплетены теоретические сведения обо всем цикле разработки программного обеспечения с практическими примерами применения на языках С# и Visual Basic. Подробно рассматриваются концепции, лежащие в основе самой платформы .NET Compact Framework, а также вопросы, связанные с созданием эффективного пользовательского интерфейса, управлением памятью, производительностью и надежностью. Немалое внимание уделяется практическим аспектам разработки приложений для мобильных устройств, среди которых выбор модели представления и доступа к данным, внедрение коммуникационной модели, реализация модели поведения с помощью конечных автоматов и использование XML.

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

Программирование мобильных устройств на платформе .NET Compact Framework - читать онлайн бесплатно полную версию (весь текст целиком)

Программирование мобильных устройств на платформе .NET Compact Framework - читать книгу онлайн бесплатно, автор Иво Салмре
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

В листинге 15.1 представлен простой пример файлового ввода-вывода, иллюстрирующий некоторые различия между сбойными ситуациями, возникающими при обращении к локальным и удаленным файлам. Хотя вы и можете поместить этот код в форму мобильного приложения и запустить его на выполнение, вряд ли стоит это делать; этот листинг приведен в основном лишь для того, чтобы вы его изучили. Как видно из приведенных в коде комментариев, в случае доступа к серверу вероятность сбоя повышается не только для операции открытия файла, но и для файловых операций чтения/записи, что связано с возможностью потери доступа к сети. Вероятность сбоя повышается с увеличением количества коммуникационных уровней, отделяющих ваше устройство от данных, к которым оно пытается обратиться. Если используется беспроводная сеть, то сигнал может быть утерян вследствие перемещения устройства. Если доступ к данным осуществляется посредством виртуальной частной сети через брандмауэр, то сбой на данном сервере может наступить в любой момент. Если соединение проходит через сеть мобильной связи, то сбой может наступить по вине мобильной сети. Несмотря на то что каждый из этих уровней сам по себе может быть надежным, их объединение повышает вероятность сбоя. Поэтому при попытках переноса кода из систем с локальным доступом к файлам в системы, использующие доступ к удаленным серверам, следует быть очень внимательным. В коде, ориентированном на локальный доступ к файлам, могут быть заложены предположения, которые при доступе к удаленным источникам станут причиной сбоев. Чтобы этого не произошло, рекомендуется применять следующие меры предосторожности:

1. Помещайте код доступа к удаленным серверам в блоки try/catch. Любая операция, для выполнения которой требуется удаленное соединение, может закончиться сбоем. Все блоки кода, которые осуществляют доступ к ресурсам, расположенным вне устройства, необходимо помещать в блоки try/catch, которые будут обрабатывать сбойные ситуации.

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

Листинг 15.1. Простой код файлового ввода-вывода, иллюстрирующий различия между локальной и удаленной передачей данных

private void button1_Click(object sender, System.EventArgs e) {

//Запись в локальный файл

WriteFile("\\testfile.txt");

//Замените имя сервера (MyFileServer) именем своего сервера

//и удалите символы комментария.

//Запись в файл, находящийся в общей сетевой папке (MyFileShare) на сервере:

//"\\MyFileServer\MyFileShare"

//WriteFile("\\\\MyFileServer\\MyFileShare\\testfile.txt");

System.Windows.Forms.MessageBox.Show("Success");

}

private void button2_Click(object sender, System.EventArgs e) {

//Чтение из локального файла

int numberLinesInFile;

numberLinesInFile = CountNumberLinesInFile("\\testfile.txt");

//Отобразить количество считанных строк

System.Windows.Forms.MessageBox.Show(

"Successfully read file " + numberLinesInFile.ToString() + " Lines.");

//Замените имя сервера (MyFileServer) именем своего сервера

//и удалите символы комментария.

/* //Записать файл из общей сетевой папки:

//"\\MyFileServer\MyFileShare"

numberLinesInFile = CountNumberLinesInFile(\\\\MyFileServer\\MyFileShare\\testfile.txt);

//Отобразить количество считанных строк

System.Windows.Forms.MessageBox.Show(

"Successfully read file " + numberLinesInFile.ToString() + " Lines.");

*/

}

private void WriteFile(string filename) {

//----------------------------------------------------------------------

//СОЗДАНИЕ ФАЙЛА:

//

//Для локальных файлов:

// Сбой может возникнуть, если:

// 1. Файл уже существует, и мы не можем осуществить запись поверх него.

// 2. Отсутствует свободное место в файловой системе.

//

//Для файлов на сервере:

// Сбой может возникнуть по вышеперечисленным причинам, а также

// из-за проблем подключения к серверу через сеть,

// проблем безопасности и так далее

//----------------------------------------------------------------------

System.IO.StreamWriter myStreamWriter = System.IO.File.CreateText(filename);

//-------------------------------------------------------------

//ЗАПИСЬ В ФАЙЛ:

//Для локальных файлов:

// Если мы успешно открыли файл, значит, сможем осуществить

// в него запись, лишь бы не исчерпали доступное

// дисковое пространство.

//Для файлов на сервере:

// Сбой может возникнуть по вышеперечисленным причинам, а также

// из-за разрыва нашего сетевого соединения с сервером

//-------------------------------------------------------------

myStreamWriter.WriteLine("Hello!");

myStreamWriter.WriteLine("MyTextFile!");

myStreamWriter.WriteLine("GoodBye!");

//----------------------------------------------------------

//ЗАКРЫТЬ ФАЙЛ:

//Аналогично предыдущему, вероятность сбоя при выполнении

//этой операции повышается при доступе к файлу, находящемуся

//в общей сетевой папке

//----------------------------------------------------------

myStreamWriter.Close();

}

private int CountNumberLinesInFile(string filename) {

int numberLinesInput = 0;

//------------------------------------------------------------------

//ОТКРЫТЬ ФАЙЛ:

//Для локальных файлов:

// В случае доступа к локальным файлам устройства можно генерировать

// исключение, если доступ к файлу оказывается невозможным

//Для файлов на сервере:

// В дополнение ко всем вышеперечисленным причинам возможных сбоев

// при открытии локального файла сбои также возможны

// из-за проблем доступа к сети, принятой на сервере

// политики безопасности и так далее

//------------------------------------------------------------------

System.IO.StreamReader myStreamReader = System.IO.File.OpenText(filename);

string inputLine;

//Организовать построчное чтение файла

do {

//--------------------------------------------------------------

//ВВЕСТИ СТРОКУ:

//Для локальных файлов:

// Если файл был успешно открыт, этот вызов

// никогда не завершится сбоем.

//

//Для файлов на сервере:

// Проблемы доступа к беспроводным сетям, с которыми мы можем

// столкнуться при попытке доступа к файлу, повышают вероятность

// сбоя для этого кода и генерации соответствующего исключения

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Иво Салмре читать все книги автора по порядку

Иво Салмре - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Программирование мобильных устройств на платформе .NET Compact Framework отзывы


Отзывы читателей о книге Программирование мобильных устройств на платформе .NET Compact Framework, автор: Иво Салмре. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x