12:07 | 12.07.19 | Հոդվածներ | exclusive 121961

Kotlin ծրագրավորման լեզուն, դրա փիլիսոփայությունն ու ապագան

Աշխարհում ավելի ու ավելի մեծ հետաքրքրություն է դրսեւորվում ստատիկ տիպավորմամբ, տարբեր հարթակների համար նախատեսված Kotlin ծրագրավորման լեզվի շուրջ։

Kotlin-ն օբյեկտի վրա հիմնված ծրագրավորման լեզու է, որն ամբողջությամբ կարող է փոխգործակցել Java-ի հետ, ինչպես նաեւ վերածվել JavaScript կոդի: Լեզուն մշակել են Սանկտ Պետերբուրգի JetBrains ընկերության ծրագրավորողները, այն հովանավորվում է այդ ընկերության ու Google-ի կողմից՝ Kotlin հիմնադրամի միջոցով։ 2019թ․ մայիսից Kotlin-ը Android օպերացիոն համակարգում բարելավման համար Google-ի նախընտրելի լեզուն է հայտարարվել։

Ծրագրավորման լեզուն կոչել են Սանկտ Պետերբուրգի մոտակայքում գտնվող Կոտլին կղզու անունով, ճիշտ այնպես, ինչպես Java-ն՝ Ինդոնեզիայում գտնվող համանուն կղզու անունով է։

2019թ․-ի հունիսին Մեդիամաքսի թղթակիցն այցելել է JetBrains ընկերություն եւ մասնակցել դրա գլխավոր ուղեղներից մեկի՝ Kotlin ծրագրավորման լեզուն ստեղծած Անդրեյ Բրեսլավի հետ հանդիպմանը։ Միջազգային լրագրողների այցը կազմակերպել է ITMO համալսարանը, որի շրջանավարտն ու նախկին ուսուցիչներից է Անդրեյ Բրեսլավը։ Առանձնացրել ենք որոշ դրվագներ նրա ելույթից։

photo © Andrey Breslav's Twitter page


Kotlin-ի ծնունդը

Ծանոթներիցս մեկն ինձ հրավիրեց JetBrains-ի գրասենյակ՝ որոշ գաղափարներ քննարկելու, եւ ես կարծում էի, որ խոսելու ենք այն առանձնահատուկ լեզուների շուրջ, որոնք նրանք օգտագործում էին։ Պարզվեց, որ իրականում մտորում էին նոր լեզու ստեղծելու մասին։ Ընկերությունը մտածում էր, թե էլ ինչ կարող են անել ծրագրավորողների համար եւ հասկացել էին, որ լավագույն ընտրությունը կարող է ծրագրավորման նոր լեզուն լինել։

Հանդիպմանն ասացի․ «Ինչո՞ւ։ Արդեն բազմաթիվ լեզուներ կան։ Լավ, եթե չեք հավանում Java-ն, կարող եք այլընտրանքներն օգտագործել»։

Ի վերջո, նրանք ասացին բաներ, որ ես չգիտեի։ Ինձ՝ ակադեմիական կրթություն ունեցողիս, բացատրեցին, որ գոյություն ունեցող լեզուները չափից շատ ակադեմիական են եւ լավ չեն աշխատում շատ կարգավորումներում։ Մեկ այլ կարեւոր փաստարկն այն է, որ JetBrains ընկերությունը շուկայում բավական լավ դիրք ունի ծրագրավորման նոր լեզու ստեղծելու եւ մասսայականացնելու համար։

photo © ITMO

Kotlin-ի փիլիսոփայությունը

Kotlin-ը ծրագրավորման միավորված հարթակ է․ դուք կարող եք գրել մեկ ծրագիր, որը հասանելի կլինի միանգամից տարբեր սարքերում՝ սերվերի վրա, web browser-ում, ցանկացած համակարգով սմարթֆոններում։ Այսինք՝ դա լեզուների ընդհանրական հարթակ է․ նույն լեզուն, նույն գաղափարը, նույն մեթոդաբանությունը, բայց արդյունքը տարբեր սարքերում տարբեր կերպ է աշխատում, քանի որ միջավայրները, որոնցում դրանք ստեղծվել են, տարբեր են։ Մարդիկ սիրում են Kotlin-ը, քանի որ այն ճկուն է։ Փիլիսոփայության հիմքում ինդուստրիայի համար ժամանակակից լեզու ստեղծելն է եղել։

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

Այժմ ունենք կոդ, որը բազմաթիվ սարքավորումներում համաժամանակյա աշխատում է։ Բացի այդ՝ համակարգում որեւէ հարցման դեպքում նոր պատասխանի սպասելիս՝ աշխատում ենք «չսառեցնել» օգտատիրոջը։ Սա մի բան է, ինչը մենք ունենք եւ փորձում ենք զարգացնել։

photo © Andrey Breslav's Twitter page

Kotlin-ի ապագան

Նայելով ապագային՝ «խաղադրույք ենք կատարում» խաչաձեւ պլատֆորմի վրա, որովհետեւ բոլորը երազում են այդ մասին, բայց ցանկացած լուծում թերություններ ունի։ Երբ մոբայլ ծրագրավորմամբ զբաղվող մարդուն հարցնեք՝ կուզենա՞, արդյոք, մեկ անգամ գրել հավելվածը եւ այն աշխատի թե՛ Android, թե՛ IOS համակարգում, նա դրական պատասխան կտա, բայց, միեւնույն ժամանակ կասի, որ դա շատ բարդ է։ Մենք միանում ենք այն մարդկանց ակումբին, ովքեր փորձում են լուծել այդ խնդիրը, եւ արդյունքները հետաքրքիր են։ Մենք շատ հավատարիմ հետեւորդներ ունենք եւ հուսով ենք, որ այս ամենը ինչ-որ մեծ բանի կվերաճի։

Մեր ուշադրության կենտրոնում են տվյալագիտությունը, մեծ տվյալների մշակումն ու բիզնես բանականությունը։ Դա նշանակում է դուրս գալ մեր փորձագիտական շրջանակներից, քանի որ այս լսարանը հաստատապես միայն ծրագրավորողներից չի բաղկացած եւ կան շատ ակադեմիական հետագիծ ունեցողներ։

Մենք փորձում ենք համակարգված ծրագրավորում ներկայացնել այս տիրույթում, եւ հուսով ենք, որ այդ մարդիկ զգալիորեն կաջակցեն։ Ինտերնետ իրերի (IoT) եւ խաղերի ստեղծման ոլորտները եւս հետաքրքիր ուղղություններ են մեզ համար։

Կարծում ենք՝ հրաշալի կլինի ունենալ մաքուր ծրագրավորման մոդել, որը կփոխի ծրագրավորման մասին մարդկանց պատկերացումները։ Հարկավոր է այդ պատկերից հեռացնել գլոբալ բաները, ինչը ծրագրավորումն ավելի դյուրին կդարձնի։

Մարի Թարյան