TGTGInsightаналитика telegramLIVE / telegram public index
← Программирование для гуманитариев
Программирование для гуманитариев avatar

TGINSIGHT POST

Post #342

@it_human

Программирование для гуманитариев

Просмотры2,900Количество просмотров
Опубликован9 дек.09.12.2020, 13:54
Содержимое поста

Содержимое

ООП Для тех, кто присоединился недавно, ввожу в курс дела: многие подписчики жаловались мне, что начали изучать программирование, но не смогли разобраться с такой темой как ООП (объектно-ориентированное программирование). Поэтому я начала серию постов про ООП, где разбираем на пальцах и максимально простыми словами основные понятия. Кто не читал предыдущие посты из этой серии, рекомендую начать с них: - Что такое классы - Что такое экземпляры классов, и как их создавать Сегодня же разберёмся с самим понятием «объектно-ориентированное программирование». Собственно ООП - это подход к программированию, основанный на использовании классов и экземпляров этих классов. У этого подхода есть ряд принципов, о которых я расскажу подробнее в дальнейшем (абстракция, инкапсуляция, наследование, полиморфизм). В языках программирования, которые поддерживают ООП всегда присутствуют классы. Например, в Java обойтись без классов вообще невозможно. C++ также придуман специально для ООП, но в нём при желании можно и не пользоваться классами. Но помните, что это своего рода моветон - по-хорошему, если вы не используете классы и ООП, значит нужно писать на языке Си, а не C++. А есть языки, которые поддерживают ООП, но позволяют обходиться и без него. Например, такой язык - Python. Причем, ООП в Python специфический: там есть классы, но принципы ООП там можно не соблюдать (синтаксис языка это никак не ограничивает). Так что по сути это ООП, основанное на джентельменских соглашениях, то есть на надежде, что программисты сами добровольно не будут их нарушать. Есть языки, в которых вообще нет ни классов, ни ООП. Например, языки C и Go. А есть и вовсе функциональные языки - в них, если несколько упрощать, никакие промежуточные объекты не используются, а результаты вычислений передаются из одной функции в другую по цепочке, пока не будет получен нужный результат - это Lisp, Haskell и другие. Подробнее принципы ООП (абстракция, инкапсуляция, наследование, полиморфизм) - разберем в следующих постах. Задать вопрос автору блога можно здесь: @hum_it_bot