Иво Салмре - Программирование мобильных устройств на платформе .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 - читать книгу онлайн бесплатно, автор Иво Салмре
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Номер теста (А) Текстовый индекс, с (Б) Целочисленный индекс, с (В) Индексирование по объектам DataColumn, с (Г) Пользовательский формат данных, с
(ADO.NET) (ADO.NET) (ADO.NET) (Пользовательский)
1 32,538 30,09 23,554 12,268
2 33,063 30,387 23,491 12,335
3 32,87 30,372 23,582 12,358
Среднее 32,82 30,28 23,54 12,32
Относительная производительность 100% 92% 72% 38%

Приведенный в листинге 14.4 код необходимо включить в форму в проекте Pocket PC. Для создания и выполнения приложения потребуется выполнить следующие действия:

1. Запустите Visual Studio .NET (2003 или более позднюю версию) и выберите в качестве типа приложения C# Smart Device Application.

2. Выберите в качестве целевой платформы Pocket PC. (Для вас будет автоматически создан проект, и на экране появится окно конструктора форм Pocket PC.)

3. Добавьте в форму элемент управления Button. Присвойте ему имя buttonRunTest.

4. Дважды щелкните на элементе управления Button в окне конструктора форм. В автоматически сгенерированной и подключенной функции обработчика событий введите код функции buttonRunTest_Click() из листинга 14.4.

5. Введите весь оставшийся код в тот же класс.

6. Установите для свойства MinimizeBox формы значение false. Благодаря этому во время выполнения в верхней правой части формы появится кнопка OK, с помощью которой вы легко сможете закрыть форму и выйти из приложения. Эта возможность оказывается очень полезной при многократном тестировании приложения.

7. Запустите приложение, нажав клавишу . Щелкните на кнопке для запуска теста. Результаты тестирования должны отобразиться в окне сообщений.

Листинг 14.4. Результаты тестирования производительности при использовании пользовательского формата данных вместо объектов DataSet

//Определение размерных характеристик теста

const int DUMMY_ROWS_OF_DATA = 100;

const int NUMBER_TEST_ITERATIONS = 500;

const string TABLE_NAME_PASSENGERINFO = "CustomerTravelInfo";

const string TEST_CREDIT_CARD = "IvoCard-987-654-321-000";

string [] m_data_creditCards;

string [] m_data_names;

System.DateTime [] m_data_travelDates;

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

//Создает массив данных (вместо использования объектов DataSet)

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

private void createDataSet() {

//=============================================

//1. Создать пространство для размещения данных

//=============================================

m_data_creditCards = new string[DUMMY_ROWS_OF_DATA + 1];

m_data_names = new string[DUMMY_ROWS_OF_DATA + 1];

m_data_travelDates = new System.DateTime[DUMMY_ROWS_OF_DATA + 1];

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

//Добавить строки данных

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

System.Text.StringBuilder buildTestString;

buildTestString = new System.Text.StringBuilder();

for (int addItemsCount = 0; addItemsCount < DUMMY_ROWS_OF_DATA; addItemsCount++) {

//Выбрать день отъезда пассажира

m_data_travelDates[addItemsCount] = System.DateTime.Today.AddDays(addItemsCount);

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

//Выбрать имя пассажира

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

//Очистить строку

buildTestString.Length = 0;

buildTestString.Append("TestPersonName");

buildTestString.Append(addItemsCount);

m_data_names[addItemsCount] = buildTestString.ToString();

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

//Связать с пассажиром текстовый номер кредитной карточки

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

//Строка значения третьего столбца набора данных

buildTestString.Length = 0;

buildTestString.Append("IvoCard-000-000-0000-");

buildTestString.Append(addItemsCount);

m_data_creditCards[addItemsCount] = buildTestString.ToString();

}

//Добавить элемент, поиск которого мы хотим выполнить в нашем тесте...

//Выбрать день для значения в первом столбце данных

m_data_travelDates[DUMMY_ROWS_OF_DATA] = System.DateTime.Today;

//Строка для второго столбца данных

m_data_names[DUMMY_ROWS_OF_DATA] = "Ms. TestPerson";

//Строка с идентификатором кредитной карточки

m_data_creditCards[DUMMY_ROWS_OF_DATA] = ТЕST_CRE DIT_CARD;

} //Конец функции

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

//Выполнить тест...

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

void changeDayOfTravel_test() {

//Отобразить курсор ожидания

System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;

//Начать с известной даты...

System.DateTime newDate;

newDate = System.DateTime.Today;

changeDayOfTravel_CustomArrays(ТЕST_CREDIT_CARD, newDate);

//ТОЛЬКО В ЦЕЛЯХ ТЕСТИРОВАНИЯ!!!

//HE СЛЕДУЕТ использовать вызовы сборщика мусора в готовом программном

//коде. Это ЗАМЕДЛЯЕТ работу приложения.

System.GC.Collect();

const int testNumber = 0;

//Запустить таймер теста

PerformanceSampling.StartSample(testNumber, "Custom Array implementation");

//Запустить тест!

for(int testCount = 0; testCount < NUMBER_TEST_ITERATIONS; testCount++) {

//Передвинуть дату вперед на один день

newDate = newDate.AddDays(1);

int numberRecordsChanged = 0;

//Просмотреть все имена, используя СТРОКИ

numberRecordsChanged = changeDayOfTravel_CustomArrays(TEST_CREDIT_CARD, newDate);

//Убедиться в нормальном выполнении теста...

if (numberRecordsChanged != 1) {

System.Windows.Forms.MessageBox.Show("No matching records found. Test aborted!");

return;

}

}

//Получить время выполнения теста

PerformanceSampling.StopSample(testNumber);

//Обычный курсор

System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default;

//Отобразить результаты теста

string runInfo = NUMBER_TEST_ITERATIONS.ToString() + "x" +

DUMMY_ROWS_OF_DATA.ToString() + ": ";

System.Windows.Forms.MessageBox.Show(runInfo +

PerformanceSampling.GetSampleDurationText(testNumber));

}

private int changeDayOfTravel_CustomArrays(string creditCardNumber, System.DateTime newTravelDate) {

int numberRecordsChanged = 0;

//Просмотреть каждый элемент массива

for (int index = 0; index <= DUMMY_ROWS_OF_DATA; index++) {

string currentCreditCard;

currentCreditCard = m_data_creditCards[index];

//Обновить запись при наличии совпадения

if (creditCardNumber == currentCreditCard) {

//Изменить дату поездки

System.DateTime currentTravelDate = m_data_travelDates[index];

//Увеличить значение счетчика обновлений только при несовпадении данных

if (currentTravelDate != newTravelDate) {

m_data_travelDates[index] = newTravelDate;

numberRecordsChanged++;

}

}

}

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

return numberRecordsChanged;

}

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

createDataSet();

changeDayOfTravel_test();

}

Пример использования базы данных на устройстве и управления пользовательскими данными

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

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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