Мегаобучалка Главная | О нас | Обратная связь


Написание программного кода



2019-08-13 483 Обсуждений (0)
Написание программного кода 0.00 из 5.00 0 оценок




Теперь можно написать программный код для проекта Проект-4-1-Лаб. Так как большинство созданных ранее объектов уже «знают», как им надо работать, при запуске программы они будут готовы к приему ввода от пользователя и его обработке. Встроенная функциональность объектов является одной из самых сильных сторон  VS  и C# – после того, как объекты будут размещены на форме и их свойства будут установлены, они готовы к запуску без дополнительного программирования (визуальное программирование).

Так как программой управляют кнопки Вычислить и Завершить, программный код нашего проекта должен быть связан именно с этими кнопками. Для ввода и редактирования операторов программы на C# предназначено окно Редактор программного кода ( Code Editor).

1) Дописать код программы для обработки событий нажатия кнопки button1и кнопкиbutton2, используя окно Редактор кода (Code Editor).

Внутри окна Редактора кода (Code Editor) находятся строки кода, связанного с текущей формой. Операторы программы, которые используются совместно для выполнения некоторого действия, обычно группируются в программные конструкции, называемые процедурами, функциями или методами Обычно метод выполняются при определенных обстоятельствах, например, таких, как щелчок на кнопке или вызовом специального оператора. Когда процедура ассоциирована с конкретным объектом и событием, она называется событийной функцией.

При двойном щелчке мышью на кнопке ЗАВЕРШИТЬ C# автоматически добавляет первую строку процедуры события private void button2_Click(), а также открывающую и закрывающую процедуру фигурные скобки({})

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

Между заголовком и концом процедуры ввести функцию Close(), а затем нажать на клавишу со стрелкой вниз.

Все операторы программы должны следовать грамматическим правилам компилятора. В VS операторы программ могут состоять из ключевых слов, свойств, имен объектов, переменных, чисел, специальных символов и других значений. При вводе операторов программы и внесении других изменений, окно Редактор кода (Code Editor) выполняет многие задачи, связанные с форматированием, включая настройку отступов, пробелов и добавление необходимых скобок. Точное написание, оператора программы называется синтаксисом оператора.

Теперь, когда написан код, связанный с кнопкой Завершить, необходимо написать код для кнопки Вычислить.

2) Написать программный код, который будет выполняться при нажатии кнопки Вычислить., то есть событийную процедуру для кнопкиbutton1.

Чтобы отобразить форму, щелкнуть в окне Обозреватель решений (Solution   Explorer) на кнопке Конструктор (View Designe r). В режиме Редактор программного кода (Code Editor) форма, с которой производится работа, не отображается. Кнопка Конструктор (View Designer) является одним из тех механизмов, которые используются для того, чтобы снова вывести форму на экран. Также можно щелкнуть на вкладке Form1.vb [Конструктор].

Дважды щелкнуть мышью на кнопке Вычислить.

Через некоторое время появится окно Редактор кода (Code Editor), и рядом с процедурой события, связанной с кнопкой button2, появится процедура события, ассоциированная с кнопкой button1.

Хотя текст этой кнопки был изменен на «Вычислить», ее имя в программе осталось button1. (Имя и текст элемента интерфейса могут быть различными для удобства программирования.) Каждый объект может иметь несколько связанных с ним процедур - по одной для каждого распознаваемого события.

После ввода каждой строки необходимо нажать <Enter>,а для создания отступа необходимо нажать на <Таb> и следить за вводом операторов программы в точности так, как они напечатаны на рис. 4.1-8. (При вводе длинных строк Редактор кода (Code Editor) будет прокручивать экран влево.) Если будет сделана ошибка, которая обычно определяется по подчеркиванию волнистой лини­ей, удалите неверную строку и введите ее снова. При вводе кода программы C# форматирует ее текст и отображает различные части программы различными цветами, которые помогают распознавать различные элементы. В момент ввода свойства отображается список, содержащий все допустимые свойства объекта, так что вместо набора свойства вручную можно дважды щелкнуть на свойстве мышью. Если C# отображает сообщение об ошибке, то оператор, скорее всего, введен с ошибкой. Сверьте строку с текстом в книге, сделайте необходимые исправления и продолжайте набирать. Также можете удалить всю строку и начать вво­дить ее заново. Кроме того, C# может автоматически добавлять необходимый код.

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

· Символы, представляющие собой число, вводятся с клавиатуры в строковую переменную.

· Выполняется преобразование из строки в переменную соответствующего типа.

Преобразование можно выполнить либо с помощью специального класса Convert, определённого в пространстве System (как в рассмотренных примерах Темы 4.1), либо с помощью метода Parse, имеющегося в каждом арифметическом классе.

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form {    public Form1()    {        InitializeComponent();    }    private void button2_Click(object sender, EventArgs e)    {        Close();    }    private void button1_Click(object sender, EventArgs e)    {        float A, B, C, P, Pp, S;        String AA, BB, CC;        //Присваивание АA значения TextBox1        AA = textBox1.Text;        //Присваивание А значения AA с преобразованием типа        A = float.Parse(AA);        BB = textBox2.Text;//Присваивание ВB значения TextBox2        B = float.Parse(BB);        CC = textBox3.Text; //Присваивание СC значения TextBox3        C = float.Parse(CC);        //Вычисление периметра и присваивание значения Р        P=(A + B + C);        //Вычисление полуперим. и присваивание значения Рр        Pp = P / 2;        //Вычисление площади и присваивание значения S        S =(float)Math.Sqrt(Pp *(Pp - A)*(Pp - B)*(Pp - C));        //Вывод значения полупериметра в поле TextBox4        textBox4.Text = Convert.ToString(P);        //Вывод значения площади в текстовое поле TextBox5.        textBox5.Text = Convert.ToString(S);    } } }

Рис. 4.1-8

 

3) Сохранить введенный программный код, выполнив команду Сохранить все (Save All) элемента главного меню Файл (File).

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

4) Сохранить введенный программный код, выполнив команду Сохранить все (Save All) элемента главного меню Файл (File).

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

Щелкнуть на кнопке Обзор (Browse) справа от текстового поля Местоположение (Location) и выбрать место для сохранения файлов.

Необходимо использовать папку на диске d:\... (место, где находятся файлы лабораторных работ, созданные студентами). Если необходимо сохранить только элемент, с которым в настоящий момент работаете (форму, модуль кода или что-либо еще), то используется команда Сохранить (Save), также находящаяся в меню Файл (File). Если необходимо сохранить текущий элемент с другим именем, то используется команда Сохранить как (Save As).

5) Отладка и внесение изменений в программу.

На этом этапе проверяется правильность работы программы.      

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

В целом типы ошибок принято разделять на два неравнозначных класса. Один из них – это класс синтаксических ошибок, то есть ошибок, связанных с неправильной записью или употреблением языковых конструкций. Эти ошибки легко исправимы, так как соответствующее программное обеспечение – транслятор – осуществляет автоматический контроль синтаксической правильности программ пользователя, а с помощью контекстно-зависимой помощи можно получить как разъяснения об ошибке, так и узнать правильный вид языковой конструкции.

Другой вид ошибок, действительно представляющий проблему программирования, – смысловые ошибки. Обнаружение и исправление их, что собственно и представляет собой процесс отладки, дело сложное, а порой, как это ни парадоксально звучит, и безнадёжное. Как определить, что программа имеет смысловую ошибку? В лучшем случае программа не работает, то есть её работа прерывается в некоторый момент, и система выдаёт какое-нибудь туманное сообщение типа “исчезновение порядка числа с плавающей точкой”. В худшем случае программа успешно завершает свою работу и выдаёт результаты, отвечающие интуитивным представлениям о характере решения задачи, а о наличии ошибки в программе мы узнаём только после практического внедрения результатов, например, когда по нашим прочностным расчётам построили мост, а он тут же обвалился под собственной тяжестью.

Как обнаружить такие скрытые ошибки? Самый популярный метод – так называемое тестирование. Следует взять такие исходные данные, правильный результат расчёта для которых известен заранее, и выполнить программу с этими данными. Если полученный результат совпадает с известным результатом, то, как говорят, «тест прошёл». Беда в том что, это совсем не означает, что программа не содержит ошибок.

6) После устранения ошибок необходимо запустить программу на выполнение и ввести значения сторон треугольника, как показано на рис. 4.1-9.

Рис. 4.1-9

7) Далее необходимо проанализировать результаты вычислений.

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

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

Запустить программу на выполнение еще раз и ввести значения
сторон, как показано на рис. 4.1-10.

Система выдаст результат, представленный на рис. 4.1-10.

Рис. 4.1-10

 

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

Обратите внимание, что все программы должны проверять вводимые данные на корректность.

8) Проверить работу кнопки ЗАВЕРШИТЬ.

Щелчок по ней должен привести к завершению программы.

Сохраните изменения в проекте.

На диске будет создана папка, в которой хранится ваш проект.

9) Пошаговое выполнение программы

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

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

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

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

Следующим этапом контроля правильности программы является отладка и тестирование на компьютере.

Отладка программы – это процесс поиска и устранения ошибок в программе, производимый по результатам её прогона на компьютере, а тестирование — это испытание, проверка правильности работы программы в целом, либо её составных частей. Отладка и тестирование – это два четко различимых и непохожих друг на друга этапа, поскольку при отладке происходит локализация и устранение синтаксических ошибок и явных ошибок кодирования, а в процессе тестирования проверяется работоспособность программы, не содержащей явных ошибок. Таким образом, тестирование устанавливает факт наличия ошибок, а отладка выясняет ее причину.

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

· пошаговое исполнение программы с остановкой после каждой команды (оператора);

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

· установку в программе «контрольных точек», т.е. точек, в которых программа временно прекращает свое выполнение, так что можно оценить промежуточные результаты, и др.

Для пошагового выполнение программы можно воспользоваться элементом панели инструментов Debug (Отладка ). Эта панель инструментов показана на рис. 4.1-11.

1 2 3 4 5 6

1 – показать следующий оператор;

2 – интерпретация;

3 – локальные;

4 – контрольные значения 1;

5 – стек вызовов;

6 – вывод.                                    

Рис. 4.1-11

 

Если панель инструментов Отладка (Debug) не отображается, необходимо щелкнуть на элементе главного меню Вид ( View) и выполнить команду Панели инструментов (Toolbars), а затем выполнить команду Отладка (Debug).

Далее выясним, в связи с чем произошла ошибка, показанная на рис. 4.1-10. Чтобы выявить проблему, выполним проект в пошаговом режиме.

Для этого сначала установим в окне кода программы контрольную точку останова, например на строке программы вычисления периметра P=(A+B+C);для этого надо выделить мышью эту строку в окне кода и выбрать пункт Создать точку останова из главного меню Отладка. Строка программы выделится красным цветом. Теперь при запуске программы после ввода данных в текстовые поля и нажатия на кнопку Вычислить, выполнение событийной процедуры остановится на выбранной строке итеперь для пошагового выполнения программы воспользуемся кнопкой Шаг с заходом (Step Into), расположенной на стандартной панели инструментов, а для изучения значений ключевых переменных и свойств программы - окном Локальные (Locals).

Для того, чтобы окно Локальные (Locals)было активным, необходимо в панели инструментов Отладка (Debug) щелкнуть на пиктограмме Локальные                    (рис. 4.1-11).

Щелкая каждый раз по кнопке Step Into (Шаг с заходом),программа выполняет один оператор, одновременно отображая значения локальных переменных в окне Локальные (Locals).

После очередного нажатия на кнопку Step Into (Шаг с заходом), отладчик вычисляет значение переменной S, и отображает его в окне Локальные (Locals). 

 



2019-08-13 483 Обсуждений (0)
Написание программного кода 0.00 из 5.00 0 оценок









Обсуждение в статье: Написание программного кода

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (483)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.01 сек.)