програмна парадигма, базирана на обекти From Wikipedia, the free encyclopedia
Обектно ориентираното програмиране (ООП) е парадигма в компютърното програмиране, при която една програмна система се моделира като набор от обекти, които взаимодействат помежду си, за разлика от традиционното виждане, в което една програма е списък от инструкции, които компютърът изпълнява. Всеки обект е способен да получава съобщения, обработва данни и праща съобщения на други обекти.
Твърди се, че обектно ориентираното програмиране дава повече гъвкавост, като прави по-лесно променянето на програми. То намира широка популярност в софтуерното инженерство на мащабни проекти. Поддръжниците на ООП заявяват, че ООП е по-лесно за учене от начинаещи програмисти, за разлика от по-ранни подходи и методики, както и че ООП подходът е по-прост за разработване и поддържане.[1]
Обектно ориентираното програмиране използва следните понятия:
Това е всъщност редица идеи, повечето от които съществуват от отдавна. Те са събрани заедно, заедно със свързаната с тях терминология, за да бъде създадена методика за програмиране. Говори се, че идеите зад обектно ориентираното програмиране заедно са толкова силни, че те са създали смяна на парадигмата в програмирането.
Точните им дефиниции варират в зависимост от гледната точка. Например езиците със статични типове често имат малко по-различен поглед върху обектно ориентираното програмиране от този на езиците с динамични типове, предизвикан от фокусирането върху свойствата на програмите при компилация, в първия случай, и при изпълнение – във втория.
Забележки: Абстракцията е важна, но не уникална за обектно ориентираното програмиране. Многократната използваемост е предимство, често приписвано на обектно ориентираното програмиране.
Обектно ориентираното програмиране често се нарича „парадигма“, а не стил или вид програмиране, за да се подчертае разбирането, че ООП може да промени начина, по който се създава софтуер, чрез промяна на начина, по който програмистите и софтуерните инженери мислят за софтуера.
Парадигмата на ООП по своята същност не е парадигма на програмирането, а на дизайна. Една система се проектира чрез дефиниране на обектите, които ще съществуват в нея, а кодът, който всъщност върши работата, няма връзка с обекта или хората, които използват този обект, поради капсулирането.
Предизвикателството в ООП, следователно, е проектирането на добре обмислена система от обекти.
Трябва да се отбележи, че има различни паралели между обектно ориентираната парадигма и Теорията на системите. ООП се занимава с обектите като части от една система, докато теорията на системите се занимава със самата система. Някъде между двете гледни точки могат да се намерят софтуерни шаблони или други техники, които използват класове и обекти, за да изграждат по-големи компоненти. Такива компоненти могат да се разглеждат като необходима стъпка от обектно ориентираната парадигма към „по-близките до реалния живот“ модели на теорията на системите.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.