Por iso é necesaria a álxebra do instituto

Normalmente a pregunta "por que necesitamos matemáticas?" Responden algo así como "ximnasia para a mente". Na miña opinión, esta explicación non é suficiente. Cando unha persoa realiza exercicio físico, coñece o nome exacto dos grupos musculares que se desenvolven. Pero as conversas sobre matemáticas seguen sendo demasiado abstractas. Que "músculos mentais" específicos adestra o álxebra escolar? Non se parece para nada ás matemáticas reais, nas que se fan grandes descubrimentos. Que dá a capacidade de buscar a derivada dalgunhas funcións intrincadas?

Ensinar programación a estudantes débiles levoume a unha resposta máis precisa á pregunta "por que?" Neste artigo tratarei de transmitilo.

Por iso é necesaria a álxebra do instituto
Na escola dedícase bastante tempo a transformar e simplificar expresións. Por exemplo: 81×2+126xy+49y2 hai que converterse como (9x+7y)2.

Neste exemplo, espérase que o alumno recorde a fórmula para o cadrado da suma

Por iso é necesaria a álxebra do instituto

En casos máis complexos, a expresión resultante pódese usar para outras transformacións. Por exemplo:

Por iso é necesaria a álxebra do instituto

convértese primeiro en

Por iso é necesaria a álxebra do instituto

e despois, coa aclaración (a + 2b) != 0, resulta así

Por iso é necesaria a álxebra do instituto

Para acadar este resultado, o alumno debe recoñecer na expresión orixinal e despois aplicar tres fórmulas:

  • Cadrado da suma
  • Diferenza de cadrados
  • Reducir os factores dunha fracción común

Na escola de álxebra, case todo o tempo pasamos transformando expresións coma esta. Nada cambiou significativamente nas matemáticas superiores na universidade. Dixéronnos como tomar derivadas (integrais, etc.) e propuxéronnos un montón de problemas. Foi útil? Na miña opinión - si. Como resultado da realización destes exercicios:

  1. Perfeccionouse a habilidade de transformar expresións.
  2. Desenvolveuse a atención aos detalles.
  3. Formouse un ideal: unha expresión lacónica á que se pode esforzar.

Na miña opinión, ter tal ethos, calidade e habilidade é moi útil no traballo diario dun programador. Despois de todo, simplificar unha expresión significa esencialmente cambiar a súa estrutura para facilitar a comprensión sen afectar o significado. Isto che lembra a algo?

Esta é practicamente a definición de refactorización do libro homónimo de Martin Fowler.

Na súa obra, o autor formulaos do seguinte xeito:

Refactorización (n): un cambio na estrutura interna do software destinado a facilitar a súa comprensión e modificación sen afectar o comportamento observable.

Refactorización (verbo): cambia a estrutura do software aplicando unha serie de refactorizacións sen afectar o seu comportamento.

O libro dá "fórmulas" que deben ser recoñecidas no código fonte e as regras para convertelas.

Como exemplo sinxelo, darei a "introdución dunha variable explicativa" do libro:

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

Partes da expresión deben escribirse nunha variable cuxo nome explique o seu propósito.

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
}

Imaxina unha persoa que non pode simplificar expresións alxébricas usando a fórmula de suma ao cadrado e diferenza de cadrados.

Cres que esta persoa pode refactorizar o código?

Será capaz de escribir código que outras persoas poidan entender se non formou o ideal desta mesma brevidade? Na miña opinión, non.

Non obstante, todos van á escola e unha minoría convértense en programadores. É útil a habilidade de conversión de expresións para a xente común? Eu creo que si. Só a habilidade se aplica dunha forma máis abstracta: cómpre avaliar a situación e escoller outra acción para achegarse ao obxectivo. En pedagoxía este fenómeno chámase transferencia (habilidade).

Os exemplos máis rechamantes xorden durante as reparacións domésticas mediante medios improvisados, o método da "granxa colectiva". Como resultado, aparecen eses mesmos "trucos" e trucos de vida, un dos cales aparece representado no KPDV. O autor da idea tiña un anaco de madeira, arame e catro parafusos. Lembrando o modelo do enchufe da lámpada, montou con eles un enchufe caseiro.

Mesmo cando conduce un vehículo, o condutor está constantemente implicado en recoñecer patróns no mundo que o rodea e executar as manobras adecuadas para chegar ao seu destino.

Cando morres, non o sabes, só é difícil para os demais. É o mesmo cando non dominas matemáticas...

Que pasa se unha persoa non domina a transformación das expresións? De cando en vez, dou clases individuais a estudantes que eran malos en matemáticas na escola. Como regra xeral, quedan completamente atrapados no tema dos ciclos. Tanto é así que hai que facer “álxebra” con eles, pero nunha linguaxe de programación.
Isto ocorre porque ao escribir bucles, a técnica principal é transformar un grupo de expresións idénticas.

Digamos que o resultado do programa debería verse así:

Introdución
Capítulo 1
Capítulo 2
Capítulo 3
Capítulo 4
Capítulo 5
Capítulo 6
Capítulo 7
Conclusión

Un programa trivial para conseguir este resultado é o seguinte:

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("Заключение");
}

Pero esta solución dista moito de ser un ideal lacónico. Primeiro cómpre atopar un grupo repetido de accións nel e despois convertelo. A solución resultante terá o seguinte aspecto:

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

Se unha persoa non dominou as matemáticas nalgún momento, entón non poderá realizar tales transformacións. Simplemente non terá a habilidade adecuada. É por iso que o tema dos bucles é o primeiro obstáculo na formación dun programador.

Problemas semellantes xorden noutras áreas. Se unha persoa non sabe como usar as ferramentas á man, entón non poderá mostrar o enxeño diario. As malas linguas dirán que as mans están crecendo dende o lugar equivocado. Na estrada, isto maniféstase na incapacidade de avaliar correctamente a situación e escoller unha manobra. O que ás veces pode levar a tráxicas consecuencias.

Conclusións:

  1. Necesitamos matemáticas escolares e universitarias para facer do mundo un lugar mellor cos medios que temos.
  2. Se es estudante e tes problemas para aprender ciclos, intenta volver ao básico: álxebra escolar. Colle un libro de problemas para 9º e resolve exemplos del.

Fonte: www.habr.com

Engadir un comentario