Մի դիտարկում եմ արել՝ երբ երեխաները (և ոչ միայն) սովորում են ծրագրավորման հիմունքները, ամենադժվար ընկալվող բանը ֆունկցիաներն են։ Ոչ թե ստանդարտ գրադարաններում գտնվող ֆունկցիաները, այլ այն ֆունկցիաները, որոնք իրենք պիտի ստեղծեն որևէ խնդիր ավելի էֆեկտիվ լուծելու համար։ Կուզեմ այս գաղափարի հաստատում կամ մերժում ստանալ ընթերցողից, ով դասավանդման փորձ ունի ․․․ Իմ զինանոցում մի քանի մեթոդ և մետաֆոր կա, որոնք ես օգտագործում եմ երբ փորձում եմ ֆունկցիաների գաղափարը, օգտագործումը և օգտակարությունը ցույց տալ։ 1․ Ֆունկցիաները որպես պրոցեդուրաներ կամ մոդուլներ Այս մոտեցումը ցուցադրելու համար նախ լուծում եմ որևէ խնդիր առանց ֆունկցնարի օգտագործման, իհարկե երկար է ստացվում ․․․ ապա ցույց եմ տալիս նույն խնդրի լուծումը ամբողջական ծրագրային կոդը տրոհելու միջոցով և դրա տարբեր մասերից ֆունկցիաներ սարքելու եղանակով։ Հույս ունենալով, որ ավելի կարճ ծրագիրը գրավիչ կլինի։ Զուգահեռ պատմում եմ, որ ինչպես քաղաքականության մեջ, այնպես էլ ծրագրավորման ժամանակ աշխատում է «բաժանիր և տիրիր» սկզբունքը։ Այստեղ կարելի է նաև մոդուլյարության մասին խոսել։ 2․ Թույլատրում եմ գնալ երկար