KR102606891B1 - 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법 - Google Patents

게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법 Download PDF

Info

Publication number
KR102606891B1
KR102606891B1 KR1020230071159A KR20230071159A KR102606891B1 KR 102606891 B1 KR102606891 B1 KR 102606891B1 KR 1020230071159 A KR1020230071159 A KR 1020230071159A KR 20230071159 A KR20230071159 A KR 20230071159A KR 102606891 B1 KR102606891 B1 KR 102606891B1
Authority
KR
South Korea
Prior art keywords
node
game content
coding
nodes
programming language
Prior art date
Application number
KR1020230071159A
Other languages
English (en)
Inventor
강연구
Original Assignee
강연구
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 강연구 filed Critical 강연구
Priority to KR1020230071159A priority Critical patent/KR102606891B1/ko
Application granted granted Critical
Publication of KR102606891B1 publication Critical patent/KR102606891B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/69Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Technology (AREA)
  • Educational Administration (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템은 코딩하는 데 필요한 기능을 가진 기능성 블록으로 이루어진 노드들을 생성하여 사용자 단말기의 화면에 표시하는 노드 생성부; 상기 사용자 단말기의 조작에 따라 상기 노드들을 선으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현하는 노드 코딩부; 및 상기 노드들의 각 기능을 상기 선으로 연결된 순서에 기반하여 분석하고, 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드들의 각 기능에 해당하는 결과를 출력하는 노드 실행부를 포함한다.

Description

게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법{CODING EDUCATION SYSTEM AND METHOD USING FLOW-BASED EDUCATIONAL PROGRAMMING LANGUAGE COMBINED WITH GAME CONTENTS}
본 발명의 실시예들은 코딩 교육 시스템 및 방법에 관한 것으로, 더욱 상세하게는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법에 관한 것이다.
컴퓨터 프로그램을 수행하는 절차에 관한 명령어 모음을 코드라고 하며, 좁은 의미로 이러한 코드를 입력하는 행위를 코딩이라 한다. 그러나, 코딩은 프로그램을 구상하고 문제 해결을 위한 절차와 과정에 관한 알고리즘을 작성하는 것을 포함하는 의미로 사용되며, 컴퓨터 프로그래밍이라고도 한다.
근래에 디지털 지식 정보화 시대를 맞아, 코딩 교육은 컴퓨터 프로그래밍을 전문으로 하는 사용자뿐만 아니라, 초등학교에서부터 문제 해결 능력을 배양하기 위한 교과 과정으로 사용되고 있다.
종래의 코딩 교육은 소프트웨어 기반으로 이루어지고 있다. 예를 들어, 화면상에 출발점과 종료점을 갖는 경로와 같은 코딩 미션 정보와, 개별 명령어에 해당하는 복수의 아이콘이 디스플레이되고, 사용자가 코딩 미션 정보에 맞게 마우스를 통해 아이콘을 드래그하는 방식으로 이루어지고 있다.
그러나 초, 중등 코딩 교육이 의무화됐지만 코딩 교사는 이에 비해 턱없이 부족한 현실이다. 또한 코딩 교사들에게는 코딩 교육의 선택지가 현재 엔트리, 스크래치 정도로 매우 한정돼 있다. 다양한 솔루션들이 많이 존재하지만 교사 친화적이지 않거나, 교사 친화적인 경우에는 학생들에게 즐거움을 선사하지 못하고 있다.
특히나 정부의 현 기조에 따르면, 학생들의 교육용 언어(Educational Program Language, 이하 EPL)는 체험, 놀이 위주로 개념을 이해하기 위해 존재해야 한다고 하지만 체험과 놀이는 사라지고 교육적인 측면, 특히나 코딩 사교육만 크게 증가하고 있는 추세이다.
따라서 교사에게 친화적이고 학생들에게는 새로운 경험의 에듀 게임을 선사할 수 있는 온라인 플랫폼을 제공함으로써 교사들은 아이들이 정말 즐거워하는 솔루션을 손쉽게 아이들에게 제공할 수 있는 기술의 개발이 필요한 실정이다.
관련 선행기술로는 대한민국 등록특허공보 제10-2061786호(발명의 명칭: 코딩블록을 이용한 코딩교육 방법, 공고일자: 2020.01.02.)가 있다.
본 발명의 일 실시예는 흐름 기반 비주얼 프로그래밍 언어를 교육 목적에 맞게 재가공하여 코딩 교육에 활용함으로써 알고리즘을 구성하는 능력을 효과적으로 기를 수 있으며, 코딩과 자연스럽게 어울리는 게임 콘텐츠로 인해 코딩에 대한 흥미를 올릴 수 있는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법을 제공한다.
본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제(들)로 제한되지 않으며, 언급되지 않은 또 다른 과제(들)은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템은 코딩하는 데 필요한 기능을 가진 기능성 블록으로 이루어진 노드들을 생성하여 사용자 단말기의 화면에 표시하는 노드 생성부; 상기 사용자 단말기의 조작에 따라 상기 노드들을 선으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현하는 노드 코딩부; 및 상기 노드들의 각 기능을 상기 선으로 연결된 순서에 기반하여 분석하고, 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드들의 각 기능에 해당하는 결과를 출력하는 노드 실행부를 포함한다.
본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템은 여러 명 동시 접속이 가능한 게임 콘텐츠를 상기 프로그래밍 언어와 결합하여 제공하되, 상기 사용자 단말기의 조작에 따라 상기 게임 콘텐츠가 상기 노드들 중 어느 하나와 선으로 연결되는 경우, 상기 게임 콘텐츠의 업그레이드를 진행하는 게임 콘텐츠 연동부를 더 포함할 수 있다.
상기 게임 콘텐츠 연동부는 상기 게임 콘텐츠와 선으로 연결된 해당 노드의 출력 결과를 상기 게임 콘텐츠에 입력하여 상기 게임 콘텐츠의 업그레이드를 진행할 수 있다.
상기 게임 콘텐츠의 업그레이드는 공격 기술을 포함하고, 상기 게임 콘텐츠 연동부는 상기 공격 기술과 관련된 스킬의 속성값을 수정할 수 있는 기능을 가진 노드인 스킬 노드를 이용하여 상기 공격 기술을 제작하며, 상기 게임 콘텐츠를 이용한 게임 진행 시 상기 공격 기술을 통해 적을 물리치면 아이템으로서 노드(노드 아이템)를 획득 및 수집할 수 있다.
상기 게임 컨텐츠 연동부는 상기 수집된 노드 아이템을 저장하고, 상기 게임 진행 시 상기 사용자 단말기의 화면에 노출시켜 사용자의 필요시 해당 노드 아이템을 꺼내서 사용하도록 구성된 정비창을 인터페이스로서 제공할 수 있다.
상기 정비창은 상기 수집된 노드 아이템이 저장되어 있으며 슬라이드 방식으로 상기 노드 아이템을 꺼내고 넣을 수 있도록 구성된 가방과, 상기 가방에서 상기 노드 아이템을 사용자의 손가락으로 끌어와서 다른 노드와 선으로 연결시켜 코딩을 할 수 있는 공간인 정비 공간으로 구성될 수 있다.
상기 노드들의 양쪽 끝에는 선으로 서로를 연결할 수 있는 버튼이 달려 있으며, 각 노드의 왼쪽에 달려 있는 버튼은 입력의 특성을 가지고, 각 노드의 오른쪽에 달려 있는 버튼은 출력의 특성을 가질 수 있다.
상기 노드 코딩부는 각 노드의 같은 방향에 달려 있는 버튼끼리는 서로 연결을 허용하지 않고 각 노드의 다른 방향에 달려 있는 버튼끼리만 서로 연결을 허용하며, 다만 같은 노드의 버튼끼리는 서로 방향이 다르더라도 연결을 허용하지 않을 수 있다.
본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 방법은 코딩 교육 시스템의 노드 생성부가 코딩하는 데 필요한 기능을 가진 기능성 블록으로 이루어진 노드들을 생성하여 사용자 단말기의 화면에 표시하는 단계; 상기 코딩 교육 시스템의 노드 코딩부가 상기 사용자 단말기의 조작에 따라 상기 노드들을 선으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현하는 단계; 및 상기 코딩 교육 시스템의 노드 실행부가 상기 노드들의 각 기능을 상기 선으로 연결된 순서에 기반하여 분석하고, 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드들의 각 기능에 해당하는 결과를 출력하는 단계를 포함한다.
본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 방법은 상기 코딩 교육 시스템의 게임 콘텐츠 연동부가 게임 콘텐츠를 상기 프로그래밍 언어와 결합하여 제공하되, 상기 사용자 단말기의 조작에 따라 상기 게임 콘텐츠가 상기 노드들 중 어느 하나와 선으로 연결되는 경우, 상기 게임 콘텐츠의 업그레이드를 진행하는 단계를 더 포함할 수 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 첨부 도면들에 포함되어 있다.
본 발명의 일 실시예에 따르면, 흐름 기반 비주얼 프로그래밍 언어를 교육 목적에 맞게 재가공하여 코딩 교육에 활용함으로써 알고리즘을 구성하는 능력을 효과적으로 기를 수 있으며, 코딩과 자연스럽게 어울리는 게임 콘텐츠로 인해 코딩에 대한 흥미를 올릴 수 있다.
도 1은 본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템을 설명하기 위해 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 있어서 노드들을 이용한 코딩의 사용 상태를 도시한 도면이다.
도 3 내지 도 5는 본 발명의 일 실시예에 따른 코딩을 이용한 공격 기술 제작 및 활용에 관한 일례를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 방법을 설명하기 위해 도시한 흐름도이다.
본 발명의 이점 및/또는 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.
또한, 이하 실시되는 본 발명의 바람직한 실시예는 본 발명을 이루는 기술적 구성요소를 효율적으로 설명하기 위해 각각의 시스템 기능구성에 기 구비되어 있거나, 또는 본 발명이 속하는 기술분야에서 통상적으로 구비되는 시스템 기능 구성은 가능한 생략하고, 본 발명을 위해 추가적으로 구비되어야 하는 기능 구성을 위주로 설명한다. 만약 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 하기에 도시하지 않고 생략된 기능 구성 중에서 종래에 기 사용되고 있는 구성요소의 기능을 용이하게 이해할 수 있을 것이며, 또한 상기와 같이 생략된 구성 요소와 본 발명을 위해 추가된 구성 요소 사이의 관계도 명백하게 이해할 수 있을 것이다.
또한, 이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다.
이하에서는 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템을 설명하기 위해 도시한 블록도이고, 도 2는 본 발명의 일 실시예에 있어서 노드들을 이용한 코딩의 사용 상태를 도시한 도면이다.
도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템(100)은 노드 생성부(110), 노드 코딩부(120), 노드 실행부(130), 게임 콘텐츠 연동부(140), 및 제어부(150)를 포함하여 구성될 수 있다.
상기 노드 생성부(110)는 코딩하는 데 필요한 기능(예: 연산 기능 등)을 가진 기능성 블록으로 이루어진 노드(210)들을 생성하고, 상기 생성된 노드(210)들을 사용자 단말기의 화면에 표시할 수 있다.
여기서, 상기 노드(210)들의 양쪽 끝에는 선(213)으로 서로를 연결할 수 있는 버튼(211, 212)이 달려 있는데, 특히 각 노드(210)의 왼쪽에 달려 있는 버튼(211)은 입력의 특성을 가지고, 각 노드(210)의 오른쪽에 달려 있는 버튼(212)은 출력의 특성을 가질 수 있다.
본 발명의 일 실시예에 따르면 이러한 각 노드(210)들의 입출력 특성을 통해 각 노드(210)들을 선(213)으로 연결하여 코딩을 수행할 수 있는 기반을 마련할 수 있다.
상기 노드 코딩부(120)는 상기 사용자 단말기의 조작에 따라 상기 노드(210)들을 선(213)으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현할 수 있다. 즉, 상기 노드 코딩부(120)는 상기 각 노드(210)들의 입출력 특성을 기반으로 사용자 단말기의 조작에 따라 상기 각 노드(210)들을 선(213)으로 연결하여 코딩을 수행할 수 있다.
이때, 상기 노드 코딩부(120)는 각 노드(210)의 같은 방향에 달려 있는 버튼(211, 212)끼리는 서로 연결을 허용하지 않고 각 노드(210)의 다른 방향에 달려 있는 버튼(211, 212)끼리만 서로 연결을 허용할 수 있다.
예컨대, 두 노드(210)를 선(213)으로 연결하려고 할 때, 한 노드(210)의 왼쪽에 달려 있는 버튼(211)과 다른 노드(210)의 오른쪽에 달려 있는 버튼(212)을 연결하거나, 그 반대로 연결하는 것은 허용된다.
하지만, 한 노드(210)의 왼쪽에 달려 있는 버튼(211)과 다른 노드(210)의 왼쪽에 달려 있는 버튼(211)을 연결하거나, 한 노드(210)의 오른쪽에 달려 있는 버튼(212)과 다른 노드(210)의 오른쪽에 달려 있는 버튼(212)을 연결하는 것은 허용되지 않는다.
다만, 상기 노드 코딩부(120)는 같은 노드의 버튼끼리는 서로 방향이 다르더라도 연결을 허용하지 않는 것이 바람직하다. 예를 들면, 한 노드(210)의 왼쪽에 달려 있는 버튼(211)과 동일 노드(210)의 오른쪽에 달려 있는 버튼(212)을 연결하는 것은 허용되지 않는다.
상기 노드 코딩부(120)는 상기 각 노드(210)의 연결 방향이 오른쪽 버튼(212)에서 왼쪽 버튼(211)으로 향하는 것은 허용할 수 있다. 또한, 상기 노드 코딩부(120)는 같은 색상의 버튼(211, 212)끼리 연결하는 것 또한 허용할 수 있다. 상기 버튼(211, 212)의 색상은 자료형을 의미하며, 따라서 같은 색상의 버튼(211, 212)들은 같은 자료형을 의미한다.
상기 노드 실행부(130)는 상기 노드(210)들의 각 기능을 상기 선(213)으로 연결된 순서에 기반하여 분석하고, 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드(210)들의 각 기능에 해당하는 결과를 출력할 수 있다.
예를 들면, 1의 입력값을 가지는 노드(210)와 3의 입력값을 가지는 노드(210)가 연산자 기능(덧셈)을 가지는 노드(210)와 선(213)으로 연결되어 있는 경우, 상기 노드 실행부(130)는 1과 3을 입력값으로 하는 덧셈 연산자 노드(210)를 실행하여 4의 출력값을 결과로서 출력할 수 있다.
이때, 상기 덧셈 연산자 노드(210)는 게임 콘텐츠(220)의 일례인 파워건에 연결될 수 있으며, 이에 따라 상기 출력값 4는 상기 파워건의 데미지에 대입되어 파워건의 데미지를 4만큼 강화시킬 수 있다.
이를 위해, 상기 게임 콘텐츠 연동부(140)는 여러 명 동시 접속이 가능한 게임 콘텐츠(220)를 상기 프로그래밍 언어와 결합하여 제공할 수 있다. 특히, 상기 게임 콘텐츠 연동부(140)는 상기 사용자 단말기의 조작에 따라 상기 게임 콘텐츠(220)가 상기 노드(210)들 중 어느 하나와 선(213)으로 연결되는 경우, 상기 게임 콘텐츠(220)의 업그레이드를 진행할 수 있다.
이때, 상기 게임 콘텐츠 연동부(140)는 상기 게임 콘텐츠(220)와 선(213)으로 연결된 해당 노드(210)의 출력 결과를 상기 게임 콘텐츠(220)에 입력하여 상기 게임 콘텐츠(220)의 업그레이드를 진행할 수 있다.
예를 들면, 상기 게임 콘텐츠 연동부(140)는 해당 노드(210)의 출력 결과만큼 상기 게임 콘텐츠(220)를 업그레이드할 수 있으며, 또 달리 해당 노드(210)의 출력 결과에 해당하는 업그레이드 등급을 산출하고 이를 적용하여 상기 게임 콘텐츠(220)를 업그레이드할 수 있다.
여기서, 상기 게임 콘텐츠의 업그레이드는 공격 기술을 포함할 수 있다. 이러한 경우, 상기 게임 콘텐츠 연동부(140)는 상기 공격 기술과 관련된 스킬의 속성값을 수정할 수 있는 기능을 가진 노드인 스킬 노드를 이용하여 상기 공격 기술을 제작할 수 있다.
상기 게임 콘텐츠 연동부(140)는 상기 게임 콘텐츠를 이용한 게임 진행 시, 상기 공격 기술을 통해 적을 물리치면 아이템으로서 노드(노드 아이템)를 획득하고 이를 수집할 수 있다.
상기 게임 컨텐츠 연동부(140)는 상기 수집된 노드 아이템을 저장하고, 상기 게임 진행 시 상기 사용자 단말기의 화면에 노출시켜 사용자의 필요시 해당 노드 아이템을 꺼내서 사용하도록 구성된 정비창을 인터페이스로서 제공할 수 있다.
상기 게임 콘텐츠는 예를 들어 멀티 3인칭 탑다운 슈팅게임일 수 있다. 이 게임은 자신의 공격 기술을 이용하여 적을 잡아 점수를 얻는 게임이다. 상기 정비창을 이용하기 위해서, 사용자는 도 3에 도시된 바와 같이 게임을 진행하면서 나오는 정비소(310)를 선택할 수 있다.
상기 정비소(310)를 선택하면 도 4에 도시된 바와 같이, 사용자가 필요시 해당 노드 아이템을 꺼내서 사용하도록 구성된 정비창(400)이 상기 사용자 단말기의 화면에 노출될 수 있다. 상기 정비창(400)은 가방(410)과 정비 공간(420)으로 구성될 수 있다.
상기 가방(410)에는 상기 수집된 노드 아이템이 저장 공간(415)에 저장되어 있으며 슬라이드 방식으로 상기 노드 아이템을 꺼내고 넣을 수 있도록 구성될 수 있다.
상기 정비 공간(420)은 상기 가방(410)에서 상기 노드 아이템을 사용자의 손가락으로 끌어와서 다른 노드(210)와 선(213)으로 연결시켜 코딩을 할 수 있는 공간으로 구성될 수 있다. 상기 정비 공간(420)에서 사용하지 않는 노드(210)는 한 손가락으로 끌어서 다시 가방(410)으로 놓음으로써 상기 가방(410)에 넣어둘 수 있다.
여기서, 상기 노드(210)는 게임 콘텐츠(220)(예: 파워건, 대쉬 등)와 선(213)으로 연결될 수 있으며, 이러한 경우 상기 노드(210)의 출력 결과가 상기 게임 콘텐츠(220)에 입력되어 업그레이드를 진행함으로써 해당 스킬(공격 기술)을 강화할 수 있다.
참고로, 빈 정비 공간(420)을 한 손가락으로 끌어서 화면을 이동시킬 수 있다. 또한, 노드(210)에 있는 버튼(211, 212)을 한 손가락으로 끌어서 다른 노드(210)의 버튼(211, 212)에 놓음으로써 선(213)을 연결시킬 수 있다.
한편, 도 5에 도시된 바와 같이 코딩 실력에 따라 캐릭터(게임 콘텐츠)가 강해질 수 있다. 즉, 도 5의 i)과 같이 단순한 코딩을 수행했을 때보다 도 5의 ii)와 같이 보다 복잡한 코딩을 수행했을 때 해당 캐릭터에 높은 공격력을 대입할 수 있으며, 이를 통해 해당 캐릭터의 공격력을 더욱 강화할 수 있다.
상기 제어부(150)는 상기 코딩 교육 시스템(100), 즉 상기 노드 생성부(110), 상기 노드 코딩부(120), 상기 노드 실행부(130), 상기 게임 콘텐츠 연동부(140) 등의 동작을 전반적으로 제어할 수 있다. 상기 제어부(150)는 상기 노드 생성부(110), 상기 노드 코딩부(120), 상기 노드 실행부(130), 상기 게임 콘텐츠 연동부(140) 등의 구성요소들을 기능적으로 일부 또는 전체 포함하여 구현될 수 있다. 즉, 상기 제어부(150)는 상기 구성요소들의 일부 기능을 수행할 수 있으며, 또 달리 상기 구성요소들의 전체 기능을 수행할 수도 있다.
상기 제어부(150)는 시스템(100)의 전체적인 동작을 제어하며, CPU 등과 같은 프로세서를 포함할 수 있다. 상기 제어부(150)는 입출력부를 통해 수신한 사용자 입력에 대응되는 동작을 수행하도록 시스템(100)에 포함된 다른 구성들을 제어할 수 있다.
여기서 상기 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다.
다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 상기 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다.
실시예
1. 상황
- 게임을 하며 얻은 노드 아이템 (숫자 3 노드, 숫자 2 노드, 더하기 노드)을 이용하여 스킬 노드인 파워건을 정비한다.
- 숫자 3 노드와 숫자 2 노드는 float 자료형을 가진 하늘색의 버튼을 출력값으로 1개를 가지며 각각 3과 2를 반환하는 기능을 한다.
- 더하기 노드는 2개의 float 자료형을 가진 하늘색 버튼을 입력값으로 가지며 1개의 float 자료형을 가진 하늘색 버튼을 출력값으로 가지며 2개의 입력을 받아 각각의 값을 더한 값을 1개의 출력값으로 반환하는 기능을 한다.
- 스킬 노드(파워건)는 다양한 종류의 입력 변수를 가지고 있는데, 그 중에 float 자료형을 가진 하늘색 버튼 1개가 포함되어 있으며 이는 스킬의 공격력을 관여한다.
2. 활용
1) 숫자 3 노드의 출력 버튼을 더하기 노드의 첫 번째 입력 버튼에 연결한다.
2) 숫자 2 노드의 출력 버튼을 더하기 노드의 두 번째 입력 버튼에 연결한다.
3) 더하기 노드의 입력값으로 인해 3+2의 값인 5의 값이 출력버튼으로 나오게 된다.
4) 더하기 노드의 출력 버튼을 스킬 노드(파워건)의 공격력 버튼에 연결함으로써 파워건의 공격력에 5를 대입한다.
5) 파워건의 공격력이 5가 된다.
이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
도 6은 본 발명의 일 실시예에 따른 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 방법을 설명하기 위해 도시한 흐름도이다.
여기서 설명하는 코딩 교육 방법은 도 1의 코딩 교육 시스템(100)에 의해 수행될 수 있다. 상기 코딩 교육 방법은 본 발명의 하나의 실시예에 불과하며, 그 이외에 필요에 따라 다양한 단계들이 아래와 같이 부가될 수 있고, 하기의 단계들도 순서를 변경하여 실시될 수 있으므로, 본 발명이 하기에 설명하는 각 단계 및 그 순서에 한정되는 것은 아니다.
도 1 및 도 6을 참조하면, 단계(610)에서 상기 코딩 교육 시스템(100)의 노드 생성부(110)는 코딩하는 데 필요한 기능을 가진 기능성 블록으로 이루어진 노드들을 생성하여 사용자 단말기의 화면에 표시할 수 있다.
다음으로, 단계(620)에서 상기 코딩 교육 시스템(100)의 노드 코딩부(120)는 상기 사용자 단말기의 조작에 따라 상기 노드들을 선으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현할 수 있다.
다음으로, 단계(630)에서 상기 코딩 교육 시스템(100)의 노드 실행부(130)는 상기 노드들의 각 기능을 상기 선으로 연결된 순서에 기반하여 분석할 수 있다.
다음으로, 단계(640)에서 상기 코딩 교육 시스템(100)의 노드 실행부(130)는 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드들의 각 기능에 해당하는 결과를 출력할 수 있다.
다음으로, 단계(650)에서 상기 코딩 교육 시스템(100)의 게임 콘텐츠 연동부(140)는 게임 진행 중 상기 사용자 단말기의 조작에 따라 게임 콘텐츠를 상기 노드들 중 어느 하나와 선으로 연결할 수 있다.
다음으로, 단계(660)에서 상기 코딩 교육 시스템(100)의 게임 콘텐츠 연동부(140)는 상기 게임 콘텐츠의 업그레이드를 진행할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
110: 노드 생성부
120: 노드 코딩부
130: 노드 실행부
140: 게임 콘텐츠 연동부
150: 제어부
210: 노드
211, 212: 버튼
213: 선
220: 게임 콘텐츠
310: 정비소
400: 정비창
410: 가방
420: 정비 공간

Claims (10)

  1. 코딩하는 데 필요한 기능을 가진 기능성 블록으로 이루어진 노드들을 생성하여 사용자 단말기의 화면에 표시하는 노드 생성부;
    상기 사용자 단말기의 조작에 따라 상기 노드들을 선으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현하는 노드 코딩부;
    상기 노드들의 각 기능을 상기 선으로 연결된 순서에 기반하여 분석하고, 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드들의 각 기능에 해당하는 결과를 출력하는 노드 실행부; 및
    여러 명 동시 접속이 가능한 게임 콘텐츠를 상기 프로그래밍 언어와 결합하여 제공하되, 상기 사용자 단말기의 조작에 따라 상기 게임 콘텐츠가 상기 노드들 중 어느 하나와 선으로 연결되는 경우, 상기 게임 콘텐츠의 업그레이드를 진행하는 게임 콘텐츠 연동부
    를 포함하는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 게임 콘텐츠 연동부는
    상기 게임 콘텐츠와 선으로 연결된 해당 노드의 출력 결과를 상기 게임 콘텐츠에 입력하여 상기 게임 콘텐츠의 업그레이드를 진행하는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  4. 제1항에 있어서,
    상기 게임 콘텐츠의 업그레이드는 공격 기술을 포함하고,
    상기 게임 콘텐츠 연동부는
    상기 공격 기술과 관련된 스킬의 속성값을 수정할 수 있는 기능을 가진 노드인 스킬 노드를 이용하여 상기 공격 기술을 제작하며, 상기 게임 콘텐츠를 이용한 게임 진행 시 상기 공격 기술을 통해 적을 물리치면 아이템으로서 노드(노드 아이템)를 획득 및 수집하는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  5. 제4항에 있어서,
    상기 게임 컨텐츠 연동부는
    상기 수집된 노드 아이템을 저장하고, 상기 게임 진행 시 상기 사용자 단말기의 화면에 노출시켜 사용자의 필요시 해당 노드 아이템을 꺼내서 사용하도록 구성된 정비창을 인터페이스로서 제공하는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  6. 제5항에 있어서,
    상기 정비창은
    상기 수집된 노드 아이템이 저장되어 있으며 슬라이드 방식으로 상기 노드 아이템을 꺼내고 넣을 수 있도록 구성된 가방과, 상기 가방에서 상기 노드 아이템을 사용자의 손가락으로 끌어와서 다른 노드와 선으로 연결시켜 코딩을 할 수 있는 공간인 정비 공간으로 구성되는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  7. 제1항에 있어서,
    상기 노드들의 양쪽 끝에는 선으로 서로를 연결할 수 있는 버튼이 달려 있으며,
    각 노드의 왼쪽에 달려 있는 버튼은 입력의 특성을 가지고, 각 노드의 오른쪽에 달려 있는 버튼은 출력의 특성을 가지는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  8. 제7항에 있어서,
    상기 노드 코딩부는
    각 노드의 같은 방향에 달려 있는 버튼끼리는 서로 연결을 허용하지 않고 각 노드의 다른 방향에 달려 있는 버튼끼리만 서로 연결을 허용하며, 다만 같은 노드의 버튼끼리는 서로 방향이 다르더라도 연결을 허용하지 않는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템.
  9. 코딩 교육 시스템의 노드 생성부가 코딩하는 데 필요한 기능을 가진 기능성 블록으로 이루어진 노드들을 생성하여 사용자 단말기의 화면에 표시하는 단계;
    상기 코딩 교육 시스템의 노드 코딩부가 상기 사용자 단말기의 조작에 따라 상기 노드들을 선으로 연결하여 흐름 기반의 비주얼 프로그래밍 언어로 표현하는 단계;
    상기 코딩 교육 시스템의 노드 실행부가 상기 노드들의 각 기능을 상기 선으로 연결된 순서에 기반하여 분석하고, 그 분석 결과를 토대로 해당 기능들을 컴파일 한 후 실행하여 상기 노드들의 각 기능에 해당하는 결과를 출력하는 단계; 및
    상기 코딩 교육 시스템의 게임 콘텐츠 연동부가 게임 콘텐츠를 상기 프로그래밍 언어와 결합하여 제공하되, 상기 사용자 단말기의 조작에 따라 상기 게임 콘텐츠가 상기 노드들 중 어느 하나와 선으로 연결되는 경우, 상기 게임 콘텐츠의 업그레이드를 진행하는 단계
    를 포함하는 것을 특징으로 하는 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 방법.
  10. 삭제
KR1020230071159A 2023-06-01 2023-06-01 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법 KR102606891B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230071159A KR102606891B1 (ko) 2023-06-01 2023-06-01 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230071159A KR102606891B1 (ko) 2023-06-01 2023-06-01 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102606891B1 true KR102606891B1 (ko) 2023-11-24

Family

ID=88972260

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230071159A KR102606891B1 (ko) 2023-06-01 2023-06-01 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102606891B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003241628A (ja) * 2002-02-22 2003-08-29 Nippon Yunishisu Kk 目標達成のためのプログラム作成支援方法および作成支援プログラム
KR100657517B1 (ko) * 2005-02-28 2006-12-13 엔에이치엔(주) 컨텐츠 노드 생성 및 업데이트 시스템, 컨텐츠 노드 생성및 업데이트 방법 및 그 방법 실행 프로그램을 기록한 저장매체
KR20200003437A (ko) * 2018-07-02 2020-01-10 조재현 로봇 제어 어플리케이션 생성을 이용한 코딩 교육 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003241628A (ja) * 2002-02-22 2003-08-29 Nippon Yunishisu Kk 目標達成のためのプログラム作成支援方法および作成支援プログラム
KR100657517B1 (ko) * 2005-02-28 2006-12-13 엔에이치엔(주) 컨텐츠 노드 생성 및 업데이트 시스템, 컨텐츠 노드 생성및 업데이트 방법 및 그 방법 실행 프로그램을 기록한 저장매체
KR20200003437A (ko) * 2018-07-02 2020-01-10 조재현 로봇 제어 어플리케이션 생성을 이용한 코딩 교육 시스템

Similar Documents

Publication Publication Date Title
Cossu Game Development With Game Maker Studio 2
US9387406B2 (en) Apparatus, method and computer readable storage medium for guiding game play via a show me button
KR102258278B1 (ko) 시즌별 보상 분배 시스템
EP1879673A2 (en) Creating publications using gaming-based media content
CN103577229A (zh) 一种网页游戏的加载方法及网页浏览器
Kelly Python, PyGame and raspberry Pi game development
Bradfield Godot Engine Game Development projects: Build five cross-platform 2D and 3D games with Godot 3.0
Cordone Unreal Engine 4 Game Development Quick Start Guide: Programming professional 3D games with Unreal Engine 4
Bodi et al. Playing stories? Narrative-dramatic agency in Disco Elysium (2019) and Astroneer (2019)
KR20240039111A (ko) 게임 내 아이템 강화 서비스 제공 방법
KR102606891B1 (ko) 게임 콘텐츠와 결합한 흐름 기반 교육용 프로그래밍 언어를 이용한 코딩 교육 시스템 및 방법
US11068284B2 (en) System for managing user experience and method therefor
Horton et al. Android: Game Programming
Areizaga Blanco et al. Patterns in mainstream programming games
KR102410923B1 (ko) Ar 기술을 책에 적용한 코딩 교육 기반의 ar 콘텐츠 제공 방법, 장치, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램
Wang Beginning programming all-in-one desk reference for dummies
CN112755510A (zh) 一种移动端云游戏控制方法、系统和计算机可读存储介质
KR102316227B1 (ko) 확률 계산 기반 블록 코딩 교육 서비스 방법 및 그 시스템
Therrien et al. Toward a visualization of video game cultural history: Grasping the French Touch
Qusef et al. By two: A two-dimensional mobile game model for novice developers
CN111931942A (zh) 一种机器学习应用的提供方法、装置、电子设备及存储介质
Ma et al. Design of online teaching interaction mode for vocational education based on gamified-learning
Cerqueira et al. Serious game interaction techniques applied to an operational satellite simulator
Mohov Practical game design with Unity and Playmaker
Vorderman Computer coding python games for kids

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant