Чтение онлайн

ЖАНРЫ

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

End If

If ((newWord.getWordFunction And _

VocabularyWord.WordFunction.Adverb) <> 0) Then

m_vocabularyWords_Adverbs.Add(newWord)

End If

If ((newWord.getWordFunction And _

VocabularyWord.WordFunction.Preposition) <> 0) Then

m_vocabularyWords_Prepositions.Add(newWord)

End If

End While

'Закрыть объект DataReader

dataReader.Close

End Sub

End Class

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

Option Strict On

Imports System

'------------------------------

'Хранит данные слова из словаря

'------------------------------

Friend Class VocabularyWord

<System.FlagsAttribute> _

Public Enum WordFunction

Noun = 1

Verb = 2

Pronoun = 4

Adverb = 8

Adjective = 16

Preposition = 32

Phrase = 64

End Enum

Public Enum WordGender

notApplicable = 0

Masculine = 1

Feminine = 2

Neuter = 3

End Enum

Private m_englishWord As String

Private m_germanWord As String

Private m_germanGender As VocabularyWord.WordGender

Private m_wordFunction As VocabularyWord.WordFunction

Public ReadOnly Property EnglishWord As String

Get

Return m_englishWord

End Get

End Property

Public ReadOnly Property GermanWord As String

Get

Return m_germanWord

End Get

End Property

Public ReadOnly Property getWordFunction As WordFunction

Get

Return m_wordFunction

End Get

End Property

Public ReadOnly Property getWordGender As WordGender

Get

Return m_germanGender

End Get

End Property

'-----------------------------------------------------------------

'Возвращает слово на немецком языке, которому предшествует артикль

'(например, 'der', 'die', 'das'), если он существует

'-----------------------------------------------------------------

Public ReadOnly Property GermanWordWithArticleIfExists As String

Get

If (m_germanGender = WordGender.notApplicable) Then

Return Me.GermanWord

End If

Return Me.GenderArticle + " " + Me.GermanWord

End Get

End Property

Public ReadOnly Property GenderArticle As String

Get

Select Case (m_germanGender)

Case WordGender.Masculine

Return "der"

Case WordGender.Feminine

Return "die"

Case WordGender.Neuter

Return "das"

End Select

Return ""

End Get

End Property

Public Sub New(ByVal enlgishWord As String, ByVal germanWord _

As String, ByVal germanGender As WordGender, _

ByVal wordFunction As WordFunction)

m_englishWord = enlgishWord

m_germanWord = germanWord

m_germanGender = germanGender

m_wordFunction = wordFunction

End Sub

End Class

Примеры к главе 15 (передача данных)

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

Этот код представляет собой всего лишь последовательность вызовов функций. Программистам на VB будет несложно написать его, используя в качестве образца код на C#.

Листинг 15.2. Имитация сбоев при передаче данных для тестирования приложения

'Флаги условной компиляции для нашего инструментированного кода

#Const DEBUG_SIMULATE_FAILURES = 1 'Имитировать сбои

'#Const DEBUG_SIMULATE_FAILURES = 0 'Не имитировать сбои

'-----------------------------------------------------------------

'Глобальная переменная, которую мы хотим использовать для указания

'необходимости генерации исключений в процессе передачи данных

'-----------------------------------------------------------------

#If DEBUG_SIMULATE_FAILURES <> 0 Then

'Переменная для хранения информация о следующем сбое

Поделиться с друзьями: