Именски простор: Разлика помеѓу преработките

[непроверена преработка][непроверена преработка]
Избришана содржина Додадена содржина
Нема опис на уредувањето
Нема опис на уредувањето
Ред 4:
 
Компјутерските уреди за складирање и многу модерни [[компјутерски јазици]] овозможуваат поддршка за namespace. Уредите за складирање користат користат директории (или фолдери) како namespace. Ова овозможува два податотеки со исто име да бидат зачувани на уредот толку долго колку тие ќе бидат зачувни во различни директории. Во некои програмски јазици (на пр. [[C++]], [[Python]]), идентификаторите именовани namespace сами се поврзуваат со приложените namespace. Значи, во овие јазици namespace може да се вгнезди, формирајќи namespace [[дрво]]. На коренот на ова дрво е неименуван глобален namespace.
 
==Употреба во заеднички јазици==
Во C++, namespace е дефиниран со namespace блок.
 
namespace abc {
int bar;
}
 
Во овај блок идентификаторите можат да користат онака како што се објавени. Надвор од тој блок е namespace назначувачот мора да биде со префикс. На пример, надвор од namespace abc, bar мора да биди напишана abc::bar за да биди пристапенo. C++ вклучува уште еден конструктор кој го причинува овај излив на зборови непотребно. Со додавање на линијата
using namespace abc;
на дел од кодот, префиксот abc:: не е потребен повеќе.
Кодот кој не е јасно деклариран со namespace се смета за глобален namespace.
Namespace резолуцијата во C и C++ е хиреархиски подредена. Тоа значи дека внатре во хипотетички namespace храна: пилешко, супа идентивикаторот се однесува на храна: супа:: пилешка ако постои. Ако тоа не постои , тогаш се однесува на храна:: пилешко ако постои. Ако не постои, пилешкото се однесува и на идентификатор во глобален namespace.
Namespace во C++ најчесто се користи за да се избегнат судари од имиња. Иако namesace се користи значително во новиот C++ код, но кај постариот код не се користи овај објект. На пример, целата C++ стандардна библиотека е дефинирана во namespace std, но пред многу стандардизација на компонентите се изорно во глобален namespace.
Во Java програмскиот јазик, идеата за namespace e отелотворена во Java пакетот. Сите кодови припаѓаат на пакетот, иако тој пакет не треба да биди јасно именуван. Кодот од другите пакети е пристапен со префиксирање на името на пакетот пред погодниот иденитфикатор. На прмер: Стринг класата во пакетот java.lang може да биди позната java.lang.String ( ова е познато како потполно погодно име на класата).
Како и C++, Java нуди градење кое прави да е непотребно пишувањето на името на пакетот (внесување) . Меѓутоа одредени белези бараат од програмерот за користење на целосно квалифициран израз.
 
 
==XML namespace==