Разница между объектно-ориентированным программированием и процедурным программированием

Разница между объектно-ориентированным программированием и процедурным программированием
Разница между объектно-ориентированным программированием и процедурным программированием

Видео: Разница между объектно-ориентированным программированием и процедурным программированием

Видео: Разница между объектно-ориентированным программированием и процедурным программированием
Видео: Объектно-ориентированное программирование 2024, Апрель
Anonim

Объектно-ориентированное программирование против процедурного программирования

Объектно-ориентированное программирование (ООП) и процедурное программирование - это две парадигмы программирования. Парадигма программирования - это фундаментальный стиль компьютерного программирования, который различается по способу представления различных элементов программы и определению шагов для решения проблем. Как следует из названия, ООП фокусируется на представлении проблем с использованием реальных объектов и их поведения, в то время как процедурное программирование занимается представлением решений проблем с помощью процедур, которые представляют собой наборы кода, которые выполняются в определенном порядке. Существуют языки программирования, которые поддерживают ключевые аспекты ООП (называемые языками ООП), процедурные (называемые процедурными языками) и то и другое. Но важно отметить, что ООП и процедурный - это два способа представления проблем, которые нужно решить, и не имеет значения, какой язык используется. Другими словами,Языки ООП могут использоваться для процедурного программирования, в то время как процедурные языки могут иногда использоваться для ООП, с некоторыми усилиями.

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

В ООП основное внимание уделяется размышлениям о проблеме, которую необходимо решить, в терминах элементов реального мира и представлении проблемы в терминах объектов и их поведения. Объект - это структура данных, которая очень похожа на какой-то реальный объект. Объекты содержат поля данных и методы, которые представляют атрибуты и поведение реальных объектов. Существует несколько важных концепций ООП, таких как абстракция данных, инкапсуляция, полиморфизм, обмен сообщениями, модульность и наследование. Некоторые популярные языки ООП - Java и C #. Однако их также можно использовать для выполнения процедурного программирования.

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

Рекомендуем: