oop



История ооп

Автор Александр Пушков задал вопрос в разделе Другие языки и технологии

Объектно ориентированное программирование. (ООП) и получил лучший ответ

Ответ от Rollzed[гуру]
Так никто нормально и не ответил!
Три признака ООП: инкапсуляция, наследование и полиморфизм. - Я просто мечтала о таком ответе! Теперь мне все ясно про ООП!
Хотя нет, просветление я получила услышав "парадигма основанная на понятиях... " Чел, ты хотя бы запятые правильно научись расставлять!
Я не претендую на подобную гениальность и отвечу проще:
относительно php, если ты при написании кода создаешь классы и используешь конструкции $myClass->myVar, то ты работаешь с ООП. Тут все ссылки на C++ делают, потому что начиная с C++, весь язык C - объектно ориентированный. Там по другому нельзя, особенно в C#.
В php, который предназначен в основном для создания HTML-страниц и в 99.99% возвращает строку, часть ООП используется только для удобства структуризации данных, чтобы в одой переменной хранить и параметры и функции. Все эти задачи можно решить и с помощью функций. А вот для задач, связанных с системами объектов - уже без ООП не обойтись. DOM документа, система частиц, структура организации...
Rollzed
Гуру
(4146)
Ну как так? Ну за что? Зачем взрывать мозг? При чем тут наивность, и почему ты противоречишь сам себе про изложение учебников? Сам то процитировал учебник! "Критерий знания" - это как вообще? Зачем умничать и взрывать нормальным людям мозги?

Ответ от BloodKad[новичек]
В общем, это работа с классами и методами (функциями)!

Ответ от Нейроразнообразие.[гуру]
"Современный объектно-ориентированный язык предлагает, как правило, следующий обязательный набор синтаксических средств:
- Объявление классов с полями (данными — членами класса) и методами (функциями — членами класса).
- Механизм расширения класса (наследования) — порождение нового класса от существующего с автоматическим включением всех особенностей реализации класса-предка в состав класса-потомка. Большинство ООП-языков поддерживают только единичное наследование.
- Полиморфные переменные и параметры функций (методов) , позволяющие присваивать одной и той же переменной экземпляры различных классов.
- Полиморфное поведение экземпляров классов за счёт использования виртуальных методов. В некоторых ООП-языках все методы классов являются виртуальными.
Видимо, минимальным традиционным объектно-ориентированным языком можно считать язык Оберон, который не содержит никаких других объектных средств, кроме вышеперечисленных (в исходном Обероне даже нет отдельного ключевого слова для объявления класса, а также отсутствуют явно описываемые методы, их заменяют поля процедурного типа). Но большинство языков добавляют к указанному минимальному набору те или иные дополнительные средства. В их числе:
- Конструкторы, деструкторы, финализаторы.
- Свойства (аксессоры).
- Индексаторы.
- Интерфейсы (например, в Java используются также как альтернатива множественному наследованию — любой класс может реализовать сколько угодно интерфейсов).
- Переопределение операторов для классов.
- Средства защиты внутренней структуры классов от несанкционированного использования извне. Обычно это модификаторы доступа к полям и методам, типа public, private, обычно также protected, иногда некоторые другие.
Часть языков (иногда называемых «чисто объектными» ) целиком построена вокруг объектных средств — в них любые данные (возможно, за небольшим числом исключений в виде встроенных скалярных типов данных) являются объектами, любой код — методом какого-либо класса, и невозможно написать программу, в которой не использовались бы объекты. Примеры подобных языков — Smalltalk, Java, C#, Ruby, AS3, 1Cик. Другие языки (иногда используется термин «гибридные» ) включают ООП-подсистему в исходно процедурный язык. В них существует возможность программировать, не обращаясь к объектным средствам. Классические примеры — C++, Delphi, Python, PHP и Perl."

Ответ от Metotron[гуру]
Ты можешь знать php и не знать ООП. В php зачатки его появились в 4-й ветке, в пятой развились, а потом ещё нифигически развились в одной из подверсий, так что если кто учился по четвёртому и немного читал про пятый, то впору учиться заново.
Читай.

Ответ от Наташа лисейцева[активный]
Ето такая парадигма основанная на понятиях класса и объекта))

Ответ от ERET1K[гуру]
Молодец. По крайней мере удостоился написать вопрос внятный и с пояснениями! Таких мало (
Объект в программировании - то же что и в жизни.
Раньше программирование было процедурным. То есть с верху в низ по строчкам выполнялись команды - процедуры.
И были функции: если какая то процедура очень часто повторяется или нуждается в большом количестве, или размере переменных то такие процедуры объединяли в функции. Так как после отработки функции её содержимое можно разрушить и освободить память (хотя вообще там много чего можно: -).
Но поводимому такой подход не был столь хорош и придумали объекты. Объединяющие в себе кучу взаимосвязанных: переменных, функций (методов объекта). То есть объект имеет много возможностей описанных программистом. И при всем при этом к нему очень легко обратиться.
Когда обращаешься к объекту передавая в него какие то данные, может отработать огромное количество его функций и результат останется в его собственных переменных. Такая вещь с обычными функциями не прокатит (и перегрузки или рекурсии тут все равно непомогут) .
аналог - автомобиль: в него можно залить бензин и тогда завести, включить передачу и начнут вращаться ходовые колеса.
В общем все призвано сделать программирование легче.

Ответ от Игорь Марченко[гуру]
Если простым языком, то ООП грубо говоря - принцип программирования, который присутствует почти во всех современных языках программирования. Если раньше для структурируемости и не повторяемости кода создавали функции, то теперь создают классы.
Класс - некая абстрактная сущность, у которой есть поля (глобальные переменные внутри класса) и методы (те же функции).
Например, если описывать человека используя ООП, то можно создать класс "гуманоид". У гуманоида есть характеристики, такие как цвет, возраст, рост - это и есть поля класса. Также гуманоид может бегать, прыгать, дышать - это методы, то есть действия, которые может совершать объект.
Есть 3 основных принципа ООП: инкапсуляция, наследование и полиморфизм. Используя например наследование можно расширить класс гуманоид классом человек. То есть не создавать опять все те же поля и методы, которые есть у гуманоида, а указать, что класс "человек" дополняет (наследует) класс "гуманоид". И теперь класс "человек" может внести больше конкретики. Например, что у него есть имя и фамилия, проживает там-то и т. д.

Ответ от =Serge=[гуру]
Кратко ООП - это способ программирования с обьектами.Обьекты в ООП это абстракция реальных или вымышленных обьектов реального мира.Преимущество состоит в закрытости и целостности обьекта, а также упрощении программирования его использования( не нужно глубоко знать , как работает обьект), его просто юзают.
Три признака ООП: инкапсуляция, наследование и полиморфизм.Если их знаешь и понимаешь- ты знаешь ООП.Очень хороший учебник по ООП С++ для полных новичков:<table><tr><td>oop</td></tr></table>

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Объектно ориентированное программирование. (ООП)
спросили в Хоккей Азиза
Лучший ХК на траве времён СССР?
СКА Свердловск и Динамо Алма-Ата.. .

Алматинское «Динамо» - 15-кратный чемпион СССР,
подробнее...

Самый удачный мод СТАЛКЕРА?
Лично я играю в Народную Солянку (2013 - где качал не помню). Там и финал неплохой. Вылетов
подробнее...
спросили в Visual Basic NET
Visual Basic .NET против C#. Кто что может сказать? Чем тот или иной язык лучше или хуже другого?
C# разрабатывался как язык новый и идеально подходящий для .NET. Жёстко завязан на объекты.

подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

Чей флаг? (см.)
Это флаг Палестины

Государство Палестина (араб. دولة
подробнее...

как начать программировать на С++ ?
Среда разработки обычно лишь создаёт определённые удобства.
Но такие визуальные среды как
подробнее...
спросили в Политика
Что такое сектор газа?
Сектор Газа — территория на берегу Средиземного моря, выделенная ООН для арабского государства
подробнее...
Класс программирование на Википедии
Посмотрите статью на википедии про Класс программирование
Объектно-ориентированное программирование на Википедии
Посмотрите статью на википедии про Объектно-ориентированное программирование
Объектно-ориентированное проектирование на Википедии
Посмотрите статью на википедии про Объектно-ориентированное проектирование
Окна сатиры РОСТА на Википедии
Посмотрите статью на википедии про Окна сатиры РОСТА
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*