Ցանցի կիրառական ծրագիր

Ինֆորմատիկայում վեբ ծրագիրը (web-application) կիրառական ծրագիր է, որն իր արտաքին տեսքով նման է անընդհատ փոփոխվող վեբ կայքի։ Այդ արտաքին տեսքն անվանում ենք վեբի արտաքին տեսք։ Վեբ ծրագիր մուտք է գործվում վեբ զննարկիչի միջոցով, որը տարբեր հիպերտեքստային կապեր և էջերի պարունակություններ է բերում։
Էլեկտրոնային փոստը, կայքի պարունակության կառավարման համակարգը, վիկիները, բլոգերը վեբ ծրագրի ձևեր են։
Որոնման համակարգերը, էլեկտրոնային առևտրի ծրագրերը, օնլայն խաղերը, ֆորումների ծրագրերը նույնպես կարող են ընդգրկվել վեբ ծրագրերի ձևերի մեջ։
Ցանցային ապարատները, ինչպես օրինակ երթուղիչը, իրենց միկրոծրագրում հաճախ պարունակում են վեբի ծրագիր։


== Նախաբան ==
Համաշխարհային սարդոստայնի համար օգտագործվող սպասառու-սերվեր (client-server) տեխնոլոգիայում, վեբ զննարկիչը հարցված էջերն ուղարկում է սերվերին։ Վերջինս պատասխանում է հարցումներին՝ էջերն ուղարկելով վեբ զննարկիչ, որն էլ դրանք ներկայացնում է օգտագործողին։ 
Վեբ ծրագրի դեպքում, յուրաքանչյուր հարցման ընթացքում էջերը ստեղծվում են տարբեր մասնիկներից՝ հատուկ ծրագրի միջոցով։ Էջում առկա յուրաքանչյուր հիպերկապ հրահրում է նոր հարցման ուղարկումը, որն էլ արդյունքում նոր էջ է բերում՝ հակառակ ստատիկ վեբ կայքի, ուր էջերը նախապես պահպանված ֆայլեր են։
Վեբ էջերը պարունակում են տարբեր մասնիկներ, ինչպես օրինակ կառավարման կոճակներ, պատկերներ, տեքստային տարածքներ, որոնք հասանելի են դարձնում վեբ ծրագիրը։ Վեբ էջերը կարող են պարունակել միկրոծրագրեր։
Ի տարբերություն մյուս ծրագրերի, սերվերում տեղադրելուց անմիջապես հետո, վեբ ծրագիրը հնարավոր է կիրառել՝ առանց գնելու կամ տեղադրելու համակարգչի մեջ, այսինքն սկսած այն պահից, երբ սպառողի համակարգիչը զինվում է վեբ զննարկչով և ցանցային կապով։ Նման կերպ խուսափում ենք համակարգի ադմինիստրատորների ծառայություններից, որոնք հաճախ ավելի թանկ արժեն, քան ինքը՝ ծրագիրը։ Վեբ ծրագիրը հաճախ տրամադրովում է սպառողներին ծրագրի ստեղծողների կողմից՝ իրենց իսկ սերվերների վրա։ 
Վեբ զննարկչի օգտագործումը գնորդի համար՝ որպես ծրագիր, որը հասանելի է բազմաթիվ համակարգերի միջոցով, ապահովում է վեբ ծրագրի կիրառումը։


== Պատմական ակնարկ ==
'''Համաշխարհային սարդոստայն''' հիպերտեքստային փաստաթղթային համակարգ է, որը ստեղծվել է 1993 թ.Միջուկային Հետազոտությունների Եվրոպական Կենտրոնի (CERN) կարիքները բավարարելու նպատակով. Առաջին վեբ զննարկիչը (NCSA Mosaic) ստեղծվել է Համակարգչային Կիրառությունների Ազգային Կենտրոնի (NCSA) կողմից։
Համաշխարհային սարդոստայնը օգտագործողներին թույլ է տալիս փաստաթղթեր և պատկերներ փոխանակել ավելի արագ, քան էլեկտրոնային փոստով, և ավելի հեշտ, քան ֆայլերի բաժանման միջոցով։
Հրատարակված փաստաթղթերի աճող թիվը անհրաժեշտ դարձրեց որոնման համակարգերի կիրառումը. օգտագործողը գրում է որևէ բանալի բառ, վեբ սերվերը իրականացնում է որոնումը, այնուհետև ներկայացնում է արդյունքը փաստաթղթի ձևով։
Որոնման համակարգերը գործի են դրվել վեբ սերվերի ընդլայնման հետևանքով։ 1995 թ.ին, ՀԿԱԿ-ը հրատարակում է արդյունաբերական նորմ CGI, որը մանրամասնում է, թե որոնք են վեբ սերվերի ընդլայնման ձևերը՝ նրան որևէ կիրառվող ծրագրի, օրինակ՝ որոնման համակարգի հետ կապելով։
Վեբ ծրագրերի տեխնոլոգիաները արագորեն զարգացան 1994-ից 2000 թթ.-ին, երբ այn օգտագործման համար նախատեսված վեբ սերվերի բազմաթիվ ծրագրեր, ինչպես նաև վեբ զննարկիչների բարելավումներ մեկը մյուսի ետևից դուրս եկան շուկա։
Առաջին վեբ ծրագրերը պրակտիկորեն հարմար չէին գնորդի համար։ Rich Internet Application հարուստ ինտերնետային ծրագիր է կոչվում վեբի մի ծրագիր, որը հարմար է գնորդին օգտագործման համար։ Առաջին անգամ այս տերմինը ծագել է Macromedia-ի հրատարակումներից մեկում՝ 2002 թ.-ին։


== Կիրառություններ ==
Կայքի բովանդակության կառավարման համակարգ
Վեբ ծրագրերի տեխնոլոգիան բազմաթիվ կիրառությունների հնարավորություն է տալիս։ Վեբ ծրագրերի հայտնի տեսակներից են՝ որոնման համակարգերը, վեբ փոստը, փոստով վաճառքը և օնլայն խաղերը։
Որոնման համակարգը վեբի օգտագործման ձևերից է, որը որոնում է փաստաթղթեր։
Վեբ փոստը նախատեսված է էլ. փոստ ուղարկելու և ստանալու համար։
Բովանդակության կառավարման համակարգը (Content Management System- CMS) փաստաթղթերը ներկայացնում է այնպես, ինչպես վեբ կայքում, սակայն այս դեպքում փաստաթղթերը յուրաքանչյուր հարցման ժամանակ բացվում են հատուկ ծրագրի օգնությամբ։ Բովանդակության կառավարման համակարգի օգնությամբ հնարավոր է իրականացնել է փաստաթղթերի ձևավորման մշակումները։

Վեբ բլոգը բովանդակության կառավարման համակարգ է, որտեղ բովանդակության տարրերը ներկայացված են ըստ իրենց ստեղծման տարրեգրության։
Վիկին (հավայերեն՝ wikiwiki, նշանակում է արագ) բովանդակության կառավարման համակարգ է, որի նպատակն է հեշտացնել փաստաթղթերի համագործակցային ստեղծումը։ Այն բազմաթիվ անձանց հնարավորություն է տալիս միաժամանակ փոփոխություններ կատարել, ինչպես նաև ունի քննարկումների համար նախատեսված տարածք։Առևտրային վեբ կայքը բովանդակության կառավարման համակարգ է, որտեղ բովանադակության պարունակությունը ապրանքների վերաբերյալ հայտարարություններ են։ Այն օգտագործվում է փոստային առևտրի նպատակով։ Այցելությունների և գնման գործողությունները գրանցվում են մարկետինգի սկզբունքով։ Նման կայքերն օգտագործվում են ինչպես որևէ համայնքի արտադրանքի վաճառքի նպատակով, այնպես էլ անհատների արտադրանքի կամ աճուրդների նպատակով։
Զննարկչային խաղը վիդեո խաղ է, որը ևս հանդիսանում է վեբ ծրագրի ձևերից։
Ֆորումը հնարավորություն է տալիս բաց քննարկումներ իրականացնել օգտագործողների միջև։ Որևէ օգտագործող հաղորդագրություն է թողնում և այն կարող են կարդալ բոլոր օգտագործողները։ Ֆորում հաճախ հանդիսանում է վեբ ծրագրերի ձևերից։
Ակնթարթային հաղորդագրությունը (անգլերեն՝ chat) տարբեր օգտագործողների միջև հաղորդագրությունների փոխանակության հնարավորություն է տալիս։ Այս ծառայության ծրագրերը երբեմն կիրառվում են վեբ ծրագրերի միջոցով։ Հաղորդագրությունները կարող են ուղարկվել նույն ծրագրից օգտվող մեկ այլ օգտագործողի կամ նրա բջջային հեռախոսին՝ կարճ հաղորդագրության ծառայության՝ (short message service, կրճատ՝ SMS) միջոցով։
Գուգլ քարտեզները ('''Google Maps''') ևս վեբ ծրագրերի ձևերից են, որոնց միջոցով կարելի է ուսումնասիրել ամբողջ աշխարհի քարտեզները։ 
'''Facebook'''-ը վեբի այն օգտագործման ձևերից է, որի միջոցով յուրաքանչյուր օգտագործող հնարավորություն է ստանում ներգրավվել որևէ սոցիալական ցանցի մեջ (ընկերներ, կոլեգաներ, նույն հետաքրքրությունները կիսող մարդիկ)։


== Տեխնոլոգիա ==
Ըստ ամենաշատ կիրառվող տեխնոլոգիայի՝ վեբ ծրագրերն ուղղորդվում է դեպի վեբ սերվեր, որի վրա գտնվում է վեբի օգտագործման ծրագիրը։ Այս գործընթացը երբեմն ուղեկցվում է տվյալների բազայի սերվերով, որը կոչվում է կիրառվող ծրագրի սերվեր։
Կիրառվող ծրագրի կոդային աղբյուրը գտնվում է անմիջապես վեբ էջերում, որոնք պահվում են սերվերի կողմից։ Երբ սպասառուն էջի հարցում է կատարում, վեբ սերվերը փնտրում է այն և կատարում նրա ցուցումները։ Այդ ցուցումները կարող են ուղղված լինել նաև տվյալների բազայի սերվերին։ Վեբ սերվերը գնորդին ուղարկում է էջը՝ ստացված արդյունքով։
Սպասառուի և սերվերի միջև տեղեկատվության փոխանակությունը կատարվում է ըստ HTTP հաղորդակարգի, որն օգտագործվում է նաև վեբ կայքերի համար։
Վեբ ծրագրերը հաճախ առիթ են ստեղծում նշոցիկների (cookie) մեխանիզմի աշխատացման համար . որպես հարցման պատասխան, սերվերը սպասառուին ուղարկում է լրտես ծրագիր (քուքի) ։ Եվ այդպես, հաջորդ հարցման ժամանակ սպասառուն տեղեկատվություն է ուղարկում ծրագրին։ Այս մեխանիզմի նպատակն է ճանաչել սպասառուի ինքնությունը և նրան մանիպուլիացիայի ենթարկել։
Վեբ Էջերը կարող են պարունակել այլ տարրեր։ Դրանք կոդային աղբյուրի հատվածներ են, որոնք էջի տեղափոխումից հետո բացվում են վեբ զննարկչի միջոցով՝ հակառակ կոդային աղբյուրի մեծ մասի, որը բացվում է սերվերի միջոցով՝ էջի տեղափոխումից առաջ։
Սպասառուի ծրագիրը՝ վեբ զննարկիչը, նույն ծրագիրն է, որն օգտագործվում է վեբ կայք բացելու համար։ Այլ տարրեր բացելու համար անհրաժեշտ ծրագրերը ընդգրկված են զննարկիչներում։