Пређи на садржај

АнгуларЈС

С Википедије, слободне енциклопедије
АнгуларЈС
АнгуларЈС лого
Програмер(и)Брат Тецх ЛЛЦ, Гоогле и заједница.
Прво издање20. октобар 2010.; пре 13 година (2010-10-20)[1]
Стабилно издање
1.6.6 / 18. август 2017.; пре 6 година (2017-08-18)[2]
Репозиторијум Уреди на Википодацима
Написан уJavaSkript
Платформаvišeplatformski
Величина144 KB
(1 MB razvojna verzija)
ТипJavaSkript biblioteka, frejmvork za kreiranje jednostraničnih aplikacija
ЛиценцаMIT licenca
Веб-сајтangularjs.org

У развоју софтвера, АнгуларЈС (често називан и „Ангулар“) је фрамеwорк отвореног кода који одржава Гоогле и заједница појединачних програмера и корпорација за решавање многих изазова приликом креирања једностраничних апликација.

АнгуларЈС библиотека ради тако што прво прочита ХТМЛ стране, који има уграђене додатне нестандардне таг атрибуте. Ангулар те атрибуте интерпретира као директиве да би везао улазне или излазне делове странице за модел који је представљен стандардним ЈаваСцрипт промењивим. Вредности тих ЈаваСцрипт промењивих се могу ручно подесити у коду, или могу бити преузете од статичних и динамичних ЈСОН извора.

Филозофија[уреди | уреди извор]

АнгуларЈС је направљен у вери да декларативно програмирање треба да се користи за прављење корисничких интерфејса и повезивање софтверских компоненти, док императивно програмирање више одговара за дефинисање апликационе бизнис логике[3]. Фрамеwорк прилагођава и проширује традиоцинлани ХТМЛ како би представио динамички садржај кроз двосмерно везивање података које омогућава аутоматску синхронизацију модела и виеw-а у МВЦ архитектури.

АнгуларЈС је дизајниран са циљевима да:

  • Раздвоји ДОМ манипулације од апликационе логике. На тешкоћу овога драматично утиче начин на који је код структуиран
  • Раздвоји клијентску страну апликације од серверске стране апликације. Ово омогућава рад на развоју обе стране паралелно, и омогућава поновну употребу обе стране
  • Обезбеди структуру за редослед развоја апликације – од пројектовања корисничког интерфејса, преко писања пословне логике до тестирања

Ангулар имплементира МВЦ архитектуру ради раздвајања компоненти за презентацију, податке и логичких компоненти. Користећи зависност пакета, Ангулар доноси традиционалне серверске сервисе, као што су контролери који зависе од презентационог слоја, на wеб апликације на клијентској страни. Сходно томе, велики део терета на серверу се може смањити.

Сцопе[уреди | уреди извор]

Ангулар користи термин „сцопе“ са нешто другачијим значењем него што је то уобичајено у компјутерским наукама.

Сцопе у компјутерским наукама описује када је одређена веза на снази. ЕЦМА-262 дефинише сцопе као лексичко окружење које дефинише окружење у којем се извршава објекат функције.

У Ангулар-у, сцопе је врста објекта[4] која може бити унутар или изван досега у одређеном делу програма, пратећи уобичајена правила досега промењиве у језику ЈаваСцрипт као било који други објекат[5]. У наставку, термин сцопе представља врсту Ангулар сцопе објекта, а не досег промењиве.

Извршавање[уреди | уреди извор]

Задаци које извршава АнгуларЈС извршавају се у три фазе[6], након учитавања објектног модела документа (енгл. ДОМ):

  1. Креирање новог убризгавача
  2. Компилација свих директива
  3. Повезивање свих директива у сцопе

АнгуларЈС директиве дозвољавају програмерима да одреде специфичне елементе и атрибуте налик на ХТМЛ који се могу поново употребити, а који дефинишу повезивање података и понашање компоненти корисничког интерфејса. Неке од најчешће коришћених директива су:

нг-апп
Декларише корен документа АнгуларЈС аплијације, унутар кога се могу користити директиве које ће повезати податке и дефинисати понашање.
нг-бинд
Поставља теxт објектног модела документа на вредност израза. На пример <span ng-bind="name"></span> ће приказати вредност променљиве унутар спан елемента. Било која промена променљиве „наме“ у апликацији ће се истовремено променити и унутар објектног модела документа.
нг-модел
Слично као и нг-бинд, али успоставља двосмерну везу између корисничког интерфејса и сцопе-а.
нг-модел-оптионс
Омогућава подешавања како се обављају ажурирања на нивоу модела.
нг-цласс
Омогућава динамично додавање класних атрибута.
нг-цонтроллер
Дефинише ЈаваСцрипт класу контролера који обрађује ХТМЛ изразе.
нг-репеат
Инстанцира елемент једном за сваку ставку из скупа.
нг-схоw & нг-хиде
Условно приказује или сакрива елемент у зависности од вредности Буловог израза. Приказ и сакривање је постигнуто подешавањем ЦСС својства „дисплаy“.
нг-сwитцх
Условно инстанцира један шаблон из сета могућих, у зависности од вредности селекције.
нг-виеw
Основна директива одговорна за управљање рутама које решавају ЈСОН пре рендеровања шаблона којима управљају одређени контролери.
нг-иф
Основна директива „иф“ петље која дозвољава приказивање одређеног елемента ако су услови испуњени. Уколико услови нису испуњени, елемент се брише из објектног модела документа. Када се услови испуне, клон компајлираног елемента се поново убацује у ДОМ.

Двосмерно повезивање података[уреди | уреди извор]

Ангуларово двосмерно повезивање података је најважније могућност, и она смањује количину написаног кода смањујући одговорности сервера у вези са приказом шаблона. Уместо тога, шаблони се рендерују у чистом ХТМЛ-у према подацима који се налазе унутар сцопе-а дефинисаног у моделу. Тхе $сцопе сервис у Ангулару детектује промене модела и мења ХТМЛ изразе на корисничком интерфејсу преко контролера.

Исто тако, све промене на корисничком интерфејсу се рефлектују на модел. Ово заобилази потреби да се активно манипулише објектним моделом документа и подстиче самосталан рад апликације и брзу израду прототипа веб апликација. АнгуларЈС детектује промене у моделу поредећи садашње вредности са вредностима које су сачуване кроз ранији процес провере, за разлику од Ембер.јс и Бацкбоне.јс фрамеwорк-а који се активирају када настану промене на моделу.

Гоогле Цхроме додатак[уреди | уреди извор]

У јулу 2012, тим који развија АнгуларЈС је направио додатак за Гоогле Цхроме прегледач под називом Батаранг[7], који побољшава искуство приликом отклањања грешака на wеб апликацијама креираним са Ангуларом. Додатак омогућава лаку детекцију уских грла апликације и нуди графички интерфејс за отклањање грешака. Додатак није компатибилан са новијим издањима АнгуларЈС-а (после верзије 1.2.x).

Види још[уреди | уреди извор]

Референце[уреди | уреди извор]

  1. ^ Прве верзије
  2. ^ „Верзија 1.6.6”. ГитХуб. Приступљено 24. 08. 2017. 
  3. ^ „Wхат Ис Ангулар?”. Приступљено 12. 02. 2013. 
  4. ^ „АнгуларЈС: Девелопер Гуиде: Сцопес”. Приступљено 03. 01. 2015. 
  5. ^ „ЕЦМА-262-3 ин детаил. Цхаптер 4. Сцопе цхаин.”. Приступљено 03. 01. 2015. 
  6. ^ „Wритинг Дирецтивес”. ангуларјс.орг. 28. 11. 2012. Приступљено 21. 07. 2013. 
  7. ^ „ангулар/ангуларјс-батаранг (ГитХуб)”. Приступљено 12. 10. 2014. 

Спољашње везе[уреди | уреди извор]