- •Содержание
- •Тема 1. Введение в язык программирования c#
- •Первое знакомство с языком программирования с#
- •Языки программирования и компиляторы
- •Устройство компьютера
- •Процесс разработки программного обеспечения
- •Процесс исполнения программы на с#
- •Три различных типа ошибок
- •Знакомство с .Net
- •Синтаксические блоки
- •Тема 2. Синтаксис языка программирования с#, встроенные типы данных Алфавит языка программирования с#
- •Идентификаторы
- •Типы данных языка программирования с#
- •Встроенные простые типы языка c#
- •Совместимость целочисленных типов
- •Тема 3. Переменные, бинарные в языке программирования с# Присваивание значений переменным
- •Бинарные операции.
- •Операции сравнения и логические выражения
- •Алгоритм
- •Тема 4. Операторы ветвления Простой оператор if
- •Оператор if / else
- •Вложенные операторы if
- •Операторы if-else с несколькими ветвями
- •Оператор Switch
- •Рекомендации по использованию оператора switch
- •Область видимости переменных
- •Тема 5. Операторы итерации
- •Оператор цикла while
- •Оператор цикла do-while
- •Оператор цикла for
- •Оператор break
- •Оператор continue
- •Вложенные операторы итерации
- •Тема 6. Массивы Общие сведения
- •Перебор элементов массива Оператор for и foreach
- •????Методы для работы с массивами Многомерные массивы
- •?????Массивы неправильной формы Тема 7. Специальные типы
- •Работа со строками
- •Доступ к отдельным символам в строке.
- •Разработка алгоритма выборки слов
- •Некоторые методы для работы со строками.
- •Тема 8. Объектно-ориентированное программирование ооп основные понятия и предпосылки возникновения.
- •Концепции ооп
- •Убрать Сборки.
- •Элементы класса и применение методов
- •Тема 9. Методы Объявление методов.
- •Статические методы.
- •Конструкторы
- •Семестр 2. Визуальное программирование. Введение в проектирование графических интерфейсов
- •Формы в приложениях c# Работа с формами
- •Добавление формы к проекту
- •Выбор первоначального размещения формы
- •Изменение внешнего вида формы
- •Свойства BackColor, ForeColor и Text
- •Свойства Font, Cursor и BackGroundlmage
- •Прозрачность формы
- •Выбор рамки для формы
- •Кнопки изменения размеров формы
- •Добавление фонового изображения
- •Изменение формы курсора
- •Методы формы
- •Метод Show()
- •Метод ShowDialog()
- •Метод Activate()
- •Метод Hide()
- •Метод Close()
- •События формы.
- •События жизненного цикла формы
- •Событие Load
- •События Activated и Deactivated
- •Изменение текста надписи
- •Изменение шрифта
- •Цвет текста и фона
- •Рамка вокруг поля
- •Изменение курсора мыши
- •Выравнивание текста
- •Меню Добавление меню
- •Позиционирование элементов управления в форме
- •Привязка к сетке
- •Настройка взаимного расположения элементов формы
- •Выравнивание
- •Установка размеров
- •Установка промежутков между элементами
- •Шрифт на кнопке
- •Выравнивание текста
- •Стиль кнопки
- •Блокирование кнопки
- •Изображение на поверхности кнопки
- •Фоновое изображение для кнопки
- •Списки.
- •Список ListBox
- •Список CheckedListBox
- •Список DomainUpDown
- •Элемент управления NumericUpDown
- •Элемент управления TrackBar
- •Форма и клавиша табуляции
- •Установка порядка передачи фокуса при нажатии клавиши Tab
- •Свойство TabStop
- •Вложенные элементы управления и контейнеры
- •Применение элементов управления Group Box и Panel
- •Элемент управления TabControl
- •Стыковка и фиксация элементов управления
- •Свойство Anchor
- •Свойство Dock
- •Обработка событий
- •Проверка данных вводимых пользователем
- •Применение свойств элемента управления TextBox к проверке данных вводимых пользователем
- •Применение событий для проверки на уровне поля
- •События KeyDown и KeyUp
- •Событие KeyPress
- •Работа с фокусом ввода
- •Проверка на уровне формы
- •Оповещение пользователя об ошибках ввода
- •Компонент ErrorProvider
- •Отображение сообщений об ошибках
- •Тема Графика в c#.
- •Контекст отображения
- •Класс Graphics
- •Событие Paint
- •Тема Методы и свойства класса Graphics. Рисование геометрических фигур Рисование линии (DrawLine)
- •Набор линий (DrawLines)
- •Рисование прямоугольника(DrawRectangle )
- •Набор прямоугольников (DrawRectangles )
- •Рисование многоугольника (DrawPolygon)
- •Рисование эллипса(DrawEllipse )
- •Результат работы метода DrawEllipse Рисование сегмента эллипса (DrawArc)
- •Рисование замкнутого сегмента эллипса(DrawPie)
- •Рисование кривых Безье (DrawBezier и DrawBeziers )
- •Рисование канонических сплайнов (DrawCurve и DrawClosedCurve)
- •Рисование закрашенных фигур.
- •Тема. Инструменты для рисования
- •Инструмент для рисования перо (Pen) и его свойства
- •Инструмент для рисования кисть (Brush)
- •Кисть SolidBrush
Процесс разработки программного обеспечения
Процесс разработки программного обеспечения — это последовательность действий, конечным продуктом которой является компьютерная программа. За прошедшие 20 лет были выделены четко определенные этапы процесса разработки ПО. В данном разделе рассматриваются лишь наиболее важные из них.
-
Создание спецификации программы. Определение требований к программе.
-
Проектирование программы. Разработка концепции, позволяющей воплотить требования спецификации в работающей программе. Она определяет пути реализации функциональности, описанной в спецификации, средствами языка программирования высокого уровня, например С#.
-
Написание программы. Разработка и написание исходного кода программы.
-
Тестирование и отладка программы. Необходимо проверить, отвечает ли программа требованиям, определенным в спецификации.
Эти этапы должны выполняться в указанной здесь последовательности. Однако иногда возникают ситуации, когда для продолжения работы над программой необходим возврат к предыдущему этапу. Рассмотрим каждый из этапов более подробно.
Создание спецификации программы. Определение цели — первый шаг к ее достижению. Часто решение скрыто в самой спецификации. Известно, что правильно сформулированная проблема уже содержит свое решение. Вот пример очень простой спецификации программы: "Программа должна уметь вычислять среднее значение двух чисел".
Проектирование программы. Проектирование программы может включать множество различных действий в зависимости от размера и характера конкретного проекта. Большой проект может включать несколько стадий, описанных ниже.
-
Разделение всего проекта на различные функциональные подсистемы. Примерами подсистем могут служить пользовательские интерфейсы, генераторы отчетов, интерфейсы к базам данных.
-
Разбиение каждой подсистемы на модули. Термин "модуль" очень гибок, и принимает различные значения в разных контекстах. Здесь модуль — это совокупность данных и функций, которые могут работать с этими данными. Функции, реализованные в модуле, позволяют ему во взаимодействии с другими модулями данной подсистемы выполнять требования, адресованные к ней. Функция обычно имеет одну очень узкую цель. Она состоит из набора конкретных инструкций, исполняемых одна за другой. Примерами функций могут быть "Найти квадратный корень числа" или "Найти наибольшее значение в списке". В разных высокоуровневых языках эту концепцию называют по-разному: процедуры, функции, подпрограммы. В С# функции называются методами.
-
Определение данных и методов в каждом модуле. Службы, предлагаемые модулями, делятся на удобные части, достаточно компактные, чтобы их можно было реализовать в рамках одного метода. Каждой части модуля назначается свой метод и, соответственно, каждый метод получает определенную функциональность. И, наконец, создатели программы определяют данные, которые могут быть представлены этим модулем.
-
Внутреннее проектирование методов. Проектированием на этом уровне обычно занимается программист, разрабатывающий конкретный метод. На данном этапе разрабатываются алгоритмы выполнения очень узких, конкретных задач и пишутся первые операторы на языке высокого уровня, — например, на С#.
Написание программы. "Настоящие" операторы пишутся на С#. Данная часть процесса создания ПО обязательно присутствует в проектах любого масштаба.
Тестирование и отладка программы. Программа подвергается различным тестам (как во время написания, так и после него). Тесты необходимы, чтобы убедиться, что программа выполняет именно то, что должна выполнять. Тестирование, в частности, позволяет обнаружить (и исправить) ошибки, допущенные в процессе проектирования и написания программы. Чтобы написать корректную программу, необходимо с тщательностью подходить к проектированию всех ее элементов и написанию исходного кода. Однако людям свойственно ошибаться, и ошибки (им соответствует английское слово bugs) закрадываются в программу самыми разными, иногда совершенно неожиданными путями. Процесс поиска и устранения ошибок называется отладкой (английский термин — debugging, от bug).
Небольшие, неформальные проекты (например, многие из программ, с которыми читатель столкнется в данной книге) часто включают лишь уровни 3 и 4. Программист может выполнить их, сидя перед компьютером. Стадия проектирования программы реализуется либо в голове у программиста, либо на листке бумаги в форме нескольких диаграмм, либо в виде поиска нескольких стандартных алгоритмов в учебнике.