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

на главную - закладки

Жанры

Программирование для карманных компьютеров

Волков Владимир

Шрифт:

VB.NET: Основные возможности и отличия от VB 6

Microsoft взяла за основу для разработки приложений в технологии. NET два языка – VB.NET и C#.NET. Если синтаксис языка C# является почти полной копией синтаксиса Java, то VB.NET унаследовал свой синтаксис от старого Visual Basic. Это сильно облегчило переход к новым технологиям тем, кто привык к «обычному» VB. Но если Visual Basic 6 всегда считался легким для освоения «игрушечным» языком, в котором серьезные возможности недоступны или сильно урезаны, то по отношению к VB.NET это совершенно неверно. Поскольку VB.NET реализует все межъязыковые соглашения. NET Framework, то по функциональности он, казалось бы, совершенно не должен отличаться от C#. На самом деле, это, к сожалению, не так. В следующем списке приведены новые возможности языка VB.NET.

? Структурированная обработка исключений.

? Полная поддержка объектно-ориентированного программирования.

? Полная интеграция с. NET Framework.

? Возможность программирования с новым типом объектно-ориентированных указателей на функции (delegates).

Отличия eVB и Visual Basic для. NET

В основном отличия VB.NET от eVB связаны с интеграцией языка VB с Compact Framework и определяются именно внутренней структурой самой CF.

Типы данных

В eVB был один-единственный тип данных на все случаи жизни, Variant, который достался eVB по наследству от VB Script. Visual Basic.NET, как и всякий серьезный язык, использует множество разных типов данных, но при этом не использует Variant. В табл. 6.3 приведены типы данных, используемые в VB.NET.

Таблица 6.3. Типы данных в VB.NET

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

Dim strMyString As String = «Это моя строка»

В VB.NET невозможно объявить строку с ограниченной длиной, а при объявлении массива его нижняя граница обязательно должна быть равна нулю.

Язык

Некоторые отличия коснулись и самого языка. В отличие от eVB, в VB.NET при работе с объектами нельзя присваивать и читать значения свойства по умолчанию. Подобного свойства просто нет, и доступ к любому свойству объекта должен осуществляться в общепринятой форме, через точку, как показано в следующем фрагменте кода.

Label1.Text = «Дата»

При вызове процедур и функций VB.NET приблизился к большинству языков программирования, которые помещают аргументы в скобки. Теперь аргументы функций и процедур в обязательном порядке должны помещаться в скобки, как показано в следующем фрагменте кода.

MsgBox («Это сообщение»)

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

В VB.NET были введены операторы присваивания с операцией, до этого применявшиеся только в языках из семейства C. Это значит, что вместо записи j = j+1 разработчик может использовать запись j+=1.

Но старый синтаксис все еще может применяться. Никакого влияния на размер или скорость выполнения конечного кода эта замена не оказывает. Возможно она была введена именно для обеспечения большей совместимости и переносимости кода C# и VB.NET.

Доступ к данным

Механизм доступа к данным в VB.NET сильно изменился по сравнению с eVB. Стандартными средствами доступа стали классы, определенные в пространстве имен System.Data. При этом в VB.NET присутствует поддержка доступа как к серверной, так и к локальной версии MS SQL Server, а также поддержка создания локальных баз данных на основе XML. Но пока не предоставляется доступ к данным с использованием ADO.CE, также отсутствует поддержка доступа к Pocket Access и к системным базам данных Windows CE.

Обработка исключений

Обработка исключительных ситуаций в VB.NET носит структурированный характер и организована при помощи директив Try\Catch\Finally.

Поддержка работы с XML

Поскольку. NET Framework включает в себя работу с данными в формате XML как базовую функциональность, естественно, что в VB.NET тоже добавлена поддержка обработки XML-данных. В версии CF эта поддержка ограничена классами XMLReader, XMLWriter и XMLDocument.

Использование формата XML облегчило в VB.NET разработку клиентских приложений для веб-сервисов, а также создание локальных баз данных на основе файлов XML.

VB.NET для Compact Framework

Тестовое приложение

Чтобы ознакомиться с инструментами, которые предлагает для разработки приложений Pocket PC на VB.NET среда Microsoft Visual Studio.NET 2003, нужно создать простое приложение, попутно выясняя назначение и настройки разных инструментов, окон и панелей.

Упражнение 6.1

1. Запустить Visual Studio.NET. Чтобы создать новый проект, нужно нажать кнопку New Project на панели инструментов (рис. 6.1).

Рис. 6.1. Инструмент New Project.

Также можно выполнить команду меню File ? New ? Project. На экран будет выведено окно мастера создания нового проекта (рис. 6.2).

Рис. 6.2. Окно мастера создания нового проекта.

2. В группе Project Types можно выбрать тип создаваемого проекта. Для Pocket PC можно создать проекты только двух типов – Visual Basic и Visual C#. Группа Templates содержит набор шаблонов, на основе которых создается проект выбранного типа. И для проектов типа Visual Basic, и для проектов тип Visual C# приложения для Pocket PC создаются на основе шаблона Smart Device Application. В поле Name указывается имя создаваемого проекта. Путь к каталогу, в котором будет размещаться проект, указывается в поле Location.

3. В окне Project Types нужно указать тип проекта Visual Basic, а затем выбрать в окне Templates шаблон Smart Device Application. Проект должен получить имя Simple, а путь можно выбрать любой. После нажатия кнопки OK, на экран будет выведено окно мастера, позволяющего более точно указать настройки будущего проекта (рис. 6.3).

Рис. 6.3. Окно мастера создания проекта Smart Device Application.

4. В верхней части окна нужно выбрать значение Pocket PC, а в нижней части окна – Windows Application. После нажатия кнопки OK в среде разработки будет открыт готовый шаблон проекта для создания приложения Pocket PC. Этот проект представляет из себя одну форму, с размещенным на ней пустым шаблоном главного меню (рис. 6.4).

Рис. 6.4. Шаблон проекта Windows Application.

5. Щелкнуть на компоненте MainMenu1 на панели невидимых компонентов в нижней части окна проекта. В окне редактирования формы проявится линейка главного меню, как это показано на рис. 6.5. Нужно щелкнуть на первом пункте меню и ввести слово Меню.

Рис. 6.5. Редактирование пунктов главного меню.

6. После этого, щелкая на области с надписью Type Here выше этого пункта, нужно последовательно ввести названия команд Акварель, Масло, Гуашь (рис. 6.6).

Рис. 6.6. Редактирование команд главного меню.

7. Двойным щелчком на пункте меню Акварель следует открыть окно кода с шаблоном обработчика события и ввести код, приведенный в листинге 6.1. Листинг 6.1

Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

Handles MenuItem2.Click

MsgBox(«Акварель», MsgBoxStyle.Information, «Акварель»)

End Sub

8. Сохранить проект. Для запуска созданного приложения потребуется выполнить несколько дополнительных действий.

9. Указать устройство, на котором приложение будет выполняться. Это делается при помощи выбора из списка Deployment Device на панели инструментов.

10. Указать, какую сборку запускать – отладочную или окончательную. Это делается выбором значения из списка Solution Configurations на панели инструментов.

11. Наконец, из пункта меню Debug необходимо выбрать команду Start (если вы собираетесь производить отладку) или Start Without Debugging (если вы хотите просто запустить приложение).

12. В качестве целевого устройства нужно выбрать Pocket PC 2003 Emuliator, а в качестве конфигурации – Release. После этого нужно выполнить команду Start Without Debugging. Будет запущен эмулятор, среда выполнит соединение с ним, затем произведет поставку. NET Run-time и приложения на эмулятор и, наконец, запустит программу на выполнение. Сообщение обо всех этих этапах вы увидите в строке состояния среды.

13. В запущенной программе нужно щелкнуть мышью на пункте главного меню и выполнить команду Акварель. На экран будет выведено окно сообщений с заголовком и сообщением Акварель.

Инструменты, которые применяются при отладке приложения, мало отличаются от инструментов, применяемых в Embedded Visual C++. Те же окна для отслеживания значений переменных в левой нижней части экрана среды Autos, Locals, Watch, предназначенные для отслеживания как локальных, так и глобальных и объектных переменных в программе. В правой нижней части экрана среды находятся окна, перечисленные в следующем списке.

? Окно Call Stack отображает содержимое стека при вызове подпрограмм.

? Окно Breakpoints позволяет отслеживать состояние и управлять точками останова.

? Окно Command Window позволяет вводить команды на языке Visual Basic.

? Окно Output предназначено для консольного вывода программы.

? Окно Task List содержит оперативные заметки, позволяющие на ходу вносить напоминания о том, что надо исправить или доделать в текущем модуле.

Более полезное приложение

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

Это будет программа учета использования времени. Поскольку я сам в свое время, воодушевленный примером профессора Любищева (Даниил Гранин, роман «Эта странная жизнь»), начал учитывать свое время и обнаружил, что это полезно, то несколько раз пытался автоматизировать этот учет. Однако вести учет времени на настольном компьютере – задача не из легких, ведь носить компьютер с собой нереально. Приходилось записывать заметки в записную книжку, а затем переносить их в основной компьютер. Наладонник же словно специально для этого и создавали, поэтому как только я приобрел свой Pocket, тут же создал для него программу учета времени.

Смысл работы этой программы прост. Есть несколько категорий занятий, на которые разбивается вся ваша деятельность. Когда вы приступаете к выполнению той или иной задачи, то отмечаете время ее начала, а когда заканчиваете заниматься этой работой – отмечаете время окончания. В конце дня (недели, месяца, года) учитываете время, потраченное на каждую категорию, и удивляетесь. Если вы честно и с точностью до 5 (у Любищева – до 10) минут учитываете все полезные и бесполезные затраты времени, то один факт честного самоанализа уже поднимет вашу производительность вдвое. Вас, возможно, сильно удивит, сколько времени, которые вы считали потраченным на работу или учебу, на самом деле уходит на перекуры, кофе и болтовню.

Но даже если вас не воодушевляют подобного рода самовоспитательные экзерсисы, то в процессе создания этой программы можно будет использовать максимально широкий набор технологий VB.NET для Compact Framework. Но перед этим следует узнать о. NET CF немного больше.

Элементы управления. NET CF

С левой стороны рабочего стола Visual Studio располагается окно Toolbox, в котором отображаются элементы управления, применяемые в приложениях Pocket PC, создаваемых на VB.NET (рис. 6.7).

Рис. 6.7. Набор элементов управления. NET CF.

Поделиться:
Популярные книги

Паладин из прошлого тысячелетия

Еслер Андрей
1. Соприкосновение миров
Фантастика:
боевая фантастика
попаданцы
6.40
рейтинг книги
Паладин из прошлого тысячелетия

Я до сих пор не князь. Книга XVI

Дрейк Сириус
16. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я до сих пор не князь. Книга XVI

Тринадцатый

Северский Андрей
Фантастика:
фэнтези
рпг
7.12
рейтинг книги
Тринадцатый

Последний реанорец. Том III

Павлов Вел
2. Высшая Речь
Фантастика:
фэнтези
попаданцы
5.25
рейтинг книги
Последний реанорец. Том III

Кодекс Императора II

Сапфир Олег
2. Кодекс Императора
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Императора II

Язычник

Мазин Александр Владимирович
5. Варяг
Приключения:
исторические приключения
8.91
рейтинг книги
Язычник

Главное управление

Молчанов Андрей Алексеевич
Проза:
роман
6.25
рейтинг книги
Главное управление

Камень Книга седьмая

Минин Станислав
7. Камень
Фантастика:
фэнтези
боевая фантастика
6.22
рейтинг книги
Камень Книга седьмая

Жена по ошибке

Ардова Алиса
Любовные романы:
любовно-фантастические романы
7.71
рейтинг книги
Жена по ошибке

Ущелье дьявола

Сандему Маргит
21. Люди Льда
Фантастика:
фэнтези
9.22
рейтинг книги
Ущелье дьявола

Тактик

Земляной Андрей Борисович
2. Офицер
Фантастика:
альтернативная история
7.70
рейтинг книги
Тактик

Я все еще не царь. Книга XXVI

Дрейк Сириус
26. Дорогой барон!
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Я все еще не царь. Книга XXVI

Крепость над бездной

Лисина Александра
4. Гибрид
Фантастика:
боевая фантастика
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Крепость над бездной

Вечный. Книга V

Рокотов Алексей
5. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга V