Ենթադրվում է, որ համակարգիչները ունեն սուպեր հաշվողական հնարավորություններ, ինչպիսիք են միլիոնավոր հաշվարկներ կատարելը վայրկյանի մասում: Դա իսկապես զարմանալի է, բայց առավել հետաքրքիրն այն է, որ սկզբունքորեն բոլոր համակարգիչները քարի պես համր են: Համակարգիչները աշխատում են միայն այն դեպքում, երբ հստակ ասվում է, թե ինչ է պահանջվում նրանցից, որպեսզի նրանք կարողանան օգտագործել իրենց հաշվողական ուղեղը: Հիմա իրական հարցն այն է, թե կոնկրետ ինչպե՞ս են համակարգիչներին հանձնարարված ինչ-որ բան անել կամ որոշակի գործողություններ կատարել: Պարզ պատասխանն է լեզվի օգտագործումը: Դա այն լեզուն չէ, որով խոսում են մարդիկ կամ այն ​​լեզուն, որով կենդանիները հաղորդակցվում են: Դա մի փոքր այլ լեզու է, որը սովորաբար համարվում է ծրագրավորման լեզու:

Դա այն լեզուն է, որն օգտագործում են ծրագրավորողները՝ հրահանգելու համակարգիչներին, թե երբ, ինչպես և ինչ անել՝ օգտագործելով իրենց միացված ապարատը: Ինչպես կան բազմաթիվ մարդկային լեզուներ, կան տասնյակ ծրագրավորման լեզուներ: Մարդկային լեզուների անալոգային իմաստով ծրագրավորման լեզուները տարբերվում են իրենց կանոններով և «բառերը» «արտասանելու» պատճառով: Կանոնների այս հավաքածուն կոչվում է որոշակի ծրագրավորման լեզվի շարահյուսություն: Եկեք ուսումնասիրենք կոպիտ սահմանումը՝ պատասխանելու «ի՞նչ է շարահյուսությունը ծրագրավորման մեջ» հարցին։ Շարահյուսությունը վերաբերում է ծրագրավորման լեզվի գյուտարարների կողմից սահմանված, կազմակերպված և թարմացված կանոնների մի շարքին: Ծրագրավորման լեզվի շարահյուսության լանդշաֆտը հաճախ փոխվում է ըստ բնույթի և խորշերի, որոնց նպատակադրվել է նշված ծրագրավորման լեզուն:

«Ի՞նչ է շարահյուսությունը ծրագրավորման մեջ» հարցին պատասխանելու համար: օգտագործելով սովորական մարդու օրինակը, դիտարկեք մի սցենար, որտեղ մարդը որոշ հաշվարկներ է կատարել երկու տարբեր հաշվիչների վրա.

Եթե ​​նա ցանկանում է մաքրել էկրանը ձախ կողմում գտնվող հաշվիչի վրա, նա պետք է սեղմի կարմիր գույնի կոճակը, որը պիտակավորված է AC (նշանակում է մաքրել բոլոր մուտքերը), մինչդեռ, եթե նույն գործողությունը պետք է կատարվի սարքի վրա: աջ կողմում գտնվող հաշվիչը, AC կոճակը չի կարող սեղմվել, քանի որ այն ընդհանրապես գոյություն չունի: Աջ կողմում գտնվող հաշվիչը օգտագործող սպառողի համար նա պետք է սեղմի ON/C (նշանակում էպարզ) պիտակավորված սպիտակ կոճակը: Նկատի ունեցեք, որ ստացված վերջնական արդյունքը նույնն է, բայց ինչպես է այն կատարվում, բոլորովին այլ է և կախված է յուրաքանչյուր սարքի կոճակից: Նմանատիպ դեպք է ծրագրավորման լեզվի շարահյուսության դեպքում։

icon Techreviewer-ը կարող է օգնել ձեզ ստանալ առաջարկներ լավագույն գործակալություններից ԱՆՎՃԱՐ

ԻՄԱՆԱԼ ԱՎԵԼԻՆ

Նախքան ծրագրավորման լեզուների շարահյուսության տարրերի հետագա ուսումնասիրությունը, անհրաժեշտ է ծրագրավորման մակարդակների հստակեցում: Մարդկային լեզվի օրինաչափություններին մոտ (նմանատիպ) շարահյուսությամբ ծրագրավորման լեզուները կոչվում են բարձր մակարդակի ծրագրավորման լեզուներ։ Օրինակ՝ 4 և 9 ավելացնելու և արդյունքը փոփոխականում պահպանելու համար ծրագրավորողները կարող են գրել հետևյալ կոդը Python (բարձր մակարդակի) ծրագրավորման մեջ։ լեզու:

Եվ ժողովի հետևյալ կոդը՝ x86 (ցածր մակարդակի) ծրագրավորման լեզու.

Երկու դեպքում էլ ավելացվող թվերը ցուցադրվում են կարմիր գույնով, գործողության հրամանները ցուցադրվում են կանաչ գույնով, իսկ արդյունքը պահվում է փոփոխական վարդագույն գույնով: Կապույտ գույնը հիմնաբառեր են, որոնք հավաքման կոդի օրինակում ֆիզիկական ապարատային ռեգիստրներ են, որտեղ արժեքները պետք է տեղափոխվեննախքան որևէ գործողություն (օրինակ՝ մեր դեպքում ավելացումը) հնարավոր լինի կատարել դրանց վրա:

IDE-ի դերը շարահյուսական հասկացության մեջ

Կարևոր է իմանալ, որ համակարգիչները ուղղակիորեն չեն հասկանում ծրագրավորման լեզուներ, որոնք ավելի մոտ են մարդկային լեզվական օրինաչափություններին: Փոխարենը, այս նշված ծրագրավորման լեզուների կոդը անհրաժեշտ է կոմպիլյատորներին և թարգմանիչներին, որպեսզի ստեղծեն այն կոդը, որը հասկանում են համակարգիչները: Նմանապես, կոդերի խմբագիր է պահանջվում՝ ծրագիրը գրելու և գործարկելու համար՝ տեսնելու, թե արդյոք այն աշխատում է ըստ նախատեսվածի: Այս կոդերի խմբագրիչները, թարգմանիչները և կոմպիլյատորները տրամադրվում են ծրագրային միջավայրի միջոցով, որը կոչվում է Ինտեգրված զարգացման միջավայր (IDE):

Թեև IDE-ն պարտադիր չէ կոդ գրելու համար, բայց չափազանց խորհուրդ է տրվում և ծրագրավորումը դարձնում է սուպեր զվարճալի և ստեղծագործ արվեստ: Ճիշտ ձևավորված շարահյուսական տողերի, սխալի կոդերի, անսարքությունների վերացման և կոդի վրիպազերծման նշումը հեշտացվում է որակյալ IDE-ի օգտագործման միջոցով: Երբեմն, IDE-ները կարող են լինել ծրագրավորման լեզվակենտրոն, օրինակ՝ Jikes և Jcreator-ը Java-ին հատուկ IDE-ներ են, և RubyMine օգտագործվում են կոդ ստեղծելու համար: օգտագործելով Ruby/Rails լեզուն; մինչդեռ ավելի ժամանակակից IDE-ներն առաջարկում են մի քանի լեզուների ինտեգրում մեկ փաթեթում: Այս առաջարկն օգնում է փոխել լեզուն՝ առանց միջավայրը փոխելու: Նրանց օրինակներից ոմանք ներառում են Eclipse (C, C++, Python, Ruby, PHP, Java, Perl-ի համար) և NetBeans (C, JavaScript, Ruby, Java, Python, PHP): Ավելին, IDE-ները նաև գեղեցկացնում են դրանցում գրված կոդը գույներով և համարձակ հիմնաբառերով՝ հեշտացնելու ծրագրային ապահովման մշակող ընկերություններին վրիպազերծելու և տեսողականորեն հասկանալու իրենց ծածկագիրը:

Ինչպես մարդկային լեզուները, շարահյուսությունը վերաբերում է կոդավորման կանոնների տարրերին, որոնք կարող են դասակարգվել որպես պարտադիր, չպետք է ունենալ, լավ ունենալ, և նշանակություն չունենա գործարկվող կոդ գրելը, օգտագործելով համապատասխան շարահյուսություն յուրաքանչյուր նշված ծրագրավորման լեզվի համար: Օրինակ, անգլերեն լեզվում կարելի է համարել, որ հետևյալ կանոնները պետք է ունենան.

  • Նախադասության ավարտը նշելու համար անհրաժեշտ է օգտագործել կետ կամ վերջակետ ():
  • Բոլոր նոր նախադասությունները պետք է սկսվեն մեծատառով

Մյուս կողմից, հետևյալ կանոնները կարևոր են և կազմում են շարահյուսական ճիշտ նախադասություններ. Այնուամենայնիվ, եթե դրանք ճիշտ չեն օգտագործվում, դրանք չեն խախտում լեզվի «ըմբռնումը»,

  • Գոյականներն ու դերանունները պետք է սկսվեն մեծատառով

Նմանապես, ծրագրավորման լեզուն ունի բազմաթիվ կանոններ, որոնք սովորաբար համարվում են ծրագրավորման լեզվի պատշաճ շարահյուսություն, որոնք ներառում են, բայց չեն սահմանափակվում դրանցով (փոփոխական) անվանման պայմանագրեր, կոդի հայտարարության վերջնատոր, շարահյուսական սխալներ և սխալի կոդեր, կոդի տողի շարունակություն, մեկնաբանության ոճեր, ներքևում, գործի զգայունություն, ընդգրկումներ/բացառումներ, ինդեքսավորում և տվյալների տիպի հայտարարություններ՝ մի քանիսը նշելու համար: Այս հոդվածում մշակված են այս շարահյուսական տարրերի մի քանի օրինակներ՝ բացատրելու «ի՞նչ է շարահյուսությունը ծրագրավորման մեջ» հասկացությունը.

1. Գործի զգայունություն

Հաշվի առնելով, թե ինչպես մարդիկ կարող են հասկանալ բառերը նույնիսկ մեծատառով կամ փոքր այբուբենով գրված, ծրագրավորման լեզուները մեծատառերի նկատմամբ զգայուն են կոդի նկատմամբ: Օրինակ, եթե կա h=5 փոփոխական, կարելի է վերագրել նաև մեկ այլ փոփոխական (և այն կհամարվի այլ փոփոխական) H=5։ Դա պայմանավորված է այն հանգամանքով, որ պատշաճ շարահյուսության կանոնները ցույց են տալիս, որ ծրագրավորման լեզուն մեծատառերի զգայուն է, և ծրագրավորողը պետք է զգույշ լինի, որպեսզի սխալներ թույլ չտա բառերը մեծատառով գրելիս, ինչպես անգլերենում: Ցանկացած այբուբեն կամ նիշ մի փոքր անզգույշ է ընտրել, և ծրագիրը դա կհամարի բոլորովին այլ բան և ցույց կտա շարահյուսական սխալ: Կոդավորման մեջ սինթետիկորեն ճիշտ նախադասությունները կարող են սխալ ցույց տալ, եթե այն չի հետևում ճիշտ ձևավորված շարահյուսական տողերի կանոններին մեծատառերի զգայունության միջոցով:

2. Կոդի քաղվածքի դադարեցում

Ենթադրենք, python ծրագրավորողը գրում է կոդի տող: Կոդերի այս տողը որպես ամբողջական հայտարարություն նշելու համար (ինչպես մարդկային լեզվի ամբողջական նախադասության մեջ), Python-ի պատշաճ շարահյուսությունը թելադրում է, որ վերջինս կարիք չունի որևէ հատուկ նիշ մտցնել վերջում. փոխարենը բավական է սեղմել պարզ վերադարձի ստեղնը (¿): Այնուամենայնիվ, այն դեպքում, երբ կոդը գրված է MATLAB լեզվով, կիսատ-ստորակետը պարտադիր է, հակառակ դեպքում սխալ է տեղի ունենում, և կոդը ճիշտ չի աշխատում: Դիտարկենք կոդի բլոկները ձախ (MATLAB) և աջ (Python) պարզ երկու թվերի գումարման համար (a=15, b=19, արդյունք=a+b):

Եթե ​​MATLAB կոդի վերջում չավելացվի կիսատ-ստորակետ կամ Python կոդում ավելացվի կիսատ-ստորակետ, կառաջանա շարահյուսական սխալ, և կոդը չի կատարվի: Դա պայմանավորված է նրանով, որ python-ը կարիք չունի որևէ հայտարարությունների տերմինատորի, մինչդեռ MATLAB կոդը պահանջում է: Հետևաբար, ծրագրավորողները պետք է հետևեն իրենց օգտագործած հատուկ լեզվի պատշաճ շարահյուսությանը, որպեսզի ապահովեն, որ կոդը աշխատում է առանց որևէ սխալի:

3. Կոդի տողի շարունակություն

Երբեմն, ծրագրավորողները պետք է գրեն երկար կոդի հայտարարություն, որը չի լրացվում IDE-ի մեկ տողում: Նման դեպքում անհրաժեշտ է շարադրանքի շարունակությունը մի քանի տողերով։ Հետևյալ օրինակը կարելի է դիտել MATLAB (ձախ) և C++ (աջ) կոդի հայտարարության շարունակման տարբեր մեթոդների համար.

Արդյունքը երկու դեպքում էլx=6ն է, սակայն, ինչպես երևում է, կոդի հայտարարությունը շարունակելու համար մի քանի տողերում, ճիշտ շարահյուսությունը ուղղորդում է ավելացնել 3 կետ, որին հաջորդում է բացատ, իսկ մնացած կոդը կարող է. տեղափոխվել MATLAB-ի հաջորդ տող: C++ կոդում նման կետեր չեն պահանջվում՝ մի քանի տողային կոդի հայտարարություն ունենալու համար: Այնուամենայնիվ, երկու դեպքում էլ անհրաժեշտ է տերմինատոր նիշ (կիսակետ):

4. Նեղացում

Սա բավականին հետաքրքիր շարահյուսական կանոն է: Ասենք, որ ծրագրակազմի մշակող ընկերություն ավելացրել է (սխալմամբ, եթե իր բախտը բերել է) բացատ, ներդիր (հավասար է 6 բացատ) կամ երկուսն էլ խառնված մեկ կոդի բլոկում, մինչդեռ որոշ տողեր չեն նահանջ, ինչը խախտում է Python-ի շարահյուսություն, և ծրագրավորողը կստանա շարահյուսական սխալ: Python-ում ճիշտ շարահյուսությունը կլինի նույն նահանջով կոդի բլոկ գրելը, հակառակ դեպքում, տարբեր նահանջով կոդի տողը կհամարվի կոդի այլ բլոկ: MATLAB-ի դեպքում այդպես չէ: MATLAB-ում դուք կարող եք ավելացնել այնքան բացատներ, ներդիրներ կամ խառնել այնքան ժամանակ, քանի դեռ հայտարարությունն ավարտում եք տերմինատոր նիշով i,e. երկու կետ (;): Ստուգեք հետևյալ օրինակը՝ Python կոդով աջ կողմում՝ շարահյուսական սխալով և առանց շարահյուսական սխալի, իսկ դրա համապատասխան MATLAB կոդը՝ աջ կողմում.

Պատշաճ նահանջը լավ է և՛ Python-ի, և՛ MATLAB-ի հետ, սակայն անհամապատասխան ներքևումն առաջացնում է շարահյուսական սխալներ Python-ում: Շարահյուսության իմաստով, MATLAB-ը դեռևս լավ անհամապատասխան նահանջ է.

5. Ինդեքսավորում

Բերենք հարկերի շենքերի օրինակը՝ ծրագրավորման մեջ ինդեքսավորումը հասկանալու համար: Կա առաջին հարկ, իսկ հետո առաջին հարկի վերևում կան այլ հարկեր: Որոշ շենքերում առաջին հարկից վերևի հատակը համարվում է 1-ին հարկ, քանի որ այն առաջին հարկն է առաջին հարկից հետո: Մինչդեռ այլ շենքերում առաջին հարկը կարելի է համարել առաջին հարկ, քանի որ դա այն առաջին հարկն է, որում գտնվում եք շենք մտնելիս:

Նույնը ծրագրավորման մեջ ինդեքսավորման դեպքում է։ Դիտարկենք x կոչվող փոփոխականում պահպանված 5 թվերի ցանկ, որ x=10,20,30,40,50: Այժմ տեսողականորեն 1-ին դիրքում կա 10 համար, 2-րդում՝ 20, 3-րդ դիրքում՝ 30 և այլն։ Այս դիրքավորումը ծրագրավորման մեջ կոչվում է ինդեքսավորում: Ծրագրավորման տարբեր լեզուներ թելադրում են ինդեքսավորման տարբեր կանոններ: Օրինակ՝ թվերի ցանկից (x) առաջին համարը ստանալու համար ծրագրավորողը Python-ում պետք է գրի x[0], քանի որ Python-ում 1-ին թիվը չի համարվում։ լինել 1-ին դիրքում: Փոխարենը, այն կոչվում է դիրք 0: Այս ինդեքսավորումը կոչվում է զրոյական ինդեքսավորում, մինչդեռ MATLAB ծրագրավորման մեջ մեկ ինդեքսավորումը ճիշտ շարահյուսություն է թվերին մուտք գործելու համար:

6. Գործի զգայունություն

Գործի զգայունությունը վերաբերում է նրան, թե ինչպես է ծրագրավորման լեզուն վերաբերվում տարբեր բառերին: Օրինակ՝ Foo և foo բառերը նույնն են համարվում լեզվում: Եթե ​​դրանք նույնն են (շարահյուսության կանոններով), ապա այս լեզուն կկոչվի մեծատառերի անզգայուն: Այնուամենայնիվ, եթե դրանք դիտարկվում են որպես տարբեր բառեր, ապա լեզուն մեծատառերի զգայուն է: Մեծատառերի զգայուն լեզուները ներառում են Python, MATLAB և Java: Մինչդեռ տառերի անզգայուն լեզուների օրինակներն են SQL-ը և Basic-ը: Այժմ, շարահյուսական վիճակի պատճառով, տառերի անզգայուն լեզուներում անվանելու հնարավորությունները մի փոքր սահմանափակ են (քանի որ գնահատականներըև Գնահատականներըհամարվելու են նույնը, այնպես որ դուք պետք է ընտրեք տարբեր փոփոխականի անվանում)

7. Մեկնաբանության ոճ

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

Ծրագրավորման տարբեր լեզուներ ունեն տարբեր շարահյուսություն՝ կոդում մեկնաբանություններ ավելացնելու համար: Օրինակ, եթե Python լեզվով մեկնաբանություն պետք է ավելացվի կոդի մեջ, ապա օգտագործվում է հեշ նշան (#): Մինչդեռ MATLAB-ում տոկոսային նշանը (%) օգտագործվում է ցույց տալու համար, որ հետևյալ տողը մեկնաբանություն է և ոչ կոդ և չպետք է կատարվի կոմպիլյատորի կողմից կոդ կազմելու ժամանակ։ Եթե ​​մեկնաբանելու համար պատշաճ նշան չի օգտագործվում, կարող է անսպասելիորեն առաջանալ շարահյուսական սխալ:

Եզրակացություն

Շարահյուսությունը կենտրոնական և կենսական դեր է խաղում համակարգչային ծրագրավորման ցանկացած լեզու սովորելու և հասկանալու գործում: Առանց ծրագրավորման լեզվի շարահյուսությունը ճիշտ հասկանալու, չի կարելի ավելի հեռուն գնալ՝ զարգացնելով իմաստալից, հասկանալի և արդյունավետ կոդ, որը կարող է օգտագործվել ցանկացած լավ նպատակի համար: Արդյունավետ կոդի ամբողջականությունն ու ճշգրտությունը մնում են անձեռնմխելի, եթե հետևեք նշված ծրագրավորման լեզվի պատշաճ շարահյուսությանը: Նմանապես, վերարտադրելիությունը մեծ մարտահրավեր է ծրագրավորման վրա հիմնված նախագծերում, և որոշակի ծրագրավորման լեզվի պատշաճ շարահյուսությանը հետևողականորեն հետևելը կարող է օգնել միայն վրիպազերծման և անսարքությունների վերացման քայլերին, եթե որևէ խնդիր առաջանա ավելի մեծ նախագծում:

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

Այս հոդվածը սկզբնապես հրապարակվել է https://techreviewer.co/blog/what-is-syntax-in-programming կայքում