Разлика између апстракције и енкапсулације

Кључна разлика: апстракција и енкапсулација су концепти програмирања компјутерских наука. Апстракција је процес, у којем су додатне карактеристике података уклоњене или одвојене од података; док је енкапсулација механизам у којем су подаци скривени и групирани у методе.

Апстракција је генерализовани процес у којем се одузимају и уклањају додатни подаци како би се подаци учинили конкретним. У компјутерима, то је метода програмирања која помаже у претварању података у концизан облик. Подаци и програм се не мењају у овој методи, већ се чувају у истом почетном облику; једина разлика је у томе што су редуковани на мању видљиву форму. Апстракција покушава да смањи и факторише детаље, тако да програмер може да се фокусира на неколико појмова у исто време.

Систем може имати много таквих слојева апстракција, који имају различита значења и детаље. На пример, слојеви апстракције ниског нивоа излажу детаље рачунарског хардвера где се програм изводи, док се слојеви на високом нивоу баве пословном логиком програма. Ови детаљи су затим изложени програмеру у време извршења. Апстракција је концепт или идеја, која није повезана ни са једном конкретном инстанцом. Она обухвата само оне детаље података који се односе на његове објекте и тренутне перспективе. Она игра главну улогу у породици објеката (у концептима објектно-оријентисаног програмирања). и користи се на различите начине и имплементације.

Концепт апстракције се може имплементирати у:

  • Контрола апстракције: То је апстракција акција.
  • Апстракција података: Омогућава и обрађује битове података и структуре података на смислене начине.

Инкапсулација у компјутерском програмирању наглашава његове функције у двије различите ознаке, а то су:

  • Језички механизам који ограничава приступ компонентама неког објекта.
  • Конструкција језика која олакшава повезивање података са методама (и другим функцијама) које раде на тим подацима.

Инкапсулација је механизам скривања, који игра кључну улогу у заштити и осигуравању података од стране аутсајдера. Он заправо обезбеђује основни интегритет података спречавањем злоупотребе стварних података. У енкапсулацији, подаци се чувају и приступа им се у оригиналном валидном и конзистентном формату.

Уопштено, енкапсулација значи очување објекта од корисника и његово представљање у општем облику. У суштини, у енкапсулацији, додатни детаљи су скривени од спољашњег окружења. Поља објеката се директно контролишу и манипулишу овим механизмом. Информације које се скривају заједно са опремом се састављају у верзији, која се даље користи као изворни код и повезује се преко датотеке заглавља. Понекад јавне класе покушавају да приступе подацима, у овим случајевима енкапсулација не дозвољава јавним нападачима да се играју са подацима. Једна од главних предности енкапсулације је та да помаже у смањењу сложености програма и помаже корисницима да схвате тачне концепте програма, јер механизми представљају само кратак облик програма. Ово повећава робусност, дозвољавајући програмеру или програмеру да ограничи међусобне зависности између софтверских компоненти. Енкапсулација је такође примјењива на неким језицима, као што су Смаллталк и Руби, у којима је приступ дозвољен само преко објектних метода; док већина других, Ц ++, Ц # или Јава нуди степен контроле програмеру. Ови језици омогућавају програмерима да приступају преко онога што је скривено уз помоћ кључних речи као што су јавне и приватне.

Апстракција и енкапсулација су такође основни принципи у ООП-у (Објецт-Ориентед-Программинг).

Поређење између апстракције и енкапсулације:

Одвајање

Енцапсулатион

Кратак опис

Апстракција је процес који издваја битне детаље о ставци или групи ставки и занемарује небитне детаље.

Инкапсулација је процес који омотава или затвара податке у капсули или их чини језгровитим.

Су

Апстракција се односи на идеју скривања података који нису потребни за презентацију.

Инкапсулација је групирање података и функционалности.

Основне функције

У основи, апстракција се користи за сакривање нежељених података и даје релевантне податке.

У суштини, енкапсулација значи скривање кода и података у једну јединицу како би се заштитили подаци од вањског свијета.

Када су оперисани

Он управља проблемом на нивоу дизајна.

Он управља проблемом на нивоу имплементације.

Корист за улоге

Помаже кориснику да се фокусира на оно што објекат ради уместо на то како ради било коју функцију.

Помаже програмеру да сакрије унутрашње детаље или механику како објекат нешто ради.

Информатион ис

Овде су информације одвојене од реалних података.

Овде су информације замотане у скривеном формату.

Лаиоутс

Ради се о спољном изгледу, који се користи у смислу дизајна.

Ради се о унутрашњем распореду, који се користи у смислу имплементације.

На пример

Спољашњи изглед мобилног телефона, који има екран и тастере на тастатури за бирање броја.

Унутрашњи детаљи имплементације мобилног телефона, како су тастери на тастатури и екрански дисплеји међусобно повезани помоћу кола.

Рецоммендед

Везани Чланци

  • разлика између: Разлика између терминских уговора и будућег уговора

    Разлика између терминских уговора и будућег уговора

    Кључна разлика: Термински уговор је нестандардизовани уговор који омогућава странама да прилагоде начин на који желе да продају или купују имовину, по којој цени и датуму. С друге стране, будући уговор је стандардизирани уговор који захтијева да берза роба буде посредник између купца и продавца за куповину и про
  • разлика између: Разлика између Схаке и Малт

    Разлика између Схаке и Малт

    Кључна разлика: Схакес су пјенушава хладна слатка пића која се обично производе комбинацијом млека и сладоледа. Слад користи исте састојке као шејк. Међутим, слад има додатну милост. Обе се обично припремају мешањем састојака на мешалици вретена. Схаке и слад имају сличне састојке. Слад се може сматрати шејком, али уз додатак уоби
  • разлика између: Разлика између веровања и вере

    Разлика између веровања и вере

    Кључна разлика: Веровати је привременији концепт који од особе захтева да верује у особу у одређеном временском оквиру. Веровати се може односити и на прихватање да је нешто истинито или да је неко истинит. Вера се чешће сматра духовним концептом. Сматра се као оданост, дужност или оданост једној особи или бићу. Верује се да је то привременији концепт који од особе захтева
  • разлика између: Разлика између језера и језера

    Разлика између језера и језера

    Кључна разлика: Нема стварне универзалне стандардизоване техничке разлике између језера и језера. Многи научници их класификују само на основу величине. Вода је неопходна за опстанак људи, а вода је и најчешћи елемент на Земљи. Вода чини 71% земље и налази се у различитим облицима, укључујући језеро, рибњаке, ријеке, мора, базене, океане итд. Одређена водна тијела се лакше класифицирају, као што су океани, ријек
  • разлика између: Разлика између вискија и раженог вискија

    Разлика између вискија и раженог вискија

    Кључна разлика: Виски или виски су врста дестилованог алкохолног пића направљеног од било ког облика ферментисане житне каше. У зависности од географског подручја или типа вискија који се прави, виски се може направити од јечма, јечма од слада, ражи, раженог слада, пшенице и кукуруза. Ражени виски је врста вискија који се може користити за означавање једне од двије ствари. Први је амерички ражени виски, који је направљен од ражи и канадског вискија, који може или не мора бити раж у производњи. Виски је једно од н
  • разлика између: Разлика између Духа и Материје

    Разлика између Духа и Материје

    Кључна разлика: Материја је све што постоји и има масу, тј. Све што има физичко присуство. У већини контекста, термин 'дух' се односи на душу, тј. На ствар која даје тјелесни живот. У већини идеологија, дух је душа, док материја представља тело. Наука и вера су две различите стране истог новчића. Оба покушавају да схва
  • разлика између: Разлика између МОВ и АВИ

    Разлика између МОВ и АВИ

    Кључна разлика: МОВ и АВИ су два различита типа датотека контејнера. Као што име сугерише, датотеке контејнера су датотеке које се користе да садрже нешто што је обично видео и / или аудио. Већина људи не схвата да АВИ и МОВ нису формати кодирања, али су омотачи за форматиране видео датотеке. У суштини, главна разлика између ова два модел
  • разлика између: Разлика између Инкјет и Дескјет штампача

    Разлика између Инкјет и Дескјет штампача

    Кључна разлика: Инкјет је тип штампача који штампа слике тако што испушта капљице мастила на папир. Ови штампачи су најчешћи тип штампача који су доступни у домаћинствима. Дескјет је бренд штампача компаније Хевлетт-Пацкард. Ови штампачи су јефтинија варијанта за Оффицејет штампаче компаније. Дескјет је креиран
  • разлика између: Разлика између непуног радног времена и повременог посла

    Разлика између непуног радног времена и повременог посла

    Кључна разлика: Посао са пола радног времена је облик запослења који захтијева од запосленика да ради мање сати тједно него стално запослени. Повремени послови су послови који се обављају само понекад. То се такође може урадити на основу уговора или без уговора. Он захтева да се запослени запосли за једнократни посао, који може или не мора бити тамо следећи пут. Пос

Избор Уредника

Разлика између Битцоин и Намецоин

Кључна разлика: Битцоин је покренут 3. јануара 2009. године од стране Сатосхи Накамото. То је први у потпуности имплементиран пеер-то-пеер протокол за крипто валуту. Намецоин је створен од модификованог Битцоин софтвера, и стога је прилично сличан њему. Међутим, он такође делује као алтернативни, децентрализовани ДНС. Дигиталне валуте су прилично сличне валутама. Валуте Фијата су валуте које подржава влада, на пример, УСД, ГБП, ЕУР, итд. Дигиталне вал