Вось навошта патрэбна школьная алгебра

Звычайна на пытанне "навошта патрэбна матэматыка?" адказваюць нешта накшталт "гімнастыка для розуму". На мой погляд, гэтага тлумачэння недастаткова. Калі чалавек выконвае фізічныя практыкаванні, то ён ведае дакладную назву груп мышцаў, якія пры гэтым развіваюцца. Але размовы пра матэматыку застаюцца занадта абстрактнымі. Якія менавіта «цягліцы розуму» трэніруюцца школьнай алгебрай? Яна ж зусім не падобная на сапраўдную матэматыку, у якой робяцца вялікія адкрыцці. Што дае ўменне шукаць вытворную нейкіх заблытаных функцый?

Выкладанне праграмавання слабым студэнтам прывяло мяне да больш дакладнага адказу на пытанне "навошта?". У артыкуле я пастараюся данесці яго вам.

Вось навошта патрэбна школьная алгебра
У школе даволі шмат часу прысвячаецца пераўтварэнню і спрашчэнню выразаў. Напрыклад: 81×2+126xy+49y2 трэба пераўтварыць як (9x+7y)2.

У дадзеным прыкладзе ад вучня чакаюць, што ён успомніць формулу квадрата сумы.

Вось навошта патрэбна школьная алгебра

У больш складаных выпадках, атрыманае выраз можна выкарыстоўваць для іншых пераўтварэнняў. Напрыклад:

Вось навошта патрэбна школьная алгебра

пераўтворыцца спачатку ў

Вось навошта патрэбна школьная алгебра

а потым, з удакладненнем (a + 2b) != 0, атрымліваецца так

Вось навошта патрэбна школьная алгебра

Каб дасягнуць такога выніку, вучню трэба распазнаць у зыходным выразе і потым прымяніць тры формулы:

  • Квадрат сумы
  • Рознасць квадратаў
  • Скарачэнне множнікаў звычайнага дробу

У звычайнай школе на алгебры амаль увесь час мы займаліся вось такім пераўтварэннем выразаў. У ВНУ на вышэйшай матэматыцы нічога значна не змянілася. Нам расказалі як браць вытворныя (інтэгралы і да т.п.) і выдалі тону задач. Ці было гэта карысна? На мой погляд - так. У выніку выканання такіх практыкаванняў:

  1. Вывастрыўся навык пераўтварэння выразаў.
  2. Развілася ўважлівасць да дробязяў.
  3. Быў сфарміраваны ідэал - лаканічны выраз, да якога можна імкнуцца.

На мой погляд, наяўнасць такога ідэалу, якасці і навыку вельмі карысна ў штодзённай працы распрацоўніка. Бо спрасціць выраз, па сутнасці, значыць змяніць яго структуру з мэтай аблегчыць разуменне, не закранаючы сэнсу. Вам гэта нічога не нагадвае?

Гэта практычна вызначэнне рэфактарынгу з аднайменнай кнігі Марціна Фаулера.

У сваёй працы, аўтар фармулюе іх наступным чынам:

Рэфактарынг (Refactoring) (сут.): змена ва ўнутранай структуры праграмнага забеспячэння, якое мае мэтай палегчыць разуменне яго працы і спрасціць мадыфікацыю, не закранаючы назіраных паводзін.

Вырабляць рэфакторынг (Refactor) (глаг.): змяняць структуру праграмнага забеспячэння, ужываючы шэраг рэфакторынгаў, не закранаючы яго паводзін.

У кнізе даюцца "формулы", якія трэба распазнаць у зыходным кодзе і правілы іх пераўтварэнні.

У якасці найпростага прыкладу, прывяду «ўвядзенне якая тлумачыць зменнай» з кнігі:

if ( (platform.toUpperCase().indexOf(“MAC”) > -1 ) &&
    (browser.toUpperCase().indexOf(“IE”) > -1 )&&
    wasInitialized() && resize > 0 ) {
    // do something
}

Часткі выраза трэба запісаць у зменную, імя якой тлумачыць яго прызначэнне.

final boolean isMacOS = platform.toUpperCase().indexOf(“MAC”) > -1;
final boolean isIEBrowser = browser.toUpperCase().indexOf(“IE”) > -1;
final boolean isResized = resize > 0;
if(isMacOS && isIEBrowser && wasInitialized() && isResized) {
   // do something
}

Уявіце сабе чалавека, які не можа спрашчаць алгебраічныя выразы з выкарыстаннем формулы квадрата сумы і рознасці квадратаў.

Як вы думаеце, ці зможа гэты чалавек рэфактарыць код?

Ці зможа ён наогул напісаць зразумелы іншым людзям код, калі ў яго не сфарміраваны ідэал гэтай самай лаканічнасці? На мой погляд - не.

Аднак у школе вучацца ўсё, а праграмістамі становіцца меншасць. Ці карысны навык пераўтварэнні выразаў для звычайных людзей? Я думаю так. Толькі навык прымяняецца ў больш абстрактным выглядзе: трэба ацаніць сітуацыю і выбраць далейшае дзеянне так, каб наблізіцца да мэты. У педагогіцы гэты феномен называецца перанос (навыку).

Самыя яркія прыклады ўзнікаюць пры бытавым рамонце падручнымі сродкамі, "калгасным" спосабам. У выніку з'яўляюцца тыя самыя "фішкі" і лайфхакі, адзін з якіх намаляваны на КПДВ. У аўтара ідэі быў кавалак дрэва, провад і чатыры шрубы. Успомніўшы шаблон патрона для лямпы, ён сабраў з іх самаробны патрон.

Нават пры яздзе на аўтамабільным транспарце, кіроўца ўвесь час займаецца распазнаннем шаблонаў у навакольным свеце і выкананнем адпаведных манеўраў, каб дабрацца да мэты.

Калі ты памёр, ты пра гэта не ведаеш, толькі іншым цяжка. Тое самае, калі ты не асвоіў матэматыку…

Што ж адбываецца, калі чалавеку не ўдалося асвоіць пераўтварэнне выразаў? Час ад часу я вяду індывідуальныя заняткі са студэнтамі, у якіх у школе было блага з матэматыкай. Як правіла, яны спрэс затрымаюцца на тэме пра цыклы. Настолькі, што з імі даводзіцца займацца "алгебрай", але на мове праграмавання.
Гэта адбываецца таму, што пры напісанні цыклаў асноўны прыём як раз і заключаецца ў тым, каб пераўтварыць групу аднолькавых выразаў.

Дапушчальны вынік працы праграмы павінен выглядаць так:

Увядзенне
кіраўнік 1
кіраўнік 2
кіраўнік 3
кіраўнік 4
кіраўнік 5
кіраўнік 6
кіраўнік 7
Заключэнне

Трывіяльная праграма для дасягнення гэтага выніку выглядае так:

static void Main(string[] args)
{
    Console.WriteLine("Введение");
    Console.WriteLine("Глава 1");
    Console.WriteLine("Глава 2");
    Console.WriteLine("Глава 3");
    Console.WriteLine("Глава 4");
    Console.WriteLine("Глава 5");
    Console.WriteLine("Глава 6");
    Console.WriteLine("Глава 7");
    Console.WriteLine("Заключение");
}

Але гэтае рашэнне далёка ад лаканічнага ідэалу. Спачатку ў ім трэба знайсці паўтаральную групу дзеянняў і потым пераўтварыць. У выніку атрымаецца такое рашэнне:

static void Main(string[] args)
{
    Console.WriteLine("Введение");
    for (int i = 1; i <= 7; i++)
    {
        Console.WriteLine("Глава " + i);
    }
    Console.WriteLine("Заключение");
}

Калі ж чалавек у свой час не асвоіў матэматыку, то і выконваць падобныя пераўтварэнні ён не зможа. У яго проста не будзе які адпавядае навыку. Менавіта таму тэма цыклаў - першая перашкода ў навучанні распрацоўніка.

Падобныя праблемы ўзнікаюць і ў іншых абласцях. Калі чалавек не ўмее выкарыстоўваць падручную прыладу, то ён не зможа выяўляць бытавую кемлівасць. Злыя мовы будуць казаць, што рукі не з таго месца растуць. На дарозе гэта праяўляецца ў няўменні правільна ацаніць сітуацыю і абраць манеўр. Што часам можа прывесці да трагічных наступстваў.

Высновы:

  1. Школьная і матэматыка ВНУ нам патрэбна для таго, каб мы ўмелі рабіць свет лепш тымі сродкамі, якія ў нас ёсць.
  2. Калі вы вучыцеся і ў вас узнікаюць праблемы ў вывучэнні цыклаў, паспрабуйце вярнуцца да вытокаў - школьнай алгебры. Вазьміце задачнік для 9 класа і парашайце прыклады з яго.

Крыніца: habr.com

Дадаць каментар