Приветствую разработчиков!

Это Сертан, бывший преподаватель английского языка и опытный инженер-программист Full Stack с опытом работы более 3 лет.

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

Учитывая паутину этого паука, каждая нить паутины подобна классу в нашем программном обеспечении. Эти классы имеют детали и действия. И точно так же, как нити соединяют части паутины, линии на нашей диаграмме показывают, как классы связаны друг с другом.

Ой, подожди! Почему паук-ткач строит такую ​​детальную паутину?

Потому что это помогает эффективно ловить пищу! Точно так же диаграммы классов помогают программистам избегать ошибок, экономить время и, в конечном итоге, ловить больше мух!

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

Предположим, мне нужно объяснить больше, верно? :)

Я собираюсь предоставить несколько снимков экрана, представляющих каждый раздел нашей программы, прямо со мной!

Описание класса и атрибутов класса

Описание методов класса

Связи между классами

Давайте создадим класс Book вместе с классом Person. Автором книги может быть человек, поэтому мы представляем ее следующим образом:

Иногда у книги может быть несколько авторов. В таких случаях нам нужен список авторов, да?

Вы ставите знак зодиака на конец стрелки и вуаля!

А как насчет тех случаев, когда оба класса знают друг о друге? Затем мы просто опускаем стрелку и получаем простую линию. Именно так:

А вот и хорошая часть! НАСЛЕДОВАНИЕ

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

Абстрактные классы и интерфейсы

Изобразить этих двоих действительно просто. Мы просто добавляем

‹‹абстрактный ›› или ‹‹интерфейс ››

поверх имени класса, и все готово.

Наконец!

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

И эй, в следующий раз, когда вы увидите паука, плетущего свою паутину, кивните ему с уважением. В конце концов, они — архитекторы OG мира природы. Продолжайте работать, продолжайте кодировать, и пусть ваши сети программного обеспечения всегда выявляют правильные ошибки (а не тип программного обеспечения!). Приятного кодирования! 🕷️🕸️🖥️

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