- •Методические рекомендации к лабораторным работам по дисциплине «Информатика »
- •Содержание
- •Тема 1. Изучение интегрированной среды разработки microsoft visual studio. Работа с переменными и арифметическими выражениями на языке visual basic 2012 и .Net framework.
- •Лабораторная работа №1
- •Пример выполнения индивидуального задания.
- •Тема 2. Работа с элементами управления, меню и панелями инструментов. Программирование процедур Sub и Function.
- •Тема 3. Программирование алгоритмов линейной структуры. Создание классов и объектов.
- •Лабораторная работа №3
- •Индивидуальное задание
- •Пример выполнения индивидуального задания
- •Решение
- •Тема 4. Введение в объектно-ориентированное программирование. Создание класса, его свойств и методов. Программирование разветвляющейся структуры алгоритма.
- •Лабораторная работа №4
- •Тема 5. Циклическая структура алгоритма. Табулирование. Построение графиков и сплайнов функций.
- •Вычисление суммы
- •Вычисление произведения
Тема 3. Программирование алгоритмов линейной структуры. Создание классов и объектов.
Вопросы (задачи), подлежащие исследованию:
Понятие объектно-ориентированного программирования;
Создание классов, их методы и свойства;
Создавать в классе новый метод;
Создавать в классе новое свойство.
В последнее время становится необходимым при создании практических программ умение понимать и использовать технику объектно-ориентированного программирования (ООП). Изменения, связанные с ООП, набирают силу: в последних версиях Visual Basic2010 и Visual Basic 2010 перестали отставать от языка C++, поскольку теперь они также поддерживают наследования – механизм, при котором один класс дает возможность приобрести интерфейс и поведение другого класса.
Классы являются стандартными блоками в программах Visual Basic. При изучении классов имеется потенциальная опасность непонимания из-за перегрузки терминологии, вместе с тем в данной работе рассматривается материал, в котором предпринимается попытка свести к минимуму эти трудности.
Класс в Visual Basic 2010 – это представление или описание, которое определяет структуру какой-либо сущности реального мира. Класс является кодом, определяющим объектом; используя класс, можно создать любое количество объектов, которое называются экземплярами (instance) класса.
Объект – это код, создаваемый на основе абстракций рассматриваемой сущности. Это могут быть существующие процессы или явления, или любые технические системы или отношения, определяющие их поведение. Например, объектом может быть Лектор созданный на основе реального лектора, такого как преподаватель Морского университета, или объектом может быть Файл, представляющий файл C:\bd.mdb на жестком диске компьютера.
Visual Basic 2012 поддерживает все четыре основные определяющие концепции, при которых язык остановится полностью объектно- ориентированным.
Абстракция – метод решения задачи, при котором объекты разного рода объединяются общим понятием, а затем рассматриваются как элементы единой категории. Абстракция – это возможность языка создавать код какого либо понятия в виде «черного ящика» для реализации этого понятия внутри программы. Например, можно создать объект Customer («Клиент»), который будет являться абстрактным представление клиентов реального мира.
Инкапсуляция – техника, при которой несущественная с точки зрения интерфейса объекта информация прячется внутри него. Основная идея инкапсуляции состоит разделении интерфейса и реализации, т. е. можно создавать интерфейс (методы, свойства, события в классе), и пока этот интерфейс существует, приложение может взаимодействовать с объектами. Это будет выполняться, даже если полностью переписать код внутри какого то метода – таким образом, интерфейс не зависит от реализации.
Полиморфизм – свойство, позволяющее использовать один и тот же интерфейс для различных действий; полиморфной переменой, например, может соответствовать несколько различных методов.
Наследование представляет собой идею, что любой класс может получить интерфейс и поведение созданного ранее класса.
В предыдущих работах под словом «интерфейс» понимался графический интерфейс однако этот термин имеет более широкое значение. Интерфейс определяется как множество методов (Sub-или Function-процедур), свойств (Property-процедур), событий полей, которые объявлены как Public.
Например, имеется следующий код некоторого класса:
Public Function Routine () As Single
End Function,
Этот метод объявлен с помощью ключевого слова Public, поэтому является частью интерфейса и может быть назван приложением, использующим объект этого класса.
Если же методы или свойства объявлены как Private, они не будут частью интерфейса и не смогут вызываться программами, написанными для использования какого либо объекта; например, метод Schedule () может быть вызван только в коде класса, где он объявлен
Private Sub Schedule ()
…
End Sub
В тоже время можно создать еще один метод Routine ():
Public Sub Routine ()
Schedule ()
End Sub,
который позволит вызывать метод Schedule () за пределами класса, где он объявлен. В этом случае удается вызвать Private метод Schedule () изнутри Public метода.
Код внутри метода называется реализацией (implementation).
Интерфейс используется для доступа к данным и поведению объекта. Клиентское приложение можно рассматривать как объект, подобный черному ящику, с доступом к нему только через интерфейс. Это ключевая идея объектно-ориентированной концепции, и именно ее называют инкапсуляцией. Идея состоит в том, что любая программа, которая использует данный объект, не будет иметь прямого доступа к его поведению или данным; более точно можно сказать, что программа скорее имеет возможность использовать интерфейс этого объекта.
Инкапсуляцией является синтаксическим инструментом – она дает возможность коду выполняться без изменений. Однако это не семантика, означающая, что если код работает, то это обязательно нужно.
Важной частью объекта является его данным. Каждый экземпляр класса является абсолютно идентичным с точки зрения его реализации; единственное, что может изменяться – это данные внутри этого конкретного объекта.
Поля являются переменными, которые объявляются с тем, чтобы они были доступными всем кодам в пределах класса. Они будут доступными для каждого индивидуального объекта, при запуске приложения. Каждый объект получают собственный набор данных - в основном, каждый объект получает собственную копию из полей.
При создании новой формы в проекте Visual Basic 2010 всегда создается класс (Public Class Form 1), определяющий внешний вид этой формы. Начинающие пользователи обычно и используют этот класс формы (или нескольких форм) для написания в нем своих процедур. Однако, как правило, это всего лишь имитация объектно-ориентированного программирования, поскольку в этом случае не продумываются ни назначение объектов, ни их поведение. Такое программирование не в состоянии учитывать и динамические свойства решаемой задачи, т. Е. такой проект имеет все те недостатки, для преодоления которых и была разработана методология объектно – ориентированного программирования. Фактически в таком проекте объектно – ориентированный язык применяется как традиционный процедурный язык, с той только разницей, что используется графический интерфейс Visual Studio, но этого совершенно недостаточно, чтобы реализовать все возможности современной технологии программирования.
Создание собственного класса. Классы в Visual Basic. NET объявляются в файл *.vb (в одном файле может быть более одного класса). Синтаксис объявления класса:
Public Class Имя Класса
Переменные класса
Свойства класса
Методы класса
События класса
End Class
Кроме ключевого слова Public иногда применяются и другие модификаторы доступа элементам класса, такие как Private, Protected или Friend.
Рассмотрим, например, следующий код класса mClass:
Public Class mClass
Private fox As String
Private fox1 As Integer
End Class
Здесь объявлены две закрытые (Private) переменных Fox и Fox 1, при этом Fox имеет символьный тип, а Fox 1является числовой переменной целого типа.
Можно управлять зоной видимости поля с помощью следующих ключевых слов:
● Private – доступно только для кода внутри класса;
● Friend – доступно только коду в рамках проекта;
● Protected – доступно только классам, наследующим другие классы;
● Public – для кода вне класса и любых проектов, которые ссылаются на сборки.
В большинстве случаев поля объявляются с помощью ключевого слова Propert тогда они доступны только для кода в пределах каждого экземпляра класса. Другую видимость поля надо выбирать очень аккуратно, поскольку она позволяет коду за пределами класса непосредственно взаимодействовать с любыми переменами, а это означает, что значение переменной может измениться, но код класса не будет знать об этих изменениях.
Не следует путать поля со свойствами (Property). В Visual Basic 2010 Property представляет собой метод, направленный на получение и установку значений, тогда как поля – это переменные внутри класса, которые могут содержать значения, объявленные как свойства.
Если необходимо, чтобы значение поля было доступно за пределами объекта, тогда надо использовать свойство, например:
Public Class mClass
Private Fox As String
Private Fox 1 As Integer
Public Property Name ( ) As String
Get
Return fox
End Get
Set (BuVal Value AS String)
Fox=Value
End Set
End Property
End Class ……………….
Внутри тела свойства используются специальные процедура Get..
