- •Содержание
- •Тема 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
Тема 1. Введение в язык программирования c#
-
Первое знакомство с языком программирования с#
С# (произносится как "си шарп") — это новый язык программирования, в котором, по замыслу создателей, должны сочетаться выразительность и простота. Его цель — позволить программисту создавать сложные высокопроизводительные программы.
В 1998 году перешедший в Microsoft создатель языков Delphi и Turbo Pascal Андерс Хейльсберг (Anders Hejlsberg) начал со своей командой работу над первой версией языка С#. Его авторы попытались объединить в нем то, что нравилось им и многим другим программистам в уже существовавших языках. При этом в С# были добавлены новые функции, соответствующие возможностям и потребностям сегодняшнего дня.
Языки программирования и компиляторы
Слово программа часто используется для описания двух различных элементов - исполняемой программы целиком или фрагмента исходного кода. В данном случае термины "исходный код", "исходная программа" или просто "код", используются в отношении фрагмента исходного кода. Исполняемая программа называется "исполняемой программой", "приложением" либо просто "программой".
Программировать на первых компьютерах, изготовленных в сороковых годах прошлого столетия, было очень непросто. Для этого использовался машинный язык, который состоял из последовательностей битов, напрямую управляющих простыми действиями процессора. Программирование на уровне машинного языка — чрезвычайно трудоемкое, нудное и утомительное занятие. Возможность абстрагироваться от машинного языка значительно упростило процесс программирования, и вскоре появились другие языки высокого уровня. Одним из последних дополнений в семье языков высокого уровня стал С#.
Однако как бы высоко мы ни уходили от базовых инструкций процессора, нам по-прежнему нужен машинный код, который аппаратное обеспечение компьютера может понимать — а значит, и исполнять. Традиционно, превращение исходного кода, написанного на языке высокого уровня, в машинный код осуществляли системные программы, которые называются компиляторами,
На рис.1.1. приведена простая иллюстрация того, как исходный код типичного языка высокого уровня превращается в исполняемую программу.
Рис. 1.1. Схема процесса компиляции.
Написанный текст, который содержит инструкции языка высокого уровня, называется исходным кодом. В случае С# этот исходный код хранится в файле с расширением .cs. Чтобы преобразовать исходный код в машинный, требуется компилятор. Результатом компиляции становится исполняемая программа, которая состоит из инструкций машинного языка.
Устройство компьютера
Компьютер — это совокупность аппаратного и программного обеспечения.
Аппаратное обеспечение (hardware) — это физические, осязаемые компоненты компьютера, а программное обеспечение (software) — это программы, которые также называются приложениями. Программы содержат инструкции, которые исполняются аппаратным обеспечением.
Аппаратное обеспечение. Когда пользователь взаимодействует с компьютером, он обеспечивает ввод информации. В ответ на это, компьютер обрабатывает введенные данные, возвращая пользователю результаты — т.е. обеспечивает вывод информации. Ввод может осуществляться в форме команд, текста, числовой информации или изображений. Вывод также может иметь самые разные формы — это могут быть и результаты расчетов в электронных таблицах, и письмо, отпечатанное на принтере, и движущееся на экране изображение автомобиля в имитаторе автогонок,
Для обеспечения ввода пользовательской информации у компьютера есть несколько устройств ввода — к примеру, клавиатура и мышь.
Пользователю вывод чаще всего предоставляется такими устройствами, как экран и принтер, однако устройства вывода очень разнообразны, и некоторые из них предназначены для узко специализированных задач.
В состав компьютера входят также менее очевидные для пользователя компоненты — процессор и память.
Процессор — устройство внутри компьютера, выполняющее инструкции, из которых состоят программы. Другие названия процессора — ЦПУ (центральное процессорное устройство). Существует множество типов процессоров. Хорошо известными примерами являются процессоры Pentium различных поколений.
Процессор способен выполнять лишь очень простые инструкции, например элементарные арифметические операции или перемещение данных, скажем, чисел, из одной точки памяти в другую. Однако делает он это с очень высокой скоростью, что позволяет ему, проходя через головоломные комбинации инструкций, выполнять очень сложные операции.
Память компьютера можно разделить на два типа — основную (оперативную) и вспомогательную (долговременную) память.
Вспомогательная память включает устройства, предназначенные для длительного или постоянного хранения данных, которые считываются лишь в случае необходимости. Типичными примерами вспомогательной памяти являются флоппи-диски, диски CD-ROM и жесткие диски,
В основной, или оперативной, памяти хранятся исполняемые в данный момент программы, а также результаты промежуточных вычислений. Английский термин для оперативной памяти — RAM — Random Access Memory, или память произвольного доступа.
Помимо исполняемых программ и их частей, в оперативной памяти хранится значительная часть данных, с которыми работают программы. Примерами данных могут быть скорости ветра в различных областях тайфуна в программе, моделирующей тайфун, либо текущее положение на трассе гоночного автомобиля в автоимитаторе. С#, как и другие языки, позволяет программисту присваивать данным имена, а затем и обращаться к ним по этим именам. Таким образом, внутренние механизмы функционирования оперативной памяти почти всегда остаются скрытыми от программиста. Ими занимается сам С# вместе с операционной системой компьютера. Однако чтобы создавать корректные программы, программист должен все же выбирать способ представления используемых программой значений в оперативной памяти. От того, насколько правильно он это делает, зависят компактность и скорость программы.
Программное обеспечение. В сущности, компьютерное программирование — это создание программного обеспечения, которое заполняет пробел между очень примитивными операциями, реализованными в аппаратном обеспечении (описанными выше и практически бесполезными для конечного пользователя) и программами типа текстовых редакторов или табличных процессоров, в которых реализована функциональность, направленная на удовлетворение конкретных нужд конечного пользователя.
