수학교육용 소프트웨어 알지오매스(AlgeoMath)의 알지오도형에는 블록코딩 도구가 있다. 알지오매스의 블록코딩은 점, 선분 및 직선, 원, 거북 등을 객체로 하여 이동, 반복, 연산, 꾸밈 등의 명령을 통해 수학적 사고를 적용하고 어떤 결과를 산출하는 의미 있는 활동이다.

블록코딩의 뜻

시각 프로그래밍 언어인 스크래치(Scratch)[각주:1]는 아이들에게 컴퓨터 코딩[각주:2]에 관한 경험을 제공하기 위해 텍스트를 이용한 프로그래밍 환경 대신에 드래그 앤드 드롭[각주:3]이라는 익숙한 사용자 환경을 이용하여 블록(Block)을 쌓아 코딩하는 프로그래밍 언어 및 환경을 구성하였다. 따라서 문법에 맞춘 텍스트를 입력하여 프로그래밍하는 대신에 그래픽 환경에서 블록과 같은 시각적 대상을 연결하는 프로그래밍 언어 및 환경을 일컬어 블록코딩이라 한다.

블록코딩과 코딩 비교

블록코딩 코딩
  • 자신의 수학 지식을 절차적 지식의 형태로 변환하는 과정
  • 블록을 문법에 맞게 연결하여 코딩
  • 수학적 사고를 적용하고 어떤 결과를 산출하는 의미 있는 활동
  • 자신의 수학 지식을 절차적 지식의 형태로 변환하는 과정
  • 텍스트를 문법에 맞게 작성하여 코딩
  • 수학적 사고를 적용하고 어떤 결과를 산출하는 의미 있는 활동

블록코딩을 통한 수학적 사고력 향상

교육 현장에서 누구나 사용할 수 있는 소프트웨어인 알지오매스의 블록코딩에 의한 프로그래밍을 수업에서 활용함으로써, 학습자에게 수학적 사고가 절차적 형태로 변환되어 역동적으로 시각화되는 과정을 경험하는 기회를 제공하여 학습자가 자신의 사고와 행동을 반성(Self-reflection)하여 더 높은 사고 수준으로 발달하는 데 즉, 학습자의 수학적 사고력을 향상하는 데 이바지할 수 있다.

프로그래밍을 통해 사고력 중심의 수학교육 추구

공학적 도구는 사고력 향상을 목적으로 하는 교수-학습 활동에서 산술적인 계산과 대수적인 문자식의 처리를 신속하게 수행해 줌으로써 본질적인 사고력 중심의 교수-학습 활동에 전념할 수 있게 해 준다. 특히, 컴퓨터 프로그래밍 활동은 학생이 가지고 있는 수학 지식을 절차적 지식 형태로 변환하는 과정으로서, 학생 자신의 수학적 사고를 구체적으로 적용하여 어떤 결과를 산출하는 의미 있는 활동이다.

《황혜정 외 5인(2012). 수학교육학신론(p.352). 문음사.》

프로그래밍의 오류수정 활동을 통해 수학적 사고력 향상

컴퓨터 프로그래밍에서의 오류수정 활동은 수학적 사고력 향상을 위한 기회로 활용될 수 있다. 오류는 예상하지 못한 곳에서 일어나고 그 오류를 제거하기 위해 반드시 프로그램에 수정을 해야 하므로, 학생 자신의 수학적 사고와 그것을 절차적 형태의 프로그램으로 변환하는 과정을 다시 한 번 반성하는 기회를 제공한다. 결국, 이는 자신의 사고와 행동을 다시 한 번 반성해 봄으로써 더 높은 사고 수준으로의 발달을 모색하는 반영적 추상화 활동에 기여하고 수학적 사고력을 향상시킨다고 할 수 있다.

《신동선, 류희찬(1998). 수학교육과 컴퓨터(p.5-6). 경문사.》
  1. 스크래치에서는 스프라이트(Sprite)라는 객체가 명령을 수행하는 주된 역할을 한다. 이런 면은 거북을 객체로 하는 동적 프로그래밍 언어 로고(Logo)에 영향을 받았다. [본문으로]
  2. 코딩(Coding)은 컴퓨터 프로그래밍을 일컫는 말이다. [본문으로]
  3. Drag and drop. 끌어서 놓기. [본문으로]