Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Высокоуровневые методы информатики и программир...docx
Скачиваний:
3
Добавлен:
24.09.2019
Размер:
122.57 Кб
Скачать

Область видимости

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

Область видимости задается одним из ключевых слов: Public/Private/Dim/Static

Public. Если переменная объявлена с использованием этого ключевого слова, то она является глобальной и доступна из всех форм и модулей проекта. Если переменная объявлена как Public в коде формы, то из других форм и модулей доступ к ней должен осуществляться через следующую конструкцию: ИмяФормы. ИмяПеременной. Такая переменная не может быть объявлена внутри процедуры.

Private - переменная доступна только в пределах контекста, в котором объявлена. Такая переменная может быть объявлена внутри модуля, класса или структур, но не внутри процедуры.

Если переменная объявлена, как Static, то она остается существовать в памяти и сохраняет свое последнее значение после завершения работы процедуры, в которой она была объявлена. Static-переменная не может быть объявлена вне процедуры.

Dim. Такая переменная доступна из любого места программы в пределах области видимости, содержащей оператор Dim. Таким образом объявляют локальные переменные, которые существуют только во время вызова той процедуры, где они определены. Но если переменная с помощью Dim объявлена в разделе глобальных объявлений формы или модуля, то она будет доступна во всех процедурах этой формы или модуля, но для других форм и модулей такая переменная будет невидимой.

Для создания глобальной переменной вначале главного модуля приложения помещают оператор Public.

Для объявления переменной, локальной внутри модуля или формы используют операторы Private или Dim.

Переменные, локальные на уровне процедуры, создаются операторами Dim или Static внутри процедуры.

Присвоение значений переменной может производиться при объявлении:

Public/Private/Dim/Static Имя Переменной[As Тип данных] [=Значение] или с помощью оператора присваивания: Имя переменной = выражение

  1. Процедуры и функции в языке Visual Basic.

Ответ

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

Процедуры могут принимать входные значения и возвращать результат.

В VB существуют следующие виды процедур:Sub, Function

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

Процедуры Sub подразделяются на общие процедуры и процедуры событий.

Общие процедуры

Общая процедура имеет следующий синтаксис:

[уровень Доступности] Sub имяПроцедуры (параметры)

операторы (тело процедуры)

End Sub

Общие процедуры заканчиваются первым встреченным утверждением End Sub, Exit Sub или Return.

С помощью параметра уровеньДоступности указывается, доступна ли процедура другим частям программы. Может принимать следующие значения:

Public — процедура общедоступна в проекте, в котором определена;

Private — процедура доступна только в том классе или модуле, в котором она определена;

Protected — защищенные процедуры доступны внутри класса, в котором они объявлены, а также в производных от данного классах.

Friend — дружественные процедуры доступны только внутри той сборки, в которой объявлены. Сборка — полностью самостоятельная единица приложения, которая обычно соответствует всей программе, поэтому данный модификатор можно воспринимать как указание видимости в пределах программы;

Protected Friend — доступность процедуры расширяется на сборку и производные классы.

Между ключевыми словами Sub и End Sub в процедуре располагаются выполняемые при ее вызове операторы программного кода. Параметр аргументы используется для объявления передаваемых в процедуру переменных.

Процедуры обработки событий связаны с объектами, размещенными в формах, или с самой формой и выполняются при возникновении события, с которым они связаны, например, щелчок мышью на какой-либо кнопке окна. Для события, связанного с формой, процедура обработки событий Sub имеет следующий синтаксис:

Private Sub имяФормы_имяСобытия (параметры) Handles Mebase.ИмяСобытия

операторы

End Sub

Наименование процедуры обработки события для формы содержит имя формы, заданное в свойстве Name, затем размещается символ подчеркивания (_) и имя события.

Для события, связанного с элементом управления формы, процедура обработки Sub имеет следующий синтаксис:

Private Sub имяЭлемента_имяСобытия (параметры) Handles имяЭлемента.ИмяСобытия

операторы

End Sub

Вызов процедуры Sub осуществляется с помощью следующего синтаксиса:

[Call] имяПроцедуры(аргумент1, аргумент2, ..., аргументN]

Процедуры – функции Function возвращать значение в вызывающую процедуру. Синтаксис процедуры имеет вид:

[уровеньДоступности] Function имяПроцедуры(параметры) [Аs type]

операторы (тело процедуры)

End Function

В качестве уровня доступности может быть указано Publik, Private, Protected, Friend, Protected Friend

Процедуры Function, как и переменные, имеют тип, задаваемый с помощью ключевого слова As. Если тип процедуры не задан, по умолчанию ей при­сваивается тип Objekt

Тип процедуры определяет в свою очередь тип возвращаемого ею значения.

Возвращаемым значением называется значение, которое функция передает обратно в вызвавшую ее программу. Функция может вернуть значение двумя способами:

  1. значение присваивается самому имени функции один или несколько раз по ходу выполнения процедуры. Управление (и, соответственно, возвращаемое значение) не будет передано в программу, вызвавшую функцию, до тех пор, пока не выполнится Exit Function или End Function;

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

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

Если функция возвращает массив, то внутри этой функции невозможен доступ к отдельным элементам массива.

Переменные, передаваемые процедуре в момент вызова, называют аргументами процедуры. По умолчанию они имеют тип Objekt. VB позволяет задавать их тип с помощью ключевого слова As:

Function Square(ByVal a As Double) As Double

Передача аргументов в процедуру может осуществляться двумя способами: по значению (by value) и по ссылке (by reference).

  1. В первом случае в процедуру в качестве переменной передается не сама переменная, а ее копия. Поэтому изменение параметра в процедуре затрагивает не переменную, а ее копию. Для передачи в процедуру параметров по значению используется ключевое слово ByVal.

  2. При передаче аргументов по ссылке процедура получает доступ к области памяти, в которой эта переменная хранится, в результате чего при изменении в процедуре параметра происходит изменение значения переменной. Для передачи в процедуру аргументов по ссылке используется ключевое слово ByRef.

При выборе способа передачи аргументов (по ссылке или по значению) решающим критерием является, должен ли он изменяться в процедуре. При передаче аргумента по значению, то он гарантированно не будет изменен в ходе выполнения процедуры. Так как при передаче по значению происходит копирование объекта, данные большого объема (например, структуры), более эффективно передавать по ссылке. Преимущество передачи аргументов по ссылке заключается в возможности возвращать измененное значение аргумента в вызвавшую ее программу. Используется в случае, когда в процедуре изменяется несколько переменных.

При вызове функции или процедуры аргументы могут быть переданы позиционно или по имени.

Если аргументы передаются позиционно, то они должны при вызове указываться в том же порядке, что и в заголовке функции или процедуры.

Если аргументы передаются по имени, то при вызове нужно указывать имя параметра из заголовка функции или процедуры, затем двоеточие и знак равенства (:=), а потом значение аргумента. Порядок перечисления при этом значения не имеет.

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

  1. Управление данными. Особенности ADO.NET. Использование LINQ для обработки данных

Ответ

VB 2008 использует модельдоступа к данным ADO.NET

ADO.NET — основная модель доступа к данным для приложений, основанных на Microsoft.NET, предназначенная для совместного доступа к данным. Это реализуется двумя способами:

  1. Используются отсоединенные (автономные наборы данных) — соединение устанавливается только на время, необходимое для проведения операции над базой данных.

  2. Для передачи данных может быть использована встроенная в ADO. NET поддержка формата XML, имеющего текстовое представление.

Передача данных в формате XML обеспечивает возможность легко отделять компоненты обработки данных от компонентов пользовательского интерфейса. Размещение этих компонентов на отдельных серверах существенно повышает эффективность и надежность многопользовательских систем.