Ինչ սպասել, եթե ցանկանում եք դառնալ iOS ծրագրավորող

Ինչ սպասել, եթե ցանկանում եք դառնալ iOS ծրագրավորող

iOS-ի արտաքինից զարգացումը կարող է թվալ փակ ակումբ: Աշխատելու համար ձեզ անպայման պետք է Apple համակարգիչ, էկոհամակարգը սերտորեն վերահսկվում է մեկ ընկերության կողմից. Ներսից երբեմն կարող եք նաև հակասություններ լսել. ոմանք ասում են, որ Objective-C լեզուն հին և անշնորհք է, իսկ մյուսներն ասում են, որ նոր Swift լեզուն չափազանց կոպիտ է:

Այնուամենայնիվ, ծրագրավորողները գնում են այս տարածք և, երբ այնտեղ լինում են, գոհ են մնում:

Այս անգամ Մարատ Նուրգալիևը և Բորիս Պավլովը պատմեցին իրենց փորձի մասին՝ ինչպես են սովորել մասնագիտությունը, ինչպես են անցել իրենց առաջին հարցազրույցները, ինչու են մերժումներ ստացել։ Իսկ որպես փորձագետ հանդես է եկել դեկան Անդրեյ Անտրոպովը iOS-ի զարգացման ֆակուլտետ GeekBrains-ում:

2016 թվականին Մարատ Նուրգալիևը Աստրախանի մարզից եկավ աշխատանքի տեղավորելու տեղական հեռուստաընկերությունում որպես բջջային ծրագրավորող։ Սա նրա առաջին հարցազրույցն էր։ Նա նոր էր վերադարձել բանակից՝ առանց պրակտիկայի ու փորձի, մոռացել էր անգամ այն ​​տեսությունը, որի հետ արդեն խնդիրներ ուներ։ Մարատի միակ փորձը բջջային զարգացման գործում նրա թեզն էր Android հավելվածների միջոցով տեղեկատվության արտահոսքի վերլուծության վերաբերյալ: Հարցազրույցի ժամանակ նրան հարցրել են իր ուսումնասիրությունների, OOP-ի և այլ տեսության մասին, սակայն Մարատը չի կարողացել թաքցնել իր գիտելիքների բացերը։

Սակայն նրան չեն մերժել, այլ տվել են գործնական առաջադրանք՝ երկու շաբաթվա ընթացքում իրականացնել API-ի միջոցով նորությունների ցանկի ցուցադրումը։ Ինչպես iOS-ի, այնպես էլ Android-ի համար: «Եթե ես որոշ փորձ ունենայի Android-ում, ապա նույնիսկ գործիք չկար iOS-ի տարբերակ ստեղծելու համար: iOS հավելվածների մշակման միջավայրը հասանելի է միայն Mac-ում: Բայց երկու շաբաթ անց ես վերադարձա և ցույց տվեցի, թե ինչ կարող եմ անել Android-ով: iOS-ով ես ստիպված էի դա պարզել անմիջապես: Վերջում ինձ տարան։ Հետո ես ապրում էի Աստրախանում։ Քսանից բարձր աշխատավարձով ՏՏ ոլորտում ցանկացած աշխատանք սազում էր ինձ»։

Ովքե՞ր են iOS ծրագրավորողները:

Բջջային ծրագրավորողները հավելվածներ են պատրաստում ցանկացած շարժական սարքի համար: Սմարթֆոններ, պլանշետներ, խելացի ժամացույցներ և բոլոր այլ հարթակներ, որոնք աջակցում են Android-ին կամ iOS-ին: Բջջային կապի զարգացման հիմնարար սկզբունքները ոչնչով չեն տարբերվում սովորական մշակումից, սակայն հատուկ գործիքների շնորհիվ այն առանձնացվել է առանձին ուղղության: Այն օգտագործում է իր սեփական գործիքները, ծրագրավորման լեզուներ և շրջանակներ:

«IOS-ի հետ աշխատելու համար ձեզ հարկավոր է MacBook, քանի որ միայն այն ունի անհրաժեշտ Xcode մշակման միջավայր։ Այն անվճար է և տարածվում է AppStore-ի միջոցով: Տեղադրելու համար դուք պետք է ունենաք ձեր Apple ID-ն և ուրիշ ոչինչ: Xcode-ում կարող եք հավելվածներ մշակել ամեն ինչի համար՝ հեռախոս, պլանշետ, ժամացույց: Ամեն ինչի համար կա ներկառուցված սիմուլյատոր և խմբագիր»,- ասում է GeekBrains-ի iOS-ի զարգացման բաժնի դեկան Անդրեյ Անտրոպովը:

«Բայց զարգացման միջավայրը կարող է տեղադրվել Windows-ում, եթե դուք օգտագործում եք Hackintosh: Սա աշխատանքային, բայց շրջանաձև տարբերակ է. լուրջ մշակողներից և ոչ մեկը դա չի անում: Սկսնակները գնում են հին MacBook: Իսկ փորձառուները սովորաբար կարող են իրենց թույլ տալ ամենավերջին մոդելը»։

Լեզուներ - Swift կամ Objective-C

IOS-ի գրեթե բոլոր մշակումները կատարվում են Swift ծրագրավորման լեզվի միջոցով: Այն հայտնվել է հինգ տարի առաջ և այժմ աստիճանաբար փոխարինում է հին Objective-C լեզվին, որը Apple-ն օգտագործում է իր բոլոր հավելվածներում ավելի քան 30 տարի։

«Objective-C-ում կուտակվել է կոդի հսկայական բազա, ուստի երկու լեզուներով մշակողներ դեռևս պահանջվում են՝ կախված ընկերությունից, նրա առաջադրանքներից և հավելվածներից: Շատ տարիներ առաջ գրված դիմումները հիմնված են Objective-C-ի վրա: Եվ բոլոր նոր նախագծերը մշակվում են Swift-ում լռելյայն: Այժմ Apple-ը շատ բան է անում հեռախոսի, պլանշետի, ժամացույցի և MacBook-ի միաժամանակյա մշակումը հնարավորինս հարմարավետ դարձնելու համար։ Նույն կոդը կարող է կազմվել և գործարկվել ամենուր: Սա նախկինում տեղի չի ունեցել: iOS-ի համար մենք մշակել ենք Swift-ում, MacOS-ի համար՝ Objective-C-ում»։

Անդրեյի խոսքով՝ Swift-ը շատ պարզ լեզու է, որը բարեկամական է սկսնակների համար։ Այն խիստ մուտքագրված է, ինչը թույլ է տալիս բազմաթիվ սխալներ որսալ նախագծի կազմման փուլում, իսկ սխալ կոդը պարզապես չի աշխատի։

«Objective-C-ն բավականին հին լեզու է, նույն տարիքի, ինչ C++ լեզուն: Այն ժամանակ, երբ այն մշակվեց, լեզուների պահանջները բոլորովին այլ էին։ Երբ Swift-ը դուրս եկավ, այն խելագարված էր, ֆունկցիոնալությունը սահմանափակ էր, և շարահյուսությունը կոպիտ էր: Իսկ մարդիկ ձեռքերը լի էին Օբյեկտիվ-C-ով։ Այն երկար տարիներ կատարելագործվել է, այնտեղ բոլոր սխալները շտկվել են։ Բայց հիմա ես կարծում եմ, որ Swift-ը նույնքան լավն է, որքան Objective-C-ն: Չնայած նույնիսկ Apple-ը դեռ օգտագործում է երկուսն էլ իր նախագծերում։ Լեզուները հիմնականում փոխարինելի են և փոխլրացնող: Մի լեզվի կառուցվածքներն ու առարկաները կարող են փոխակերպվել մեկ այլ լեզվի առարկաների և կառուցվածքների: Լավ է իմանալ երկու տարբերակներն էլ, բայց սկսնակների համար Objective-C-ն հաճախ վախեցնող և շփոթեցնող է թվում»:

ուսուցում

«Իմ առաջին աշխատանքի ժամանակ ղեկավարս ինձ վերապատրաստեց, օգնեց իրականացնել և կարգավորել նախագիծը,- ասում է Մարատը,- բայց Android-ով և iOS-ով միաժամանակ աշխատելը դժվար է: Ժամանակ է պետք վերակառուցելու, նախագծից նախագիծ, լեզվից լեզու անցնելու համար: Ի վերջո, ես որոշեցի, որ պետք է ընտրել մեկ ուղղություն և ուսումնասիրել այն։ Ես վաճառվել եմ Xcode-ի ինտերֆեյսով և Swift-ի պարզ շարահյուսությամբ»:

Մարատը մտավ GeekBrains-ի iOS-ի զարգացման բաժին: Սկզբում շատ հեշտ էր, քանի որ նա շատ բան գիտեր աշխատանքային փորձից։ Տարեկան դասընթացը բաժանված է չորս եռամսյակների. Ըստ Անդրեյի, առաջինը տալիս է միայն ամենահիմնականը. «Swift լեզվի հիմքը, հիմնական շրջանակների իմացությունը, ցանցային կապը, տվյալների պահպանումը, հավելվածի կյանքի ցիկլը, վերահսկիչը, հիմնական ճարտարապետությունները, հիմնական գրադարանները, որոնք օգտագործում են բոլորը, բազմալեզու և զուգահեռություն: դիմումները»։

Երկրորդ եռամսյակը ավելացնում է Objective-C: Անցկացվում է դասընթաց ճարտարապետության և ծրագրավորման հիմնական օրինաչափությունների վերաբերյալ: Երրորդ եռամսյակում սովորեցնում են ճիշտ գրել կոդ։ Այն բացատրում է, թե ինչ է գործարանը, ինչպես ճիշտ գրել թեստերը, ստեղծել նախագծեր, ինչ է Git-Flow, Continuous Integration միջոցով Fast Lane: Չորրորդ և վերջին եռամսյակը նվիրված է թիմային աշխատանքին, գործնական առաջադրանքներին և պրակտիկաներին:

«Առաջին եռամսյակը հեշտ էր,- ասում է Մարատը,- բայց հետո ես սկսեցի սովորել ծրագրավորում Objective-C-ում, ուսումնասիրել դիզայնի օրինաչափությունները, Solid-ի, Git-Flow-ի սկզբունքները, նախագծի ճարտարապետությունը, հավելվածների Unit-ի և UI-ի թեստավորումը, ստեղծելով հատուկ անիմացիա: - և հետո ես Հետաքրքիր դարձավ սովորելը»:

«Ինձ համար GeekBrains-ում սահուն չսկսվեց», - ասում է Բորիս Պավլովը, և ընդհանուր առմամբ iOS-ի զարգացման նրա ուղին ամենաուղղակի չէր: Տղային մեծացրել է տատիկը։ Նա ճարտարապետ էր, մաթեմատիկոս և դիզայներ և Բորիսի մեջ սերմանեց դիզայնի հանդեպ սերը, սովորեցրեց նրան նկարել ձեռքով և նկարել: Նրա հորեղբայրը համակարգի ադմինիստրատոր էր և եղբորորդուն հետաքրքրում էր համակարգիչներով:

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

Նա սկսեց սովորել C++ Իրկուտսկի Արեգակնային-երկրային ֆիզիկայի ինստիտուտի ուսուցչի մոտ: Հետո սկսեցի հետաքրքրվել խաղերի մշակմամբ և փորձեցի անցնել C#-ին։ Եվ վերջապես, ինչպես Մարատը, նա գերվեց Սվիֆթ լեզվով։

«Ես որոշեցի մասնակցել GeekBrains-ի անվճար ներածական դասընթացին: Անկեղծ ասած, նա շատ ձանձրալի էր, դանդաղկոտ ու անհասկանալի,- հիշում է Բորիսը,- ուսուցիչը խոսում էր լեզվի առանձնահատկությունների մասին, բայց մի թեմայից մյուսը շտապում էր առանց էությունը բացահայտելու։ Երբ դասընթացն ավարտվեց, ես դեռ ոչինչ չհասկացա»։

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

«Մեզ հաճախ են քննադատում, իբր մեր ուսումնական ձեռնարկներն ամբողջությամբ արդիական չեն, կան անճշտություններ։ Բայց դասընթացները մշտապես թարմացվում են, իսկ ուսուցիչները միշտ խոսում են նորարարությունների մասին։ Իմ ղեկավարած խմբերից շատերն առաջին եռամսյակից հետո աշխատանք են գտնում: Իհարկե, սովորաբար դրանք ծրագրավորման փորձ ունեցող մարդիկ են,- ասում է Անդրեյը,- մյուս կողմից, ողջ գիտելիքը հնարավոր չէ փոխանցել մեկ դասընթացով: Ցանցի հաճախորդների փոխազդեցությունը կյանքում չի կարող տեղավորվել տասը երկժամյա դասախոսությունների մեջ: Իսկ եթե գնում ես միայն դասընթացների և այլ բան չես անում, ուրեմն բավարար գիտելիքներ չես ունենա։ Եթե ​​ամբողջ տարին ամեն օր սովորես, ապա այս տեմպերով աշխատանք չեն գտնի միայն ծույլերը։ Որովհետեւ մասնագիտության մեջ պահանջարկը շատ մեծ է»։

Ինչ սպասել, եթե ցանկանում եք դառնալ iOS ծրագրավորող

Դուք կարող եք տեսնել ամենաշատը վերջին թափուր աշխատատեղերը iOS ծրագրավորողների համար և բաժանորդագրվեք նորերին:

Աշխատել

Բայց ոչ Մարատը, ոչ Բորիսն այդքան հեշտ աշխատանք չգտան։

«Որոշ խոշոր ընկերություններ վաղուց մշակել են iOS հավելվածներ Objective-C-ում և շարունակում են պահպանել կոդերի հին բազան: Ցավոք սրտի, ես չունեմ համոզիչ փաստարկ՝ ստիպելու նրանց օգտագործել բացառապես Swift-ը: Հատկապես նրանք, ովքեր օգտագործում են «մի դիպչիր այն, ինչ աշխատում է» կանոնը, - ասում է Մարատը, - «Geekbrains-ում քիչ ուշադրություն է դարձվում Objective-C ուղղությանը: Դա ավելի շատ տեղեկատվական բնույթ է կրում։ Բայց յուրաքանչյուր ընկերություն, որի համար ես հարցազրույց էի տվել, հարցնում էր Objective-C-ի մասին: Եվ քանի որ իմ ուսումը կենտրոնացած է Սվիֆթի վրա, ինչպես իմ նախորդ աշխատանքը, ես մերժումներ եմ ստացել հարցազրույցների ժամանակ»։

«Ուսումնասիրելուց հետո ես ինքնուրույն գիտեի միայն ամենամակերեսային հիմունքները, որոնց օգնությամբ ես կարող էի ստեղծել ամենապարզ հավելվածը», - ասում է Բորիսը: «Աշխատանքի համար, իհարկե, դա բավարար չէր, բայց ես ուրախ էի դրա համար: Իրկուտսկում դժվար էր աշխատանք գտնելը. Ավելի ստույգ՝ ոչ բոլորովին։ Որոշեցի փնտրել այլ քաղաքներ։ Թափուր աշխատատեղերի քանակով առավել ակտուալ են դարձել Կրասնոդարը, Մոսկվան և Սանկտ Պետերբուրգը։ Ես որոշեցի գնալ Սանկտ Պետերբուրգ՝ ավելի մոտ Եվրոպային։

Բայց ամեն ինչ այնքան էլ վարդագույն չէր։ Նույնիսկ կրտսերին կներեն այն, ինչ նա չի կարող իմանալ: Ես դեռ աշխատանք չեմ գտել։ Ես աշխատում եմ «շնորհակալություն»-ի համար, փորձ եմ ձեռք բերում: Ես հասկանում եմ, որ դա այն չէ, ինչ ես ուզում էի, բայց ինձ հետաքրքրում է, և դա ինձ մղում է։ Ես ուզում եմ գիտելիքներ ձեռք բերել»:

Անդրեյը կարծում է, որ նորեկները պետք է պրակտիկա փնտրեն, քան աշխատանք: Եթե ​​դուք շատ քիչ գիտելիքներ ունեք, ապա նորմալ է, որ պրակտիկան չվարձատրվի: Անդրեյը խորհուրդ է տալիս կրտսեր թափուր աշխատատեղերի համար դիմել խոշոր ընկերություններին, որտեղ աշխատանքային գործընթացն արդեն հաստատված է։

«Երբ հասկանաք, թե ինչպես է աշխատում ծրագրային ապահովման մշակման գործընթացը, շատ ավելի հեշտ կլինի նավարկելը և հետագա աշխատանք գտնելը՝ կախված ձեր ցանկություններից: Որոշ մարդիկ գնում են անկախ զարգացման, իրենց համար խաղեր են պատրաստում, դրանք վերբեռնում խանութում և իրենք դրամայնացնում: Ոմանք աշխատում են խիստ կանոններով խոշոր ընկերությունում: Որոշ մարդիկ գումար են աշխատում փոքր ստուդիաներում, որոնք պատրաստում են հատուկ ծրագրեր, և այնտեղ նրանք կարող են դիտել ամբողջ գործընթացը՝ նախագիծ ստեղծելուց մինչև այն խանութ հասցնելը»:

Աշխատավարձերը

iOS ծրագրավորողի աշխատավարձը, ինչպես ցանկացած այլ, կախված է «Մոսկվա, թե Ռուսաստան» հարցից: Բայց ելնելով ոլորտի առանձնահատկություններից՝ շատ հեռահար աշխատանք, տեղափոխման հնարավորություններ և աշխատել ոչ տարածաշրջանային շուկայում, թվերն ավելի ու ավելի են մոտենում միմյանց:

Ինչ սպասել, եթե ցանկանում եք դառնալ iOS ծրագրավորող

Ըստ My Circle աշխատավարձի հաշվիչի՝ iOS ծրագրավորողի միջին աշխատավարձը մի փոքր ավելի քիչ է 140 000 ռուբլի.

«Շատ ցածր մակարդակի կրտսերը հաճախ աշխատում է անվճար կամ խորհրդանշական փողի համար՝ 20-30 հազար ռուբլի: Եթե ​​կրտսերին նպատակաուղղված տանեն իր պաշտոնին, նա կստանա 50-ից 80 հազ. Միջինները ստանում են 100-ից 150, իսկ երբեմն նույնիսկ մինչև 200: Ավագները չեն ստանում 200-ից պակաս: Կարծում եմ՝ նրանց աշխատավարձը 200-300-ի սահմաններում է։ Իսկ թիմի առաջատարների համար, համապատասխանաբար, այն ավելի քան 300 է»:

Ինչ սպասել, եթե ցանկանում եք դառնալ iOS ծրագրավորող

Հարցազրույցներ

«Առաջին հարցազրույցը կայացել է Skype-ով։ Ի զարմանս ինձ, դա Google-ն էր,- հիշում է Բորիսը,- հետո ես նոր էի տեղափոխվել Սանկտ Պետերբուրգ և սկսեցի աշխատանք փնտրել։ Ես դիմում եմ ստացել iOS-ի ծրագրավորողի պաշտոնի համար: Ոչ կրտսեր, ոչ միջին, ոչ ավագ, պարզապես մշակող: Ես հիացած էի և սկսեցի նամակագրել մենեջերի հետ։ Ինձ խնդրեցին կատարել տեխնիկական առաջադրանք՝ ես պետք է դիմում գրեի Չակ Նորիսի մասին կատակների համար։ Ես գրել եմ այն։ Նրանք ինձ ասացին, որ ամեն ինչ հիանալի է, և նշանակեցին առցանց հարցազրույց:

Զանգեցինք իրար։ Մի գեղեցիկ աղջիկ խոսեց ինձ հետ: Բայց լեզվի իմացության մասին ոչ մի հարց չտվեցին՝ միայն տարբեր տրամաբանական խնդիրներ, օրինակ՝ «ժամը 15:15 է, քանի՞ աստիճան է ժամացույցի և րոպեի սլաքների միջև» կամ «Սյունակը 10 մետր է, ա Խխունջը ցերեկը սողում է 3 մետր վեր, իսկ գիշերը իջնում ​​է 1 մետր բարձրությամբ»։ Քանի՞ օրից նա կսողա դեպի գագաթը», և ևս մի քանի նմանատիպ:

Հետո շատ տարօրինակ հարցեր եղան՝ ինչու եմ ես սիրում Apple-ը և ինչպես եմ վերաբերվում Թիմ Քուկին: Ես ասացի, որ ընկերությունն ընդհանուր առմամբ դրական է իր նկատմամբ, բայց ավելի շուտ բացասական է, քանի որ նրա համար կարևոր է փողը, ոչ թե ապրանքը։

Երբ սկսվեցին Swift-ի մասին հարցերը, իմ գիտելիքները բավական էին միայն ծրագրավորման օրինաչափությունների և OOP-ի հիմունքների համար: Հրաժեշտ տվեցինք, մեկ շաբաթ անց հետ զանգեցին ու ասացին, որ հարմար չեմ։ Իրականում, ես դրանից հսկայական փորձ եմ ձեռք բերել՝ գիտելիք է պետք, շատ բան է պետք՝ և՛ տեսական, և՛ պրակտիկա»։

Անդրեյն ասում է, որ «հարցազրույցի ժամանակ առաջինը հարցնում են բոլորին, դա վերահսկիչի կյանքի ցիկլն է: Նրանք իսկապես սիրում են պարզ ծրագրավորման օրինակ խնդրել: Նրանք անպայման կհարցնեն հանրաճանաչ գրադարանների օգտագործման ձեր փորձի մասին: Անկասկած, հարց կլինի Swift արժեքի տեսակների տարբերությունների վերաբերյալ Reference Types-ի, Ավտոմատ մատնահետքերի հաշվման և հիշողության կառավարման մասին: Նրանք կարող են հարցնել, թե ինչպես են ներդրել տվյալների պահպանումը հավելվածներում և արդյոք իրականացրել են ցանցային հարցումները: Նրանք կհարցնեն REST-ի և JSON-ի հիմունքների մասին: Կրտսերից կոնկրետ բաներ ու նրբություններ չեն պահանջի։ Համենայն դեպս ես չեմ հարցնում»:

Բորիսն այլ փորձ ուներ. «Նույնիսկ երբ ես պրակտիկա խնդրեցի, կատարեցի տեխնիկական առաջադրանքները և ասացի, որ աշխատավարձն ինձ համար կարևոր չէ, քանի դեռ բավարար է բնակարան վարձելու համար, ինձ մերժում էին։ Կարդում էի հոդվածներ, փորձում էի հասկանալ, թե ինչ է պետք հավաքագրողին նորեկից։ Բայց նրանք հիմնականում ձախողվեցին տեսությունների վրա: Չգիտես ինչու, նրանք բարձրագույն լիգաներից հարցեր էին տալիս, որոնք նորեկներին չեն վերաբերում»:

Մարատի բախտը բերեց. Այժմ նա աշխատում է տրանսպորտային ընկերությունում և միայնակ է iOS-ի բաժնի պատասխանատուն՝ միաժամանակ ուսումը ֆակուլտետում շարունակելով։ «Քանի որ ես միակ պատասխանատուն եմ iOS-ի համար, իմ աշխատանքը գնահատվում է միայն ինձ հանձնարարված առաջադրանքները կատարելու իմ ունակությամբ, այլ ոչ թե տեսական գիտելիքներով»:

Համայնք

Անդրեյն ապրում է Նիժնի Նովգորոդում և ասում է, որ նույնիսկ այնտեղ մեծ համայնք է ​​ձևավորվել։ Ժամանակին նա Python-ում backend-ի ծրագրավորող էր, բայց ընկերները նրան ներքաշեցին բջջային զարգացման մեջ, և այժմ նա ինքն է բոլորին խրախուսում դա անել:

«Համաշխարհային հանրությունը սովորաբար հաղորդակցվում է Twitter-ի միջոցով: Մարդիկ գրում են իրենց սեփական բլոգները, տեսահոլովակներ են ձայնագրում Youtube-ում, հրավիրում միմյանց փոդքասթերի: Մի օր ես հարց ունեի մի ներկայացման մասին, որտեղ խոսեց HQTrivia թիմի ղեկավարը: Սա ամերիկյան վիկտորինային խաղ է, որը միաժամանակ խաղում է մի քանի միլիոն մարդ: Ես գրեցի նրան Twitter-ում, նա պատասխանեց ինձ, մենք խոսեցինք, և ես շնորհակալություն հայտնեցի։ Համայնքը չափազանց բարեկամական է, ինչը հիանալի է»։

Առաջարկվող գրականության ցանկՍկսնակ մակարդակ.

Միջին մակարդակը:

Ընդլայնված մակարդակ.

Source: www.habr.com

Добавить комментарий