Динамическая отладка программ. — КиберПедия 

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Динамическая отладка программ.

2019-09-26 440
Динамическая отладка программ. 0.00 из 5.00 0 оценок
Заказать работу

Для динамической отладки программ используется механизм контрольных точек.

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

Для контрольной точки может быть установлено условие останова.

Вопросы.

1. Чем отличается метод Console.WriteLine() от метода Console.Write()?

2. Чем отличается метод Console.ReadLine() от метода Console.Read()?

3. Какой тип имеет литеральная константа 3.2?

4. Как явным образом уточнить тип литеральной константы?

5. Что обозначается константой NaN? И в каких случаях компилятором используется данная константа?


 


Лабораторная работа 2.
Технология объектно-ориентированного программирования

Теоретические сведения.

В основе языка С# лежит технология объектно-ориентированного программирования (ООП). Все программы на языке С# в большей или меньшей степени являются объектно-ориентированными.

Основные понятия в рамках ООП.

ООП основано на таких понятиях как " класс ", " объект ", " интерфейс ", " инкапсуляция ", " наследование ", " полиморфизм ", "событие".

Объект в программе это абстракция реального объекта. Объект обладает атрибутами, поведением и индивидуальностью. Атрибуты определяют основные черты объекта, поведение — действия над объектом, индивидуальность — отличие одного объекта от другого с такими же атрибутами по их конкретным значениям. Например: два вектора, у обоих компоненты x и y, но у одного x=2, y=3. А у другого x= -2, y=4.

Класс – это множество объектов с одинаковыми атрибутами и поведением, представляемое в языке программирования в виде абстрактного типа данных, который включает в себя члены класса.

Члены класса:

· поля – непосредственно данные определенного типа для описания атрибутов;

· методы - функции, предназначенные для обработки внутренних данных объекта данного класса;

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

Класс служит типом для создания объектов или, другими словами, объект является экземпляром класса.

Важным свойством объекта является его обособленность. Детали реализации объекта, то есть внутренние структуры данных и алгоритмы их обработки, скрыты от пользователя и недоступны для непреднамеренного изменения. Объект используется через его интерфейс - совокупность правил доступа. Скрытие деталей реализации называется инкапсуляцией.

В ООП данные и методы одного класса могут передаваться другим классам с помощью механизма наследования. Порожденный класс (потомок), наследующий характеристики другого класса, обладает теми же возможностями, что и класс (предок), от которого он порожден. При этом класс-предок остается без изменения, а классу-потомку можно добавлять новые элементы (поля, методы, свойства) или изменять унаследованные методы. Благодаря этому класс - потомок обладает большими возможностями, чем предок. Так, например, в программе на C#  все классы порождены от корневого класса System.Object.

Классы-потомки некоторого класса являются разновидностями этого класса-предка. (Другими словами, класс-предок является обобщением своих потомков). Это означает, что к объектам классов-потомков можно обращаться с помощью одного и того же имени (но при этом могут выполняться различные действия) — что составляет суть полиморфизма.

Программу, построенную на принципах ООП, можно представить как совокупность взаимодействующих объектов. Объект А воздействует на объект Б, и для Б возникает событие, на которое Б отреагирует либо ответным воздействием на А, либо воздействием на объект В. Если А — внешний для системы объект, то Б — интерфейсный объект (отвечающий за взаимодействие системы с внешним миром).

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

Если рассмотреть  программу:

class Program //класс

{

 static void Main () //метод класса

{

Console.WriteLine("Hello!!!");

}

}

Программа содержит класс Program с единственным статическим (static) методом Main, что позволяет обращаться к данному методу класса без создания его экземпляра.

Состав языка

Алфавит и лексемы

Все тексты на языке пишутся с помощью его алфавита. В C# используется кодировка символов Unicode. Кодировкой, или кодовой таблицей (character set), называется соответствие между символами и кодирующими их числами. Кодировка Unicode позволяет представить символы всех существующих алфавитов одновременно. Каждому символу соответствует свой уникальный код.

Алфавит C# включает:

  • буквы (латинские и национальных алфавитов) и символ подчеркивания (_), который употребляется наряду с буквами;
  • цифры;
  • специальные символы, например +, *, { и &;
  • пробельные символы (пробел и символы табуляции);
  • символы перевода строки.

· Из символов составляются более крупные строительные блоки: лексемы, директивы препроцессора и комментарии.

· Лексема (token) — это минимальная единица языка, имеющая самостоятельный смысл. Существуют следующие виды лексем:

  • имена (идентификаторы);
  • ключевые слова;
  • знаки операций;
  • разделители;
  • литералы (константы).

Лексемы языка программирования аналогичны словам естественного языка. Например, лексемами являются число 128 (но не его часть 12), имя Vasia, ключевое слово goto и знак операции сложения +. Далее мы рассмотрим лексемы подробнее.

Директивы препроцессора пришли в C# из его предшественника — языка С++. Препроцессором называется предварительная стадия компиляции, на которой формируется окончательный вид исходного текста программы. Например, с помощью директив (инструкций, команд) препроцессора можно включить или выключить из процесса компиляции фрагменты кода. Директивы препроцессора не играют в C# такой важной роли, как в С++.

Комментарии предназначены для записи пояснений к программе и формирования документации.

Из лексем составляются выражения и операторы. Выражение задает правило вычисления некоторого значения. Например, выражение a + b задает правило вычисления суммы двух величин.

Оператор задает законченное описание некоторого действия, данных или элемента программы. Например:

int a;

Это — оператор описания целочисленной переменной a.

Идентификаторы

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

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

В идентификаторах C# разрешается использовать, помимо латинских букв, буквы национальных алфавитов. Например, правильными являются идентификаторы Фёкла и calc. Более того, можно применять даже так называемые escape-последовательности Unicode, то есть представлять символ с помощью его кода в шестнадцатеричном виде с префиксом \u, например, \u00F2.

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

Ключевые слова

Ключевые слова — это зарезервированные идентификаторы, которые имеют специальное значение для компилятора. Их можно использовать только в том смысле, в котором они определены. Список ключевых слов C# приведен в таблице 1. Как видите, их не так уж и много!

Таблица 1. Ключевые слова C#

bstract as base bool break  
byte case catch char checked  
class const continue decimal default  
delegate do double else enum  
event explicit extern false finally  
fixed float for foreach goto  
if implicit in int interface  
internal is lock long namespace  
new null object operator out  
override params private protected public  
readonly ref return sbyte sealed  
short sizeof stackalloc static string  
struct switch this throw true  
try typeof uint ulong unchecked  
unsafe ushort using virtual void  
volatile while        

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

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

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.016 с.