코딩 교육이나 메이커 교육에 관심이 있다면 ‘오브젝트(Object)’와 ‘스프라이트(Sprite)’라는 말을 한 번쯤은 들어보셨을 겁니다. 두 용어는 비슷해 보이지만, 사실 조금씩 다른 맥락에서 사용됩니다.
객체지향 프로그래밍에서의 오브젝트
먼저 ‘오브젝트(Object)’는 원래 객체지향 프로그래밍(OOP, Object-Oriented Programming)에서 중요한 개념입니다. 여기서 오브젝트란 데이터(속성)와 메소드(동작)를 하나로 묶은 단위를 뜻합니다. 예를 들어, 자동차라는 오브젝트가 있다면 ‘색상’, ‘속도’ 같은 데이터와 ‘달리다’, ‘멈추다’ 같은 메소드를 함께 가집니다.
즉, 오브젝트는 프로그램 안에서 현실 세계의 사물이나 개념을 코드로 표현하는 하나의 방법입니다. 이 덕분에 코드를 더 직관적으로 설계하고, 유지보수를 쉽게 할 수 있죠.
엔트리·스크래치에서의 오브젝트
엔트리나 스크래치와 같은 블록 코딩 플랫폼에서는 오브젝트가 조금 더 직관적인 의미로 쓰입니다. 대표적인 예로, 엔트리에서는 ‘오브젝트’가 캐릭터, 배경, 버튼 등 ‘화면에 보이는 요소 전체’를 가리킵니다.
예를 들어 엔트리에서 강아지 캐릭터를 하나 만들면, 이 강아지는 이미지, 움직임, 소리, 그리고 그 캐릭터에 연결된 스크립트(블록 코드)까지 포함한 하나의 오브젝트가 됩니다. 따라서 엔트리에서 오브젝트는 ‘모습(코스튬) + 소리 + 스크립트’를 포함한 프로그램의 기본 단위라고 할 수 있습니다.
스크래치에서의 스프라이트
반면, 스크래치(Scratch)에서는 비슷한 개념이 ‘스프라이트(Sprite)’라는 이름으로 불립니다. 스프라이트는 캐릭터나 사물처럼 무대에서 움직이고 상호작용할 수 있는 모든 요소를 가리킵니다. 스프라이트에도 다양한 코스튬(모습), 소리, 그리고 행동을 지정하는 스크립트가 연결됩니다.
즉, 스크래치에서의 스프라이트는 엔트리에서의 오브젝트와 거의 같은 역할을 합니다. 다만 용어만 다르고, 기본적인 개념은 동일하다고 볼 수 있습니다.
오브젝트와 스프라이트의 공통점과 차이점
정리하자면, 두 용어는 모두 ‘프로그램의 기본 단위’를 가리키지만 쓰이는 맥락이 조금 다릅니다.
- 공통점: 둘 다 그림(코스튬), 소리, 그리고 동작(스크립트)을 포함한다.
- 차이점: 엔트리는 ‘오브젝트’라는 용어를 쓰고, 스크래치는 ‘스프라이트’라는 용어를 쓴다.
- 원래 프로그래밍에서 오브젝트는 데이터와 메소드를 묶은 추상적 개념인 반면, 블록 코딩에서는 좀 더 시각적이고 직관적인 단위로 쓰인다.
어린이를 위한 친절한 프로그래밍 입문
이처럼 오브젝트나 스프라이트 개념은 아이들이 코딩을 처음 배울 때도 매우 중요합니다. ‘무언가를 만든다’는 막연한 생각보다는, 내가 만든 캐릭터(오브젝트/스프라이트)에 소리를 붙이고, 움직임을 설정하고, 대사를 추가하면서 자연스럽게 프로그래밍의 기본 구조를 배우게 됩니다.
그래서 엔트리와 스크래치는 누구나 쉽게 코딩을 시작할 수 있도록 오브젝트(또는 스프라이트)를 중심으로 설계되어 있습니다. 덕분에 어려운 코드 대신 블록을 끌어다 붙이며 논리 구조를 익힐 수 있죠.
엔트리와 스크래치 활용 예시
그럼 실제로 오브젝트와 스프라이트를 활용하면 어떤 걸 만들 수 있을까요? 아래 예시를 참고해보세요.
1️⃣ 엔트리로 강아지 산책 애니메이션 만들기
엔트리에서는 강아지 오브젝트를 선택하고, 배경으로 공원을 불러올 수 있습니다. 강아지 오브젝트에 ‘앞으로 10칸 이동하기’ 블록을 반복 연결하면, 강아지가 공원 배경을 따라 걷는 모습을 만들 수 있죠. 여기에 ‘멍멍!’ 소리 블록을 추가하면, 더 생생한 강아지 산책 애니메이션이 완성됩니다.
2️⃣ 스크래치로 고양이 잡기 게임 만들기
스크래치에서는 스프라이트로 고양이 캐릭터를 선택하고, 마우스를 따라 움직이는 코드를 작성해보세요. 그리고 새로운 스프라이트로 생선을 추가해 고양이가 생선을 잡으면 점수가 올라가도록 할 수 있습니다. 아이들은 ‘고양이가 생선을 잡으면 소리가 나게 하기’, ‘점수판 스프라이트 만들기’ 같은 다양한 기능을 추가하면서 코딩의 원리를 배울 수 있습니다.
3️⃣ 나만의 동화책 만들기
엔트리와 스크래치 모두 여러 개의 오브젝트(또는 스프라이트)를 한 장면에 배치할 수 있습니다. 예를 들어 공주, 왕자, 용 스프라이트를 넣고 각 캐릭터에게 대사와 움직임을 설정하면 나만의 인터랙티브 동화책이 완성됩니다. 대사가 끝나면 다음 장면으로 넘어가는 코드를 만들어서 이야기의 흐름을 이어갈 수도 있죠.
작은 프로그램으로 시작해보세요
처음부터 거창한 프로그램을 만들 필요는 없습니다. 단 하나의 오브젝트(스프라이트)라도 움직임과 소리를 주면, 아이들은 성취감을 느끼고 재미를 배울 수 있습니다. 엔트리와 스크래치가 인기 있는 이유도 바로 여기에 있습니다. 쉽고 재미있게 시작할 수 있으니까요!
학부모 가이드: 우리 아이 첫 코딩, 어떻게 도와줄까?
처음부터 아이 혼자 하라고 하면 어렵고 금방 흥미를 잃을 수 있어요. 처음 며칠은 부모님이 옆에서 함께 앉아 캐릭터를 선택하고 블록을 끌어다 붙이는 걸 같이 해보세요. “어떤 소리를 넣어볼까?”, “이 캐릭터는 어디로 가면 좋을까?” 질문하며 상상력을 키워주는 게 중요합니다.
스크래치와 엔트리는 무료이기 때문에 별도의 준비물이 필요하지 않고, 노트북이나 태블릿만 있으면 바로 시작할 수 있습니다. 너무 완벽한 결과를 기대하기보다는 아이가 직접 스프라이트를 선택하고, 동작을 실행해보고, 결과를 보고 웃는 그 과정이 코딩 공부의 시작이랍니다.
교사 활용 팁: 수업에 바로 적용하기
엔트리와 스크래치는 초등 교실에서 소프트웨어 수업, 메이커 수업, 창의융합 수업에 모두 활용됩니다. 짧은 시간 안에 한두 개의 오브젝트(스프라이트)를 만들고, 발표로 이어가는 활동이 좋습니다.
- 간단한 애니메이션 만들기: 캐릭터 등장 - 대사 - 움직임
- 음악과 함께하는 공연 스프라이트 만들기
- 간단한 퀴즈 게임 제작 후 서로 문제 풀기
학생들이 블록 코딩에 익숙해지면, 팀을 나눠 미니 게임 만들기, 스토리텔링 활동으로 확장할 수 있습니다. 스크래치 공식 사이트에는 전 세계 교사들이 만든 수업 예시도 많아 큰 도움이 됩니다.
무료 자료 추천
아래 사이트들은 누구나 무료로 사용할 수 있고, 엔트리와 스크래치를 처음 배우는 학부모와 교사에게 추천할 만한 자료입니다.
- Scratch 공식 사이트 : 스프라이트 예제와 전 세계 사용자들의 작품을 볼 수 있습니다.
- 엔트리 공식 사이트 : 한국어로 되어 있어 처음 배우는 아이들에게 적합합니다.
- Common Sense Education : 영어 사이트지만 디지털 리터러시 수업 자료가 풍부합니다.
- Pixabay : 무료 이미지 사이트로 배경, 캐릭터 자료를 만들어 활용할 때 유용합니다.
무료 자료를 잘 활용하면 캐릭터나 배경을 다양하게 바꿔 아이들이 지루하지 않게 배울 수 있습니다!