Основы объектно-ориентированного программирования

Когда речь заходит об объектно-ориентированном программировании, реакция бывает разной. Например, опытные девелоперы считают это обычным для них инструментом, начинающие пользователи же думают, что это «секретное оружие программистов». Но это лишь слова. Как же на практике? Попробуем разобраться...

Согласно определению, то объектно-ориентированное программирование – это вид программирования, основанного на объектах. Объект – это некоторая структура, которая может выполнять какие-либо действия (методы) и иметь какие-либо свойства (поля). Объекты разделяются по определённым группам (классам). Возьмём, например, кнопку. При нажатии она выполняет запрограммированный ей метод. Она имеет размеры, указанные в полях. Кнопка, как и поле для ввода текста, как и надпись, относится к классу элементов управления. А теперь изобразим это в виде программного кода на языке C#:

using System;
using System.Windows.Forms
;
using System.Drawing
;
 
class Program : Form
{
    Button Button1;
    public Program(
)
    {
        Button1 = new Button(
)
;
        Button1.Text = "Это кнопка"
;
        Button1.Top = 100
;
        Button1.Left = 100
;
        Button1.Height = 50
;
        Button1.Width = 70
;
        Button1.Click += new System.EventHandler
(Button_Click)
;
        this.Controls.Add
(Button1)
;
    }
 
    static void Main(
)
    {
        Application.Run
(new Program(
)
)
;
    }
 
    void Button_Click(object sender, EventArgs e)
    {
        Button1.Text = "Это метод, вызванный нажатием кнопки"
;
    }
}

А теперь попробуем разобраться во всём этом.

Первые три строки подключают библиотеки классов, необходимые для работы программы. Затем создаётся класс Program, наследник класса System.Windows.Forms.Form, то есть наследовавший возможности этого класса. Сам же класс Form отвечает за работу с окном (формой) и создание тех самых элементов управления. Всё это лежит в сложной иерархии, поэтому мы сейчас не будем разбираться во всём этом. Подробнее об иерархии классов .NET Framework вы можете почитать в учебниках по объектно-ориентированному программированию.

Далее «предупредив» компьютер о работе с объектом под названием «Button1», мы создали сам объект. Потом в полях мы добавили свойства, а именно надпись, положение и размер. Потом начинается самая сложная часть – создание события и далее вызов метода. Событие – это метод, вызываемый при определённых условиях, в нашем случае, при нажатии кнопки. После полного создания и описания объекта мы создаём саму кнопку, как элемент управления.

Строка static void Main() означает входной метод, то есть метод, который будет вызван при запуске программы. Это тоже своего рода событие, только присвоенное самой программе. В этом методе мы запускаем саму программу. Легко запутаться, не правда ли? Чтобы было понятно, метод вызывается до запуска программы, затем он же её и запускает.

Последний метод Button_Click – это тот самый метод, вызванный нажатием кнопки. Он изменяет надпись на кнопке на «Это метод, вызванный нажатием кнопки».
Теперь можете открыть Visual C# Express или Visual Studio, создать новый проект WindowsApplication, удалить элемент Form1.cs, заменить код в файле Program.cs вышеприведённым, запустить проект и посмотреть, что получится!

Сложно? Так и должно быть. Поначалу объектно-ориентированное программирование всем даётся нелегко. Но постепенно к этому привыкаешь, и в конце концов оно становится незаменимым и удобным инструментом профессионального программиста. Самое главное – это иметь цель и стремиться к ней. И тогда всё получится!

У меня техническое образование и всю свою сознательную жизнь связан с техникой. Это и работа, и хобби.
Подробнее
0