Основни принципи на ОПО и тяхното използване
Обща информация
OOP е стил на програмиране, който се появява през 80-те години на 20-ти век. За разлика от процедурните езици, където данните и инструкциите за тяхното обработване съществуват отделно, в обектно-ориентираното програмиране тази информация се комбинира в едно цяло.
Основни принципи на OOP
в програмиране на обектно програмиране имат свои собствени постулати. Принципите на ООП са неговите основни идеи. Има три най-важни от тях: наследство, полиморфизъм и капсулиране. По-долу ще разгледаме по-подробно всеки от тях. Основите на програмирането в езиците на OOP се състоят в използването на обекти и класове. При преминаване от процедурния стил на писане на изходния код към обектно-ориентиран, често има сложност, но повечето разработчици намират много предимства в OOP.
капсулиране
Капсулирането е използването на комбиниране на данни и инструкции за тяхното обработване в един единствен клас. По време на писането на програми на един от езиците на OOP се прави разлика между информацията в предприятието и отвън. По този начин е възможно да се гарантира сигурността на данните и методите за тяхното прилагане от външни влияния, например от други класове, които не са свързани с този обект. В рамките на предприятието данните успешно взаимодействат помежду си, но надеждно се защитават от него неоторизиран достъп отвън.
наследяване
Вторият принцип на OOP - наследяване - е способността на един клас да използва методите на другия, без да повтаря действителното им изпълнение. Наследството ви позволява да се освободите от излишъка на изходния код.
полиморфизъм
Друг принцип на ООП е полиморфизмът. Използването му означава, че за да манипулирате обекти с различна сложност, можете да създадете интерфейс, който да реагира по различен начин на събитията и едновременно с това да изпълнява правилно задачите.
ООП Езици
Принципите на OOP се използват в популярни езици за програмиране като C ++ и Java, върху които се разработват значителен брой програми и приложения. Има и по-малко използвани OOP езици - Delphi, Object Pascal, Ruby и много други.
Критика на ООП
Въпреки повечето позитивни изявления към тази методология, принципите на ООП често се критикуват. Както и с процедурно програмиране, ООП има своите недостатъци.
Първо, сложността на прехода. За да разберем принципите на ППО, ще отнеме много време, особено за хора, които работят в тясно сътрудничество само с процедурни езици за програмиране.
На второ място, по-сложна документация е недостатък, тъй като ще е необходимо не само да се опишат класовете и обектите, но и конкретни случаи на тяхното изпълнение.
Трето, прекомерната универсалност на методите може да доведе до факта, че изходният код и разработените програми ще бъдат претоварени с функции и възможности, които не са необходими в този конкретен случай. В допълнение, обърнете внимание на неефективността по отношение на разпределението на паметта. Въпреки това, независимо от мнението на другите, броят на програмистите на ОПП непрекъснато нараства и самите езици се развиват бързо.
- Обектно-ориентирано програмиране
- Модулно програмиране
- Структурирано програмиране
- Обектно ориентирано програмиране (ООП): полиморфизъм
- Java програмен език
- Списък на езиците за програмиране. Програмни езици на ниско и високо ниво
- Как да научите програмиране от нулата на популярни езици за програмиране
- Какво е Ruby? Програмен език "Ruby"
- Информатика. Основи на алгоритмизацията и програмирането
- Капсулиране е какво? Капсулиране в програмирането
- ООП е какво? Основни принципи на обектно-ориентираното програмиране
- Най-популярните езици за програмиране. Програмни езици за начинаещи
- Оценка на езиците за програмиране 2016
- История на разработването на езици за програмиране: накратко за всичко
- Използване на indexOf (jаvascript) при работа с масиви и низове
- Процедурното програмиране е какво?
- Какъв език за програмиране трябва да избера за начинаещ, който да научи
- Видове данни
- Най-лесният език за програмиране за начинаещи
- Каква е системата за програмиране
- Класификация на езиците за програмиране по нива