Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

Ողջույններ, Խաբրովսկի բնակիչներ:

Այս հոդվածում ես ուզում եմ խոսել իմ փորձի մասին՝ որպես C++ ծրագրավորման ուսուցիչ տեխնիկական համալսարանի քոլեջում: Դա կյանքում մեկ անգամվա փորձ էր, որն ինձ շատ բան սովորեցրեց: Երբ խոսքը վերաբերում է ձեր անձնական անցյալից հետաքրքիր փաստերին, կյանքի այս հատվածն առաջիններից է, որ գալիս է ձեր մտքին:
Գնա։

Նախ՝ մի փոքր իմ մասին։
2016 թվականին գերազանցությամբ ավարտել եմ ինստիտուտը՝ ստանալով ավտոմատացված համակարգերի տեղեկատվական անվտանգություն: Ուսումնառության ընթացքում բազմիցս կարողացել եմ իրացնել իմ ներուժը գիտական ​​հոդվածներ գրելու, մրցույթների ու դրամաշնորհների մասնակցությամբ։ 2015 թվականին ես հնարավորություն ունեցա դառնալու «UMNIK» երիտասարդ գիտնականների համառուսաստանյան մրցույթի հաղթող։ 2016 թվականին, մինչ ուսումն ավարտելը, նա արդեն աշխատանքի էր ընդունվել քաղաքի խոշոր կազմակերպությունում՝ որպես «Տեղեկատվական անվտանգության, ծածկագրության և գաղտնագրման մասնագետ»։
Մի խոսքով, նման բան. Կարող եք պատկերացնել, որ ես դեռ գաղափար ունեի ծրագրավորման մասին։

Եվ ահա 2017թ. Ասպիրանտուրա. Ինձ խնդրեցին մեկ կիսամյակ դասավանդել քոլեջում C++, ինչի համար ինձ խոստացան լավ բոնուսներ՝ ասպիրանտի բեռը թեթեւացնելու համար, և ոչ ավելին։

Անկեղծ ասած, ես անկեղծորեն շահագրգռված էի փորձել ինձ այս կրեդոյում:

Առաջին զույգ
սեպտեմբեր. Դպրոցական առաջին շաբաթ. Ուսանողները եկան ինձ մոտ: «Ամենանվայել խումբը» - այդպես էին կոչվում:
23 մարդ. «Ծրագրավորողներ».

Ինչպես և սպասվում էր, նախ ներկայացա. Ես նրանց զուսպ պատմեցի «Նախ, մի փոքր իմ մասին» մասի բովանդակությունը...
Հետո սկսվեց սարսափելին. «Ի՞նչ կարող ես անել» հարցին. ուսանողները (այսուհետև մենք նրանց այդպես կկոչենք) պատասխանեցին, որ իրենք կարող են անել մի փոքր ավելին, քան ընդհանրապես ոչինչ (լավ, դա նշանակում էր, որ նրանցից ոմանք գիտեին, թե ինչ տեսք ունի MS VS-ը և կարող էին ստեղծել «Բարև աշխարհ» նախագիծը): .. Ծրագրավորողներ. Վերջին դասընթացը…

Այնուհետև նրանք «գունավոր» մանրամասն բացատրեցին, որ իրենց ոչինչ չեն սովորեցրել, և որ ընդհանրապես հիասթափված են ծրագրավորումից...

Գրեթե բոլոր օրերը մինչև իմ հաջորդ դասն անցան այսպես.
Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

...բայց նախօրեին միտք ծագեց՝ ջանքեր գործադրել այս երիտասարդների մտքում ու գիտակցության մեջ առկա իրավիճակը շտկելու համար։ Եվ հետո «Օստապը տարվեց»:

Ծրագրավորման ներածություն
Հաջորդ դասին ես բերել եմ... հանելուկ.
Այո այո. Փազլներ. "Ինչպես ընտելացնել վիշապին." Կանոնները պարզ էին. Խումբը բաժանված էր 3 թիմի. Յուրաքանչյուր թիմ հավաքեց իր մասը: Ոմանք անտառն են, մյուսները՝ երկիրը, մյուսները՝ նկարի կենտրոնում գտնվող վիշապը։ Մինչ ամբողջ զույգը հավաքում էր գլուխկոտրուկը, ես դա ասացի նրանց Փազլ հավաքելը նույնպես ծրագրավորում էոր ծրագրավորողները հաճախ օգտագործում են ուրիշի կոդը, որ յուրաքանչյուր նախագիծ ունի մի քանի տարբեր թիմեր, առանձնահատկություններ, մոդուլներ...
Աստիճանաբար գործընթացին միացան ամենալեթարգիկ ուսանողները։
Երբ ես ավարտեցի ծրագրավորման գաղափարը ներդնել բիզնես հայեցակարգերի, գործընթացների և... հանելուկների մեջ, ժամանակն էր սահմանել ուսուցման կանոնները:
Յուրաքանչյուր դասի համար յուրաքանչյուր աշակերտ պետք է տետրում գրի 10 տերմին ՏՏ-ից: Ցանկացած. Յուրաքանչյուրն ունի իր սեփականը: Բանն այն է, որ ես վերցրեցի մեկ ուսանողի նոթատետրը և գտա բոլոր տերմինների մեջ առավելագույնս կիրառվում և մեկ այլ ուսանողի հարցրեց դրանց մասին: Երբ մեկ այլ ուսանող ասում է. «Ես չեմ գրել այդ տերմինը», տույժ չկար (առողջ բանականության պատճառով), բայց այդ ուսանողը պետք է գրի «բացակայող» տերմինները (ինչպես բոլորը, ովքեր չունեին դրանք): և գտե՛ք դրանց իմաստները հաջորդով.զբաղմունք.

Մենք այդպես էլ արեցինք։ Յուրաքանչյուր դաս սկսվում էր ուրախ պատահականությամբ՝ կապված երկու կամ երեք ուսանողների հետ: Տղաները ոգևորված էին այս գործընթացով։

Դասի թեմաներ
Պարապմունքները սկսելիս շատ կարևոր է ուսանողներին լավ գրականություն տրամադրելը։ Իմ կարծիքով, իդեալական գիրքը հետևյալն էր.
Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

Մի ժամանակ ստիպված էի գաղտագողի կարդալ այն Microsoft Visual Studio-ին գրկած: Հետո ես կարողացա հասկանալ ծրագրավորումը գրեթե զրոյից։ Կատարյալ տարբերակ.

Դուք համեստորեն գնում եք ուսանողների մոտ և ասում. «Ծրագրավորող դառնալու համար հարկավոր է կարդալ և փորձել ամեն ինչ այս գրքում», և գիրքը նետել սեղանին։ Գլխավորը ուսապարկի գրքերը չշփոթելն է...

Ամեն թեմայից առաջ, իհարկե, պետք է մանրակրկիտ պատրաստվեի։ Ես կարդացի նույն Լաֆորետը և մի քանի այլ հետաքրքիր աղբյուրներ համացանցից։
Բացատրությունը գրեթե զրոյից գնաց։ Ավելին, պետք էր հասկանալ, թե որտեղ են դեդուկտիվ կերպով կտրվել ուսանողների հիմնական գիտելիքները։
Զանգվածներ -> Հիշողության հետ աշխատել (կոնստրուկտորներ) -> Հղումներ -> Ինչպես է աշխատում հիշողությունը -> Սկավառակներ -> Ի՞նչ է ֆիզիկական դրայվը -> Տվյալների երկուական ներկայացում...
Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

Ծրագրավորման վերաբերյալ հիմնարար փաստերի իմացության շատ ուժեղ վթարի թեստ: Ես այլևս ծրագրավորող չեմ, ես պատմաբան եմ։

Եվ այսպես, մի ​​քանի զույգերի համար անընդմեջ պատմական մարտեր են տեղի ունենում։ Մի օր բաժանմունքի քարտուղարը նայում է մեր աշխատասենյակ և տեսնելով խմբին, աչքերը լայնացնում է, հասակակիցներից նայում և փակում դուռը։ Ինչպես հետո ինձ ասացին, նա ցնցված էր, որ ԱՅՍ խումբը նստած էր այդքան հանգիստ և այդքան ուշադիր լսում ինձ... Էհ, հեշտ:

Լաբորատոր աշխատանքներ
Առաջին կիրառվող տեղեկատվությունը առաջին «լաբորատորիաներն» են: Ընդհանուր առմամբ, կիսամյակի ընթացքում խումբն անցել է 10 լաբորատոր աշխատանք։ Սկզբում պատրաստեցին ամենապարզ կոնսոլը ա + բ, և վերջինում նրանք գրել են, թեև կոնսոլային, բայց բավականին հետաքրքիր ծրագրեր, ինչպիսիք են կամայականորեն տրված որևէ ֆունկցիայի ինտեգրալի արժեքի հաշվարկը երեք մեթոդներից մեկի միջոցով. մոտավորապես նույն առաջադրանքները եղել են վերջնական հավաստագրման վրա՝ դասընթացի աշխատանք:

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

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

- ... Ինձ չի հետաքրքրում դիտել, որ ինչ-որ մեկը անում է քո աշխատանքը միայն այն անցնելու համար: Դուք կարող եք ծրագրավորող չլինեք, բայց կլինեք իմ դասերի մարդիկ պետք է.

Այն այսպիսի տեսք ուներ.

case отличник

Մի ուսանող նստում է ինձ հետ՝ հանձնելու իր աշխատանքը։
- Դու ինքդ արե՞լ ես:
- Այո:
- Ինչ է սա?
- *ճիշտ է պատասխանում*:
*Ես հարցնում եմ ևս մի քանի կետի մասին: Ճիշտ է պատասխանում*
- Ընդունված. Հիանալի:

case болтун

- Դու ինքդ արե՞լ ես:
- Այո:
- Ինչ է սա?
- *սխալ է պատասխանում / չի պատասխանում*:
*Ես հարցնում եմ ևս մի քանի կետի մասին: Նույն արդյունքը*
- Ընդունված չէ։ ՁԱԽՈՂՎԵՑ Սպասում եմ վերստուգմանը։

case хорошист

- Դու ինքդ արե՞լ ես:
- Այո:
- Ինչ է սա?
- *ճիշտ է պատասխանում, բայց ոչ վստահ, լողում է*:
*Ես հարցնում եմ ևս մի քանի կետի մասին: Նույն արդյունքը*
- Ընդունված. Լավ:

case ровныйТроечник

- Դու ինքդ արե՞լ ես:
- ոչ:
- Ինչո՞ւ:
- Դժվար: Նա ինձ օգնեց... *անկեղծորեն նշում է խմբի գերազանցիկ ուսանողի*
-Հասկացա՞ր։
-Այո, ես գրեթե ամեն ինչ հասկացա։

- Ինչ է սա?
- *ճիշտ է պատասխանում*:
*Ես հարցնում եմ ևս մի քանի կետի մասին: Պատասխանում է քիչ թե շատ ճիշտ, երբեմն լրիվ սխալ, նույնիսկ եթե այն 50/50 ճիշտ է և սխալ*
- Ընդունված. Լավ:

Մնացած բոլոր դեպքերը նկարագրելն անիմաստ է։ Այո, «լավ ուսանողը» կարող է դժգոհ լինել, որ «C» ուսանողը ստանում է նույն գնահատականը՝ հիմնված ազնվության վրա: Հետո ամեն ինչ կախված է տրամադրությունից։ Կամ ես խնդրում եմ «լավ աշակերտին» նայել հատակին, որովհետև «հիմա մի պտղունց խելք կթողնեմ», իսկ հետո կասեմ մոտեցման էությունը, նկարագրեմ, թե ինչն է կյանքում ավելի մեծ արժեք և կբացատրեմ. որ «C» ուսանողի համար շատ ավելի դժվար էր անցնել, քան նրա՝ «լավ ուսանողի» համար և այլն…
կամ, ինչպես մի անգամ արեց իմ ուսուցիչը, ես մի փոքրիկ ատամ կնկարեմ այս դժգոհ մարդու դիմաց օրագրի տուփի մեջ և հաջորդ անգամ անձամբ կավարտեմ նրա համար լաբորատոր աշխատանքը: Պարզապես. Ձեր ընկերներին «չմարելու» համար։

Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

Հաշվարկներ
Ուսումնական գործընթացը, ինչպես ամբողջ աշխարհը, բառիս բուն իմաստով խեղդվում է գնանշումների ու գնահատականների մեջ։
Ուսանողներն էլ են մարդիկ, սակայն, իմ կարծիքով, այստեղ էլ պետք է «թափահարվեր» «շրջանակը»։
Կիսամյակի ընթացքում բոլորին տրվել է բոնուսային առաջադրանք։ Գրանցվել համար Github.com, վերբեռնեք այնտեղ դատարկ C++ նախագիծ, կատարեք 2 թարմացում, կատարեք դրանք և մղեք դրանք։ Այս գործողությունների համար նշանակվել է 15, այո, այո, ոչ թե 4, ոչ 5, այլ 15: Երեքը հասկացան: Սա ինչ-որ կերպ հասկանալի էր ուսանողի հոգետիպին, բայց հետո կար մեկ այլ դեպք.
Մի անգամ մեր զույգին այնպես տեղափոխեցին, որ նա վերջինն էր, և նաև մի երկու պատուհանից։ Սակայն դրան դեռ 15 հոգի է եկել։ Ես չէի ուզում նոր թեմա բացատրել՝ ի պատիվ նման հերոսության, քանի որ մենք արդեն բավականին լավ առաջ ենք գնացել զուտ թեմաներով + հաջորդ թեման այնքան էլ պարզ չէր հոգնած ուղեղների համար (իմ և ուսանողների): Հետո որոշեցի խոսել փիլիսոփայության մասին։

— Հայտարարում եմ աննախադեպ առատաձեռնության ատրակցիոն։ Ինձ բոլորն ասում են, թե ինչ գնահատական ​​տամ նրան այսօրվա զույգին։
Բոլորը «Ա» էին ուզում:
«Մտածեք արդեն այնտեղ», - ասացի ես: Բոլորը ուրախ էին։
Լռություն
- ինչու՞ ոչ ոք չցանկացավ: 7-ku կամ 10-Կու?
Բոլորի աչքերը բացվեցին, և նրանք սկսեցին հիմար ժպտալ։
-Գրազ կգա՞ս: Ամսագրի՞ն: - հետևի գրասեղանից ձայն լսվեց.
- Այո Հեշտ! -Ասացի,-պայմաններով բլից եմ հայտարարում, ով իմ 10 հարցին պատասխանի, գրազ կգամ. 20-ին ամսագրին, առանց բռնելու, ով չի պատասխանում, նա է 10 - (մինուս տասը):

«Թիմը ոգևորվեց, սկսվեց բանավեճ», բոլորն ազնվորեն գնահատականներ էին վաստակել: Երկուսը կամավոր. Աննշան անճշտություններով նրանք հերթով 10 հարց տվեցին ստեկի, հերթի, կոնստրուկտորի, դեստրուկտորի, աղբահավաքի, ինկապսուլյացիայի, պոլիմորֆիզմի, հեշ ֆունկցիաների մասին...
Յուրաքանչյուրը նկարված էր ամսագրի մեջ 20... բայց ամսագրի ու գնահատականների նշանակությունն ընկավ բոլորի աչքում։ Հիմա ես ափսոսում եմ, որ չեմ հարցնում, թե արդյոք նրանք կցանկանան «կիսվել» իրենց գնահատականով ինչ-որ մեկի հետ։ Ինձ թվում է՝ կկիսվեին... Այսուհետ բոլորը գիտությամբ ու ազնվությամբ հանձնեցին «լաբորատորիան»։

Այս պահից ի վեր հայտնվեց լաբորատոր առաքման մեկ այլ տեսակ.


case честноНеЕгоНоОнПытался

- Դու ինքդ արե՞լ ես:
- ոչ:
- Ինչո՞ւ:
- Դժվար: Նա ինձ օգնեց... *անկեղծորեն նշում է խմբի գերազանցիկ ուսանողի*
-Հասկացա՞ր։
- Սերգեյ Նիկոլաևիչ, անկեղծ ասած, ես ոչինչ չեմ հասկանում, ուստի յուրաքանչյուր տողի կողքին մեկնաբանություններ էի գրում. լավ, դա իմ գործը չէ, ես տրակտորիստ կլինեմ:
- Ինչ է սա?
— *կարդում է տողի հակառակ մեկնաբանությունը*։
- ...
- ...
— Ո՞րն է տարբերությունը Belarus MTZ-ի և Don 500-ի և K700-ի միջև:
- ??!.. Առաջինը Մինսկում արտադրված անիվավոր տրակտոր է, որը հաճախ օգտագործվում է գյուղատնտեսական արտադրության թեթև և միջին տեսակների մեջ։ Այն նաև ունի փոքր անիվներ առջևում և մեծ անիվներ հետևում: Don 500-ը հիմնականում բերքահավաք է, իսկ K-700 Kirovets-ը խորհրդային ընդհանուր նշանակության արտաճանապարհային անիվավոր տրակտոր է, քաշում 5-րդ դասի:
- Ընդունված. Լավ (!!!):
-Շնորհակալություն, Սերգեյ Նիկոլաևիչ!!!

Իմ հայրենիքում TractorA-ի մասին խոսելը մոտավորապես նման է այստեղ SOLID-ի մասին խոսելուն:

Հանճարեղ
Իմ խմբում մի Հանճար կար։ Աշակերտը շատ ուշացել է հենց առաջին դասից և բոլորի հետ միասին գլուխկոտրուկը չի լրացրել։ Հետո նրան խնդրեցի անել այն, ինչ պլանավորել եմ բոլորի համար հաջորդ դասին՝ թղթի վրա գրի իր համար, թե ինչն է իրեն հետաքրքրում, ինչն է իրեն հետաքրքրում։ Արդյունքների համաձայն՝ «Genius»-ն ուներ 2-3 տող՝ «Ես գիտակցում եմ լինելու անիմաստությունը» նման մի բան...

...Օ, Աստված, իմ խմբում ես ունեմ երկրորդ Լաո Ցզին և Կոջիման մեկ անձի մեջ...
Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

Ի զարմանս ինձ, առաջին երկու դասերին նա իսկապես փայլուն պատասխանեց տերմինների վերաբերյալ հարցերին, բայց ազդեցությունը երկար չտևեց։ «Հանճարը» դադարեց հաճախել դասերին և հաջորդ անգամ եկավ միայն առաջին լաբորատոր աշխատանքն անցնելու, որը հաջողությամբ ավարտեց։ չի անցել օբյեկտիվ պատճառներով. Հետո բացակայելու պատճառով, բնականաբար, պարտքեր է կուտակել, որոնք, ինչպես ինքն էր կարծում. Ես ուղղակի պարտավոր էի նրան, այսպես ասած, «եղբայրական ձևով» հաշվել..
Զույգերի չներկայանալը + սրտի զարկերի հաճախականությունը հակասում էր իմ դասերին հաճախելու հաստատված սկզբունքներին: «Հանճարը» իրավիճակից դուրս գալու ընդամենը 2 ելք ուներ՝ վերականգնվել իրեն (ակնկալվող ուղին) կամ հրաժարվել դասերից և հուսալ դեկանատի կողմից տրված «C»-ի՝ ծույլից ազատվելու համար։
Դե, սա «Հանճար» է... պետք է անմիջապես «փայլուն» գործել։ Այս երիտասարդը չկարողացավ գտնել ավելի լավ բան, քան VK-ի ընդհանուր երկխոսության մեջ (որտեղ ես և այս խմբի բոլոր ուսանողներն էինք) գրել ինձ հասցեագրված հայհոյանքներով և վիրավորանքներով զայրացած տիրադ:

Հմմ... Հիասթափություն։
Ամենաուշագրավն այն էր, որ քոլեջի ղեկավարության կողմից պատժիչ գործողության ավարտից առաջ նա որոշեց ներողություն խնդրել ինձանից։ Ինչի համար? - Անկեղծորեն չեմ հասկանում: Այն ժամանակ ես վաղուց անկախ էի քննադատությունից, հատկապես նման անկեղծորեն հիմար քննադատությունից։ Իմ անձի վրա չի ազդվել, բայց գործընթացները գործընթացներ են, և որպես ուսուցիչ ես չէի կարող չզեկուցել դա: Ինչպես պարզվեց, ուսման ընթացքում նրա դեմ արդեն այնքան բողոքներ էին կուտակվել, որ այս դեպքը վերջինն էր։ Նրան վտարեցին։ Արհեստագործական ուսումնարանի վերջին կուրսից.
Երևի նա երկար ժամանակ է ինձ հետևում դիպուկահար հրացանի հայացքից, բայց, ճիշտն ասած, դա ինձ չի հետաքրքրում։
Էհ, հանճար, դու անսիրտ ես...

Վերջաբան
Անձամբ ինձ համար դասավանդման փորձը ամենալուսավորիչներից էր: Սա ինձ օգնեց ինստիտուտում սովորելուց հետո համախմբել ծրագրավորման իմ հիմնարար գիտելիքները: Ես ինձ վստահ էի զգում իմ ընտրած մասնագիտության մեջ (առկա մասնագիտությունների շարք): Հատկապես կարևոր է այն փաստը, որ «ամենանվայել խումբը» ինձ տոգորեց հարգանքով և ընկերասիրությամբ, սա շատ բան արժե: Ինձ հաջողվեց ճանապարհ գտնել դեպի իրենց ներքին նորարարները, փորձել եմ իրականություն սերմանել, այլ ոչ թե այս կարծրատիպային առաջնահերթությունները։ Ափսոս, որ մենք չհասանք կոդավորման «գլուխկոտրուկին». երբ բոլորը պետք է անեին կոդի մի մասը, և բոլոր մասերը միացնելով, մենք կստանայինք աշխատանքային մեծ ծրագիր...
Հուսով եմ, որ մի օր նրանցից յուրաքանչյուրը կզգա դա... բայց առայժմ ստորև ներկայացված են 2 տարի անց մի քանի ուսանողների ակնարկներով սքրինշոթներ:

Ցանկացած ծրագրավորման հիմքը... հանելուկների վրա

Նրանցից որևէ մեկի համար ծրագրավորողի կարիերայի հաջողության մասին եզրակացություններ անելը վաղ է, քանի որ այժմ այս խմբի մեծ մասը սովորում է համալսարանում: Ժամանակը ցույց կտա։

Հուսով եմ, որ հոդվածը օգտակար էր: Շնորհակալություն ուշադրության համար!
Ստեղծագործական հաջողություն և դրական տրամադրություն, գործընկերներ։

Source: www.habr.com

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