Ծրագրավորում

**Ծրագրավորում**, համակարգչային ծրագրի ստեղծման գործընթաց։
Ըստ Նիկլաուս Վիրտի հայտնի արտահայտության, «Ծրագրեր = ալգորիթմներ + տվյալների կառուցվածքներ»։ Այլ խոսքով, ծրագրավորման անմիջական խնդիրներն են ալգորիթմների և տվյալների կառուցվածքների ստեղծումը և կիրառումը։
Ավելի լայն իմաստով ծրագրավորումը հասկացվում է որպես ամբողջ գործունեություն, որը կապված է  աշխատանքային միջավայրում ծրագրերի ստեղծման ու պահպանման՝ 
ծրագրային ապահովման հետ։ Այստեղ մտնում են խնդրի վերլուծությունն ու ներկայացումը, ծրագրի նախագծումը, ալգորիթմների կառուցումը, տվյալների կառուցվածքային մշակումը, ծրագրի տեքստի գրառումը, ծրագրի կարգավորումն ու տեստավորումը, փաստաթղթավորումը, ուրվագծումը, վերջնական մշակումը։ 
Ծրագրավորումը հիմնվում է ծրագրավորման լեզուների օգտագործման վրա, որոնցով գրառվում են հրահանգները համակարգչի համար։

Ծրագրավորման միջավայրում տեքստային խմբագրիչը կարող է ունենալ հատուկ գործառնություն, այնպիսին, ինչպիսիք են անունների ինդեքսացումը, փաստաթղթերի պատկերումը, 
օգտագործողի ինտերֆեյսի վիզուալ ստեղծման միջոցները։ Տեքստային խմբագրիչի օգնությամբ ծրագրավորողը դուրս է բերում  ստեղծվող ծրագրի տեքստի հավաքակազմն ու խմբագրումը, որն անվանում են ելակետային կոդ։ Ծրագրավորման լեզուն որոշում է ելակոդի շարահյուսությունն ու նախասկզբնական իմաստաբանությունը։

## Պատմություն
Հին Հունաստանում անտիկիթերայի սարքն իր աշխատանքն ապահովող տարբեր չափերով ու կոնֆիգուրացիաներով ատամնանիվներ օգտագործող հաշվիչ էր։ Մինչ այժմ օգտագործվում է լուսնա-արեգակնային օրացույցներում։ Ալ-Ջազարին ստեղծել է այն 1206 թվականին։

## Ծրագրավորման լեզուներ

Ծրագրավորման լեզուներից են՝ Python-ը, Ջավան, ՋավաՍկրիպտը և այլն։

Ծրագրավորողի աշխատանքի մեծ մասը կապված է ելակետային կոդի գրառման, ծրագրերի՝ ծրագրավորման լեզուներից մեկով ծրագրի թեստավորման ու կարգավորման հետ։ Ծրագրերի ելակետային տեքստերն ու օգտագործվող ֆայլերը համարվում են հեղինակային իրավունքի օբյեկտներ, նրանց հեղինակների ու իրավապաշտպանների մտավոր սեփականությունը։

Ծրագրավորման տարբեր լեզուներ ապահովում են ծրագրավորման տարբեր ոճերի օգտագործումը։ Մասամբ ծրագրավորման արվեստը նրանում է, որ պետք է ընտրել տրված խնդրի լուծման համար առավել հարմար ծրագրավորման լեզուն։ Տարբեր լեզուներ ծրագրավորողից պահանջում են ալգորիթմն իրականացնելու դետալների նկատմամբ ուշադրության տարբեր մակարդակներ, որի արդյունքը հաճախ լինում է համաձայնությունը ծրագրավորողի և օգտվողի միջև։

Միակ լեզուն, որն ուղղակի իրագործում է ԷՀՄ-ը, *մեքենայական լեզու*ն է, որը կոչվում է նաև *մեքենայական կոդ* և *մեքենայական հրամանների լեզու*։ Սկզբնապես բոլոր ծրագրերը գրվել են մեքենայական կոդով, սակայն այժմ գործնականորեն դա չի կատարվում։ Դրա փոխարեն ծրագրավորողները ելակետային կոդը գրում են ծրագրավորման այս կամ այն լեզվով, ապա, օգտագործելով կոմպիլյատորը, մեկ կամ մի քանի քայլերով փոխակերպում են մեքենայական կոդի։

## Գրականություն == ,
*Scientific Programming and Computer Architecture by Divakar Viswanath
*Elements of Programming by Alexander Stepanov and Paul McJones
* Иан Соммервилл. Инженерия программ ного обеспечения / Пер. с англ. — 6-е издание. — М.։ Вильямс, 2002. — 624 с.
* Иан Грэхем. Объектно-ориентированные методы. Принципы и практика / Пер. с англ. — 3-е изд. — М.։ Вильямс, 2004. — 880 с.

## Ծանոթագրություններ

## Արտաքին հղումներ
*Ռուբեն Մեսչյանի «Ծրագրավորման արվեստ» դասընթացը
* «Ծրագրավորում 01» C++ դասընթաց

Կատեգորիա:Ծրագրավորում
Կատեգորիա:Համակարգիչ