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

   TRANSLATIONTABLE_WORDFUNCTION_COLUMN + ") VALUES ('" +

   englishWord + "', '" + germanWord + "', '" +

   System.Convert.ToString(((int) germanWordGender))+ "', '" +

   System.Convert.ToString(((int) wordFunction)) + "' )";

  cmd.ExecuteNonQuery;

 }

} //Конец класса

Листинг 14.7. Пример кода управления данными для GameData.cs

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

//Код управления данными в памяти

//

//Этот код предназначен для управления представлением кода в памяти

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

using System;

internal class GameData {

 //Массив списков для сохранения загружаемых данных

 private static System.Collections.ArrayList m_vocabularyWords All;

 private static System.Collections.ArrayList m_vocabularyWords_Nouns;

 private static System.Collections.ArrayList m_vocabularyWords_Verbs;

 private static System.Collections.ArrayList m_vocabularyWords_Adjectives;

 private static System.Collections.ArrayList m_vocabularyWords_Adverbs;

 private static System.Collections.ArrayList m_vocabularyWords_Prepositions;


 public static bool isGameDataInitialized {

  //Инициализация данных игры, если слова загружены

  get {

   return (m_vocabularyWords_All != null);

  }

 }


 //Возвращает коллекцию всех имеющихся слов

 public static System.Collections.ArrayList AllWords {

  get {

   //Загрузить данные, если они не были инициализированы

   if (m_vocabularyWords_All == null) {

    InitializeGameVocabulary;

   }

   return m_vocabularyWords_All;

  }

 }


 //Возвращает коллекцию всех имеющихся имен существительных

 public static System.Collections.ArrayList Nouns {

  get {

   //Загрузить данные, если они не были инициализированы

   if (m_vocabularyWords_Nouns == null) {

    InitializeGameVocabulary;

   }

   return m_vocabularyWords_Nouns;

  }

 }


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

 //Загружает данные из нашей базы данных

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

 static public void InitializeGameVocabulary {

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

  m_vocabularyWords_All = new System.Collections.ArrayList;

  m_vocabularyWords_Nouns = new System.Collections.ArrayList;

  m_vocabularyWords Verbs = new System.Collections.ArrayList;

  m_vocabularyWords_Adjectives = new System.Collections.ArrayList;

  m_vocabularyWords_Adverbs = new System.Collections.ArrayList;

  m_vocabularyWords_Prepositions = new System.Collections.ArrayList;


  System.Data.IDataReader dataReader;

  dataReader = DatabaseAccess.GetListOfWords;

  VocabularyWord newWord;


  //Обойти все записи

  while (dataReader.Read) {

   //Поместить данные для только что считанного слова в класс

Перейти на страницу:

Похожие книги

Программист-прагматик. Путь от подмастерья к мастеру
Программист-прагматик. Путь от подмастерья к мастеру

Находясь на переднем крае программирования, книга "Программист-прагматик. Путь от подмастерья к мастеру" абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.Прочитав эту книгу, вы научитесь:Бороться с недостатками программного обеспечения;Избегать ловушек, связанных с дублированием знания;Создавать гибкие, динамичные и адаптируемые программы;Избегать программирования в расчете на совпадение;Защищать вашу программу при помощи контрактов, утверждений и исключений;Собирать реальные требования;Осуществлять безжалостное и эффективное тестирование;Приводить в восторг ваших пользователей;Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

Эндрю Хант , Дэвид Томас , А. Алексашин

Программирование / Книги по IT
Разработка ядра Linux
Разработка ядра Linux

В книге детально рассмотрены основные подсистемы и функции ядер Linux серии 2.6, включая особенности построения, реализации и соответствующие программны интерфейсы. Рассмотренные вопросы включают: планирование выполнения процессов, управление временем и таймеры ядра, интерфейс системных вызовов, особенности адресации и управления памятью, страничный кэш, подсистему VFS, механизмы синхронизации, проблемы переносимости и особенности отладки. Автор книги является разработчиком основных подсистем ядра Linux. Ядро рассматривается как с теоретической, так и с прикладной точек зрения, что может привлечь читателей различными интересами и потребностями.Книга может быть рекомендована как начинающим, так и опытным разработчикам программного обеспечения, а также в качестве дополнительных учебных материалов.

Роберт Лав

Программирование, программы, базы данных / Программирование / Книги по IT