Структурное программирование против объектно-ориентированного программирования
Объектно-ориентированное программирование (ООП) и структурированное программирование - это две парадигмы программирования. Парадигма программирования - это фундаментальный стиль компьютерного программирования. Парадигмы программирования отличаются тем, как представлен каждый элемент программ и как определены шаги для решения проблем. Как следует из названия, ООП фокусируется на представлении проблем с использованием реальных объектов и их поведения, в то время как структурированное программирование занимается организацией программы в логической структуре..
Что такое структурированное программирование?
Предполагается, что год рождения структурированного программирования - 1970 год. Структурное программирование считается подмножеством императивного программирования. Структурированная программа состоит из простых структур программных потоков, которые иерархически организованы. Это последовательность, выбор и повторение. Последовательность - это порядок утверждений. Выбор означает выбор оператора из набора операторов на основе текущего состояния программы (например, для использования операторов if), а повторение означает выполнение оператора до достижения определенного состояния (например, для использования операторов for или while). ALGOL, Pascal, Ada и PL / I являются одними из языков структурированного программирования, используемых сегодня.
Что такое объектно-ориентированное программирование?
В ООП основное внимание уделяется размышлению о проблеме, которая должна быть решена с точки зрения элементов реального мира, и представлению проблемы с точки зрения объектов и их поведения. Классы изображают абстрактные представления объектов реального мира. Классы похожи на чертежи или шаблоны, которые собирают похожие элементы или вещи, которые можно сгруппировать вместе. Классы имеют свойства, называемые атрибутами. Атрибуты реализованы как глобальные переменные и переменные экземпляра. Методы в классах представляют или определяют поведение этих классов. Методы и атрибуты классов называются членами класса. Экземпляр класса называется объектом. Следовательно, объект - это структура данных, которая очень похожа на некоторый объект реального мира..
Существует несколько важных концепций ООП, таких как абстракция данных, инкапсуляция, полиморфизм, обмен сообщениями, модульность и наследование. Как правило, инкапсуляция достигается путем придания атрибутам приватности при создании открытых методов, которые можно использовать для доступа к этим атрибутам. Наследование позволяет пользователю расширять классы (называемые подклассами) из других классов (называемых суперклассами). Полиморфизм позволяет программисту заменить объект класса вместо объекта его суперкласса. Как правило, существительные, найденные в определении проблемы, непосредственно становятся классами в программе. И точно так же глаголы становятся методами. Некоторые из самых популярных языков ООП - это Java и C #.
В чем разница между структурным программированием и объектно-ориентированным программированием?
Основное различие между структурированным программированием и ООП заключается в том, что основное внимание в структурированном программировании состоит в том, чтобы структурировать программу в иерархию подпрограмм, в то время как основное внимание в ООП уделяется разделению задачи программирования на объекты, которые инкапсулируют данные и методы. ООП считается более гибким, чем структурированное программирование, потому что ООП отделяет программу от сети подсистем, а не структурирует программу по иерархии. Даже несмотря на то, что структурирование обеспечивает определенную ясность, небольшое изменение в очень большой структурированной программе может вызвать волновой эффект необходимости изменения нескольких подпрограмм..