Тып зьвестак: розьніца паміж вэрсіямі

Змесціва выдалена Змесціва дададзена
д Kazimier Lachnovič перанёс старонку Тып дадзеных у Тып зьвестак паўзьверх перанакіраваньня: паводле абмеркаваньня
даныя ў зьвесткі
Радок 1:
{{Перанесьці|Тып зьвестак|абмеркаваньне}}
У [[мова праграмаваньня|мовах праграмаваньня]] '''тып даныхзьвестак''' ('''тып зьвестакданых''') — атрыбут кавалачка даныхзьвестак, які паведамляе [[кампутар]]у (і [[праграміст]]у) пэўныя зьвесткі пра тое, зь якім відам даныхзьвестак ён мае справу. Гэта ўключае накладаньне абмежаваньняў на даныязьвесткі, напрыклад, якія значэньні можа мець гэты кавалачак даныхзьвестак і якія апэрацыі могуць быць зь ім праведзеныя.
 
Агульныя тыпы даныхзьвестак могуць быць наступнымі: цэлыя лікі, лікі з плыўной кропкай (дробы) і літаралікавыя радкі. Напрыклад, у мове праграмаваньня [[Java]] тып «int» прадстаўляе сабой мноства 32-бітавых цэлых лікаў у межах ад —2,147,483,648 да 2,147,483,647, а таксама дэкляруе апэрацыі, якія могуць быць праведзеныя з цэлымі лікамі: дадаваньне, адыманьне і памнажэньне.
 
== Азначэньне ==
 
У больш шырокім сэнсе '''тып даныхзьвестак''' вызначае [[мноства]] значэньняў і апэрацыі, дапушчальныя з гэтымі значэньнямі. Амаль усе мовы праграмаваньня маюць мэханізм яўнага пазначэньня тыпу даныхзьвестак, хаця розныя мовы могуць выкарыстоўваць для гэтага розныя спосабы. Большасьць моваў праграмаваньня таксама дазваляе праграмісту вызначыць дадатковыя тыпы даныхзьвестак, звычайна шляхам камбінаваньня некалькіх элемэнтаў іншых тыпаў і вызначэньня дапушчалных апэрацыяў з новым тыпам даныхзьвестак. Напрыклад, праграміст можа стварыць новы тып даныхзьвестак з назвай «Асоба», які будзе вызначаць, што даныязьвесткі, якія інтэрпрэтуюцца як асоба будуць уключаць у сябе імя і дату нараджэньня.
 
Таксама тып даныхзьвестак можна разглядаць як абмежаваньні, накладзеныя на даныязьвесткі ў пэўнай [[сыстэма тыпізаваньня|сыстэме тыпізаваньня]], якія апісваюць прадстаўленьне, інтэрпрэтацыю і структуру [[значэньне (праграмаваньне)|значэньняў]] або [[Аб’ект (праграмаваньне)|аб’ектаў]], якія захоўваюцца ў памяці кампутара. Сыстэма тыпізаваньня выкарыстоўвае зьвесткіінфармацыю пра тып даныхзьвестак для праверкі карэктнасьці кампутарных праграм, якія зьвяртаюцца да даныхзьвестак альбо апрацоўваюць іх.
 
== Перавагі выкарыстаньня тыпаў даныхзьвестак ==
 
* '''Надзейнасьць'''. Тыпы даныхзьвестак абараняюць ад трох відаў памылак:
# Некарэктнае прысвойваньне. Дазваляе пазьбегнуць запісу недапушчальнай інфармацыі ў зьменную.
# Некарэктная апэрацыя. Дазваляе пазьбегнуць выкананьня ненапушчальных для пэўнага тыпу даныхзьвестак апэрацыйапэрацыяў.
# Некарэктная перадача парамэтраў. Дазваляе ўпэўніцца, што мэтад у якасьці парамэтра атрымае даныязьвесткі таго тыпу, які ён чакае, і ведае, як апрацоўваць.
 
* '''Стандартызацыя'''. Стандартызацыя дазваляе дастаткова хутка і бяз значных выдадткаўвыдаткаў пераносіць ужо напісаныя праграмы з адной мовы альбо сыстэмы на іншую.
 
== Кантраляваньне тыпаў ==
 
Працэс праверкі і накладаньня абмежаваньняў на тыпы даныхзьвестак называецца ''кантраляваньнем тыпаў''. Кантраляваньне тыпаў можа ажыцьцяўляцца падчас кампіляваньня праграмы альбо падчас ейнага выкананьня. У першым выпадку праверка называецца статычнай, а ў другім — дынамічнай. Статычнае кантраляваньне тыпаў зьяўляецца асноўнай задачай сэмантычнага аналізу, які ажыцьцяўляецца [[кампілятар]]ам.
 
== Клясыфікацыя тыпаў даныхзьвестак ==
 
Адрозьніваюць наступныя тыпы даныхзьвестак.
 
* Простыя тыпы даныхзьвестак
** Пералічальны тып. Можа захоўваць толькі яўна пазначаныя ў ягоным апісаньні значэньні.
** Лікавыя тыпы. Захоўваюць лікі. З гэтым тыпам даныхзьвестак могуць ажыцьцяўляцца звычайныя арытмэтычныя апэрацыі.
*** Цэлалікавы тып даныхзьвестак. Можа быць знакавым, то бок захоўваць як станоўчыя, так і адмоўныя значэньні, а можа бяззнакавым, то бок захоўваць толькі неадмоўныя значэньні.
*** Дробавы тып даныхзьвестак. Можа быць зь фіксаванай коскай, а можа быць з плыўной.
** Сымбальны тып даныхзьвестак. Захоўвае адзін сымбаль.
** Лягічны тып даныхзьвестак. Можа захоўваць адно з двух значэньняў: ісьціна і мана.
** Мноства. Звычайна супадае з матэматычным паняткам [[мноства]].
* Складаныя тыпы даныхзьвестак
** Масіў. Зьяўляецца наборам элемэнтаў аднаго тыпу. Аднамерны масіў называецца вэртарамвэктарам, двумерны — матрыцай.
** Радковы тып даныхзьвестак. Захоўвае радок сымбаляў. Часам разглядаецца як масіў сымбаляў, а часам — як самастойны тып.
* Іншыя тыпы даныхзьвестак
** Паказальнік. Захоўвае адрас у памяці кампутара, дзе ўтрымліваецца пэўная інфармацыя, звычайна — адрас зьменнай.
** Спасылка.