KR20130020970A - 코딩 시스템 - Google Patents

코딩 시스템 Download PDF

Info

Publication number
KR20130020970A
KR20130020970A KR1020110083194A KR20110083194A KR20130020970A KR 20130020970 A KR20130020970 A KR 20130020970A KR 1020110083194 A KR1020110083194 A KR 1020110083194A KR 20110083194 A KR20110083194 A KR 20110083194A KR 20130020970 A KR20130020970 A KR 20130020970A
Authority
KR
South Korea
Prior art keywords
coding
error
unit
developer
grammar
Prior art date
Application number
KR1020110083194A
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 KR1020110083194A priority Critical patent/KR20130020970A/ko
Publication of KR20130020970A publication Critical patent/KR20130020970A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 개발자가 코딩을 할 때, 코딩문법에 대한 가이드나 자동완성 기능을 제공하여 개발자가 효율적으로 코딩을 할 수 있는 효과가 있다. 이를 위해 특히, 소스코드 작성을 위한 코딩문법이 저장되어 있는 코딩문법 저장부; 소스코드 작성에 이용될 수 있는 코딩기능이 저장되어 있는 코딩기능 저장부; 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용에 상기 코딩문법에 위반되는 에러가 있는지를 검사하는 에러 검사부; 코딩 내용에 관련된 코딩문법 또는 코딩기능 중 적어도 하나를 개발자에게 음성으로 가이드해 주는 음성 안내부; 에러 검사부의 검사에 의해 입력된 코딩 내용에 에러가 있는 경우, 개발자에게 에러에 대해 알려줌으로써 개발자가 입력된 코딩 내용을 수정할 수 있도록 하는 에러 알림부; 및 코딩문법 또는 코딩기능을 음성 안내부에 의해 가이드 하도록 음성 안내부를 제어하고, 에러를 개발자에게 알리도록 에러 알림부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 코딩 시스템 및 코딩 방법이 개시된다.

Description

코딩 시스템 및 코딩 방법{Coding system and Coding method}
본 발명은 코딩 시스템 및 코딩 방법에 관한 것이다. 보다 상세하게는 코딩시 필요한 기능 및 문법에 대한 가이드를 제공하고, 코딩문법에 위반된 에러를 개발자에게 알려 효율적인 코딩작업이 이루어질 수 있도록 하는 코딩 시스템 및 코딩 방법에 관한 것이다.
코딩(Coding)은 소스코드를 작성하는 행위를 말한다. 즉, 코딩은 프로그램 작성 단계 중의 하나로, 프로그래밍 언어를 사용해 개발자가 개발하고자 하는 프로그램을 기술하는 것을 말한다. 즉, 코딩은 컴퓨터 프로그래밍(computer programming) 또는 간단히 프로그래밍(programming)이라고 부르며, 하나 이상의 관련된 추상 알고리즘을 특정한 프로그래밍 언어를 이용해 구체적인 컴퓨터 프로그램으로 구현하는 기술을 말한다. 한편, 특정한 프로그래밍 언어로 쓰인 프로그램은 기계어로 번역되어 컴퓨터에 의해 실행되며, 어떤 프로그래밍 언어도 기계어로 번역이 가능하다. 어떤 언어에서는 기계어 대신 p-부호로 불리는 바이너리를 생성하기도 한다. 개발자가 기계 부호로 직접 작성하는 것도 가능하지만, 이는 굉장히 어려운 작업이기 때문에 저수준에서의 컴퓨터 제어가 필요한 경우 개발자들은 기계어 명령어에 대한 일대일 연상 기호 대응인 어셈블리어를 사용한다.
한편, 소스코드를 작성하는 행위 즉, 코딩은 프로그램 언어를 개발자가 일일이 입력하는 방법에 의해 이루어지는 것이 일반적이다. 그러나, 코딩을 하는 방법에는 일정한 문법이나 규칙이 존재하고 있으며, 이러한 문법이나 규칙에 맞도록 프로그램 언어의 입력이 이루어져야 고품질 또는 완성된 코딩 결과물을 얻을 수 있다. 그러나, 코딩문법이나 규칙은 복잡한 면이 있어 문법이나 규칙에 맞도록 코딩을 하는 것은 초보자에게 상당히 어려운 일이다. 또한, 코딩에 대한 숙련자라 하더라도 단 한번의 작업으로 에러가 없는 코딩 결과물을 얻는 것도 쉬운 일은 아니다.
종래기술로 코딩 결과물의 품질을 향상시키기 위해 완성된 코딩 결과물에 대해 검증작업을 수행할 수 있는 검증시스템 등이 있으나, 이러한 검증시스템은 코딩작업이 이루어지는 과정 동안에는 아무런 역할을 하지 않고, 코딩 결과물이 완성된 후, 코딩문법 등을 기초로 에러가 있는지를 검사한다. 즉, 종래기술은 개발자에 의해 입력되는 코딩 내용의 에러를 선결적으로 찾아내어 개발자가 이를 수정할 수 있도록 가이드하는 역할을 하지 못하는 문제가 있었다.
또한, 완성된 코딩 결과물에서 코딩문법에 위반되는 에러를 발견했을 때, 이를 일일이 찾아서 수정해야 하므로 에러가 없는 최종적 코딩 결과물을 얻는데 많은 시간이 소요되는 문제가 있었다.
따라서, 개발자가 코딩을 할 때, 코딩문법에 대한 가이드나 자동완성 기능을 제공하여 개발자가 효율적으로 코딩을 할 수 있도록 하는 방안의 필요성이 대두된다.
또한, 개발자가 코딩 작업시 편리한 코딩기능 등을 이용할 수 있도록 하여 개발자의 코딩기능에 대한 접근성을 높이고, 코딩기능을 원하는 목적에 사용할 수 있도록 하는 방안의 필요성이 대두된다.
아울러, 개발자가 코딩 작업시 코딩문법에 위반되는 에러가 발견되면 이를 바로 개발자에게 알려 개발자가 에러를 바로바로 수정해가면서 코딩을 하게 함으로써, 에러 없는 코딩 결과물을 얻을 수 있고, 코딩 결과물을 얻기까지의 시간을 단축시킬 수 있는 방안의 필요성이 대두된다.
본 발명은 상기와 같은 필요에 의해 창출된 것으로서, 본 발명의 제 1목적은 개발자가 코딩을 할 때, 코딩문법에 대한 가이드나 자동완성 기능을 제공하여 개발자가 효율적으로 코딩을 할 수 있는 코딩 시스템 및 코딩 방법을 제공하는 데 있다.
또한, 제 2목적은 개발자가 코딩 작업시 편리한 코딩기능 등을 이용할 수 있도록 하여 개발자의 코딩기능에 대한 접근성을 높이고, 코딩기능을 원하는 목적에 사용할 수 있는 코딩 시스템 및 코딩 방법을 제공하는 데 있다.
그리고, 제 3목적은 개발자가 코딩 작업시, 코딩문법에 위반되는 에러가 발견되면 이를 바로 개발자에게 알려 개발자가 이러한 에러를 바로바로 수정해가면서 코딩을 하게 함으로써 에러 없는 코딩 결과물을 얻어 코딩 결과물의 품징을 향상시킬 수 있고, 코딩 결과물을 얻기까지의 시간을 단축시킬 수 있는 코딩 시스템 및 코딩 방법을 제공하는 데 있다.
상기와 같은 본 발명의 목적은 소스코드 작성을 위한 코딩문법이 저장되어 있는 코딩문법 저장부; 소스코드 작성에 이용될 수 있는 코딩기능이 저장되어 있는 코딩기능 저장부; 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용에 코딩문법에 위반되는 에러가 있는지를 검사하는 에러 검사부; 코딩 내용에 관련된 코딩문법 또는 코딩기능 중 적어도 하나를 개발자에게 음성으로 가이드해 주는 음성 안내부; 에러 검사부의 검사에 의해 입력된 코딩 내용에 에러가 있는 경우, 개발자에게 에러에 대해 알려줌으로써 개발자가 입력된 코딩 내용을 수정할 수 있도록 하는 에러 알림부; 및 코딩문법 또는 코딩기능을 음성 안내부에 의해 가이드 하도록 음성 안내부를 제어하고, 에러를 개발자에게 알리도록 에러 알림부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 코딩 시스템을 제공함으로써 달성될 수 있다.
또한, 코딩 시스템은, 코딩문법, 코딩기능 및 에러 중 적어도 하나를 화면으로 출력하는 디스플레이부;를 더 포함하는 것을 특징으로 할 수 있다.
또한, 코딩 시스템은, 개발자가 상기 소스코드 작성을 위한 코딩 내용을 입력할 수 있는 입력부;를 더 포함하는 것을 특징으로 할 수 있다.
또한, 코딩 시스템은, 코딩문법 및 코딩기능에 대해 개발자에게 가이드된 횟수 및, 에러에 대해 개발자에게 알려진 횟수를 산출하고, 산출된 결과를 저장함으로써, 개발자의 소스코드 작성 능력을 체크할 수 있도록 하는 통계부;를 더 포함하는 것을 특징으로 할 수 있다.
또한, 제어부는, 코딩문법, 코딩기능 및 에러 중 개발자에 의해 선택된 적어도 어느 하나만을 가이드 하도록 음성 안내부를 제어하는 것을 특징으로 할 수 있다.
그리고, 음성 안내부에는 안내 테마 목록이 저장되어 있고, 음성 안내부는 안내 테마 목록 중 개발자에 의해 선택된 안내 테마에 따라 코딩문법 또는 코딩기능을 음성으로 개발자에게 가이드하는 것을 특징으로 할 수 있다.
한편, 본 발명의 목적은 다른 카테고리로서, 소스코드를 작성하기 위한 프로그래밍 언어가 입력부를 통해 입력되는 A단계; 제어부가 음성 안내부를 제어하여, 음성 안내부가 입력되는 프로그래밍 언어에 관련된 코딩문법 및 코딩기능 중 적어도 어느 하나를 개발자에게 가이드하는 B단계; 음성 안내부의 가이드에 따라 코딩 내용이 입력되는 C단계; 에러 검사부가 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용에 코딩문법에 위반되는 에러가 있는지를 검사하는 D단계; 코딩 내용이 입력되다가 에러 검사부에 의해 코딩문법에 위반된 에러가 발견된 경우, 제어부가 에러 알림부를 제어하여 에러 알림부가 에러에 대한 알림음을 개발자에게 발신하는 E단계; 및 발견된 에러에 대한 재검토를 통해 에러가 수정되는 F단계;를 포함하는 것을 특징으로 하는 코딩 방법을 제공함으로써 달성될 수 잇다.
또한, A단계는, 음성 안내부에 의해 개발자에게 가이드될 코딩문법 및 코딩기능 중 어느 하나가 선택되는 A-1단계;를 더 포함하는 것을 특징으로 할 수 있다.
그리고, E단계에서, 에러 알림부는 미리 설정된 시간 안에 에러의 수정이 안될 경우, 알림음을 개발자에게 발신하는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 의하면 첫째, 개발자가 코딩을 할 때, 코딩문법에 대한 가이드나 자동완성 기능을 제공하여 개발자가 효율적으로 코딩을 할 수 있는 효과가 있다.
둘째, 개발자가 코딩 작업시 편리한 코딩기능 등을 이용할 수 있도록 하여 개발자의 코딩기능에 대한 접근성을 높이고 개발자가 코딩기능을 원하는 목적에 사용할 수 있는 효과가 있다.
셋째, 개발자가 코딩 작업시, 코딩문법에 위반되는 에러가 발견되면 이를 바로 개발자에게 알려 개발자가 이러한 에러를 바로바로 수정해가면서 코딩을 하게 함으로써 에러 없는 코딩 결과물을 얻어 품질 향상을 도모할 수 있고, 코딩 결과물을 얻기까지의 시간을 단축시킬 수 있는 효과가 있다.
넷째, 통합개발환경에서 코딩 시스템의 활용도를 증진시킬 수 있는 효과가 있다.
도 1은 본 발명의 일실시예에 따른 코딩 시스템의 구성을 나타낸 블록도,
도 2는 본 발명의 일실시예에 따른 코딩 방법을 순차적으로 나타낸 순서도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 도면들 중 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 또한, 하기에서 본 발명을 설명함에 있어, 관련된 공지코딩기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
<코딩 시스템의 구성>
도 1은 본 발명의 일실시예에 따른 코딩 시스템의 구성을 나타낸 블록도이다. 도 1에 도시된 바와 같이, 본 발명인 코딩 시스템(100)은 코딩문법 저장부(110), 코딩기능 저장부(120), 에러 검사부(190), 음성 안내부(140), 에러 알림부(140) 및 제어부(130)를 포함하여 구성된다.
코딩문법 저장부(110)는 소스코드 작성을 위한 코딩문법을 저장하고 있다. 코딩문법은 코딩을 할 때, 개발자가 따라야 하는 규칙을 말한다. 즉, 코딩문법은 프로그램 언어의 자리배치, 출력함수, 변수, 사용자함수, 증감연산자, 구조체배열, 사칙연산, 정열 등 코딩시 개발자가 지켜야 하는 다양한 규칙을 정하고 있다.
코딩기능 저장부(120)는 소스코드 작성에 이용될 수 있는 코딩기능을 저장하고 있다. 코딩기능은 코딩 작업시 개발환경에서 제공하는 편리한 기능들을 말한다. 예를 들어, 코딩기능은 단어찾기 기능, 항목식별 기능, 코드생략 기능, 편집기 사용을 위한 기능 등 다양한 기능들을 말한다. 코딩기능 저장부(120)는 다양한 코딩기능들을 개발자에게 제공함으로써 효율적인 코딩 작업이 이루어질 수 있도록 한다.
에러 검사부(190)는 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용에 코딩문법에 위반되는 에러가 있는지를 검사한다. 즉, 에러 검사부(190)는 코딩문법 저장부(110)에 저장되어 있는 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용을 분석하여 코딩문법에 위반되는 사항이 있는지를 검사한다. 예를 들어, 에러 검사부(190)는 코딩 내용에 end 괄호 누락, 세미콜론(;) 누락, 데이터타입 불일치, Return 값 누락 등의 에러가 있는지를 검사하고, 이러한 에러는 하기의 에러 알림부(140)를 통해 개발자에게 알리게 된다.
음성 안내부(140)는 코딩 내용에 관련된 코딩문법 또는 코딩기능 중 적어도 하나를 개발자에게 음성으로 가이드해 준다. 여기서, 음성 안내부(140)는 간단한 코딩문법에 대해 가이드를 해줄 수 있다. 한편, 음성 안내부(140)는 주로 코딩 초보자를 대상으로 코딩문법을 가이드해 줄 수 있으나, 코딩문법 가이드 대상이 초보자에 한정되는 것은 아니다.
예를 들어, 음성 안내부(140)는 If문을 작성할 경우 "괄호 안에 조건을 넣어야 합니다"와 같은 음성 가이드를 제공하여 개발자가 If문에 조건을 입력하지 않는 실수를 범하지 않도록 할 수 있다.
또한, 음성 안내부(140)는 프로그램의 개발, 즉 코딩 작업시 개발환경에서 제공하는 편리한 코딩기능들을 코딩 작업 중에 바로바로 가이드하여 개발자가 코딩기능들을 사용하여 효율적으로 작업을 할 수 있도록 도와줄 수 있다. 즉, 음성 안내부(140)는 사용 가능한 코딩기능에 대한 접근성을 높이고 코딩기능을 원하는 목적에 적절히 사용하도록 유도하는 역할을 한다.
예를 들어, 파일 내에서 개발자가 원하는 단어를 찾을 경우 음성 안내부(140)는 코딩기능 목록의 '파일 내에서 찾기'를 선택하도록 하여 '파일 내에서 찾기' 팝업 창을 활성화되도록 하고, 각각의 요소(element)들에 대한 가이드 및 각각의 옵션에 대해 가이드하여 개발자가 음성 안내부(140)의 가이드에 따라 원하는 조건을 입력하도록 할 수 있다.
한편, 음성 안내부(140)에는 안내 테마 목록이 저장되어 있는 것이 바람직하다. 이를 통해 개발자는 음성 안내부(140)에 저장되어 있는 안내 테마 목록 중에서 어느 하나를 선택하여 선택된 안내 테마에 따른 음성으로 코딩문법 또는 코딩기능이 가이드 되도록 할 수 있다. 개발자는 테마에 따른 음성으로 코딩문법이나 코딩기능에 대해 가이드 받음으로써, 딱딱하고 무미건조한 가이드가 아닌 개성있는 멘트의 가이드로 즐거운 개발 환경을 제공받을 수 있다.
에러 알림부(140)는 에러 검사부(190)의 검사에 의해 입력된 코딩 내용에 에러가 있는 경우, 개발자에게 에러에 대해 알려줌으로써 개발자가 입력된 프로그램 내용을 수정할 수 있도록 한다. 즉, 에러 알림부(140)는 코딩문법에 위반되는 에러에 대해 개발자에게 알림음을 울려주고, 코딩 작업시 이러한 에러 내용을 바로 수정할 수 있는 기회를 제공해주는 역할을 한다. 여기서, 코딩문법에 위반되는 에러는 개발자가 코딩 작업을 하면서 발견하여 수정할 수도 있으므로, 정해진 일정시간 안에 에러가 수정되지 않는 경우 알림음을 울려 개발자에게 알리도록 하는 것이 바람직하다.
예를 들어, 에러 검사부(190)가 end 괄호 누락, 세미콜론(;) 누락, 데이터타입 불일치, Return 값 누락 등의 에러를 발견한 경우, 하기 제어부(130)가 에러 알림부(140)를 제어하여 에러 알림부(140)가 알림음을 울려 개발자에게 발견된 에러를 알 수 있도록 한다.
제어부(130)는 코딩문법 또는 코딩기능을 음성 안내부(140)에 의해 가이드 되도록 음성 안내부(140)를 제어하고, 에러를 개발자에게 알리도록 에러 알림부(140)를 제어한다.
여기서, 제어부(130)는 코딩문법 및 코딩기능 중 개발자에 의해 미리 선택된 어느 하나만을 가이드 하도록 음성 안내부(140)를 제어할 수도 있다. 즉, 개발자는 코딩 작업전 또는 코딩 작업 중 제어부(130)의 설정을 통해, 개발자가 소스코드를 작성할 때, 코딩문법에 대해서만 음성 안내부(140)가 가이드하게 하거나 또는 코딩기능에 대해서만 가이드 하도록 할 수 있다. 또한, 숙련된 개발자의 경우 에러 알림음만을 개발자에게 제공하도록 설정될 수도 있다.
또한, 코딩 시스템(100)은 디스플레이부(170)를 더 포함할 수 있으며, 디스플레이부(170)는 코딩문법, 코딩기능 및 에러 중 적어도 하나를 화면으로 출력하는 역할을 한다. 즉, 디스플레이부(170)는 음성 안내부(140) 및 에러 알림부(140)의 가이드나 에러 알림음과는 별도로 가이드되는 코딩문법이나 코딩기능 또는 에러가 있는 부분을 개발자가 시각적으로 확인할 수 있도록 화면으로 출력시키는 역할을 한다.
또한, 코딩 시스템(100)은 개발자가 소스코드 작성을 위한 코딩 내용을 입력할 수 있는 입력부(160)를 더 포함할 수 있다. 여기서 입력부(160)에는 프로그래밍 언어를 구성하는 각종 문자, 기호나 입력방식편집자(IME)를 포함되어 있는 것이 바람직하다. 예를 들어, 입력부(160)는 영문 알파벳 문자, 세미콜론이나 각종 괄호부호 등의 기호, Tab키나 Ctrl키 등의 입력방식편집자 등을 포함할 수 있다.
또한, 코딩 시스템(100)은 코딩문법과 코딩기능에 대해 개발자에게 가이드된 횟수 및 에러에 대해 개발자에게 알려진 횟수를 산출하고, 산출된 결과를 저장함으로써, 개발자의 소스코드 작성 능력을 체크할 수 있도록 하는 통계부(180);를 더 포함할 수 있다. 한편, 통계부(180)는 음성 안내부(140)에 의해 개발자에게 가이드된 코딩문법 및 코딩기능의 히스토리를 개발자가 확인할 수 있는 기능을 제공할 수도 있다.
<코딩 방법>
도 2는 본 발명의 일실시예에 따른 코딩 방법을 순차적으로 나타낸 순서도이다. 도 2에 도시된 바와 같이, 본 발명인 코딩 방법은 아래의 절차에 의한다. 이하, 본 발명인 코딩 방법에 대해 상세히 설명하되, 상기 코딩 시스템(100)의 내용과 중복되는 내용은 이를 생략한다.
1. 프로그래밍 언어 입력단계( S210 )
입력부(160)를 통해 소스코드를 작성하기 위한 프로그래밍 언어가 입력된다. 한편, 프로그래맹 언어 입력단계(S210)는 음성 안내부(140)에 의해 개발자에게 가이드될 코딩문법 및 코딩기능 중 어느 하나가 선택되는 코딩문법 또는 코딩기능 선택단계(S215)를 더 포함할 수 있다. 한편, 여기서 사용되는 용어 '프로그래밍 언어'는 소스코드를 작성할 때 입력되는 문자나 기호 등을 의미하고, 하기 S230에서 사용된 '코딩 내용'은 입력된 프로그래밍 언어들이 조합된 개발자가 작성하고자 하는 소스코드의 내용을 의미한다.
2. 코딩문법 또는 코딩기능 가이드단계( S220 )
제어부(130)가 음성 안내부(140)를 제어하여, 음성 안내부(140)가 입력되는 프로그래밍 언어에 관련된 코딩문법 및 코딩기능 중 적어도 어느 하나를 개발자에게 가이드한다.
3. 코딩 내용 입력단계( S230 )
음성 안내부(140)의 가이드에 따라 입력부(160)를 통해 코딩 내용이 입력된다. 한편, 여기서 입력되는 코딩 내용은 코드 템플릿을 사용하여 입력될 수도 있다. 코드의 기본틀을 제공하는 코드 템플릿을 사용하여 코딩 내용을 입력함으로써, 개발자는 효율적으로 소스코드를 작성할 수 있다.
4. 코딩문법 에러 검사단계( S240 )
에러 검사부(190)가 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용에 코딩문법에 위반되는 에러가 있는지를 검사한다. 즉, 에러 감사부는 코딩문법 저장부(110)에 저장된 코딩문법을 바탕으로 입력된 코딩 내용이 코딩문법에 위반되는지를 검사한다.
5. 에러 알림음 발신단계( S250 )
코딩 내용이 입력되다가 에러 검사부(190)에 의해 코딩문법에 위반된 에러가 발견된 경우, 제어부(130)가 에러 알림부(140)를 제어하여 에러 알림부(140)가 에러에 대한 알림음을 개발자에게 발신한다.
한편, 에러 알림음 발신단계(S250)는 에러 알림부(140)가 미리 설정된 시간 안에 에러의 수정이 안될 경우, 알림음을 개발자에게 발신하도록 하는 것이 바람직하다.
6. 에러 수정단계( S260 )
발견된 에러에 대한 재검토를 통해 에러가 수정된다. 이와 같이 코딩 중 에러가 있는 부분을 개발자가 바로 인지하여 수정할 수 있게 함으로써, 개발자는 코딩 작업시간을 단축할 수 있고, 코딩 결과물의 품질을 향상시킬 수 있게 된다. 또한, 통합개발환경에서 코딩 시스템(100)의 활용도를 증진시킬 수 있는 장점이 있다.
이상에서 본 발명에 대한 기술 사상을 첨부 도면과 함께 서술하였지만, 이는 본 발명의 가장 양호한 일 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술 분야의 통상의 지식을 가진 자이면 누구나 본 발명의 기술 사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.
100 : 코딩 시스템 110 : 코딩문법 저장부
120 : 코딩기능 저장부 130 : 제어부
140 : 음성 안내부 150 : 에러 알림부
160 : 입력부 170 : 디스플레이부
180 : 통계부 190 : 에러 검사부

Claims (9)

  1. 소스코드 작성을 위한 코딩문법이 저장되어 있는 코딩문법 저장부;
    소스코드 작성에 이용될 수 있는 코딩기능이 저장되어 있는 코딩기능 저장부;
    상기 코딩문법을 바탕으로 개발자에 의해 입력된 코딩 내용에 상기 코딩문법에 위반되는 에러가 있는지를 검사하는 에러 검사부;
    상기 코딩 내용에 관련된 상기 코딩문법 또는 상기 코딩기능 중 적어도 하나를 상기 개발자에게 음성으로 가이드해 주는 음성 안내부;
    상기 에러 검사부의 검사에 의해 입력된 코딩 내용에 에러가 있는 경우, 상기 개발자에게 상기 에러에 대해 알려줌으로써 상기 개발자가 상기 입력된 코딩 내용을 수정할 수 있도록 하는 에러 알림부; 및
    상기 코딩문법 또는 상기 코딩기능을 상기 음성 안내부에 의해 가이드 하도록 상기 음성 안내부를 제어하고, 상기 에러를 상기 개발자에게 알리도록 상기 에러 알림부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 코딩 시스템.
  2. 제 1항에 있어서,
    상기 코딩 시스템은,
    상기 코딩문법, 상기 코딩기능 및 상기 에러 중 적어도 하나를 화면으로 출력하는 디스플레이부;를 더 포함하는 것을 특징으로 하는 코딩 시스템.
  3. 제 1항에 있어서,
    상기 코딩 시스템은,
    개발자가 상기 소스코드 작성을 위한 상기 코딩 내용을 입력할 수 있는 입력부;를 더 포함하는 것을 특징으로 하는 코딩 시스템.
  4. 제 1항에 있어서,
    상기 코딩 시스템은,
    상기 코딩문법과 상기 코딩기능에 대해 상기 개발자에게 가이드된 횟수 및,
    상기 에러에 대해 상기 개발자에게 알려진 횟수를 산출하고, 산출된 결과를 저장함으로써, 상기 개발자의 소스코드 작성 능력을 체크할 수 있도록 하는 통계부;를 더 포함하는 것을 특징으로 하는 코딩 시스템.
  5. 제 1항에 있어서,
    상기 제어부는,
    상기 코딩문법, 상기 코딩기능 및 상기 에러 중 상기 개발자에 의해 선택된 적어도 어느 하나만을 가이드 하도록 상기 음성 안내부를 제어하는 것을 특징으로 하는 코딩 시스템.
  6. 제 1항에 있어서,
    상기 음성 안내부에는 안내 테마 목록이 저장되어 있고,
    상기 음성 안내부는 상기 안내 테마 목록 중 상기 개발자에 의해 선택된 안내 테마에 따라 상기 코딩문법 또는 상기 코딩기능을 음성으로 상기 개발자에게 가이드하는 것을 특징으로 하는 코딩 시스템.
  7. 소스코드를 작성하기 위한 프로그래밍 언어가 입력부를 통해 입력되는 A단계;
    제어부가 상기 음성 안내부를 제어하여, 상기 음성 안내부가 상기 입력되는 프로그래밍 언어에 관련된 코딩문법 및 코딩기능 중 적어도 어느 하나를 개발자에게 가이드하는 B단계;
    상기 음성 안내부의 가이드에 따라 코딩 내용이 입력되는 C단계;
    에러 검사부가 상기 코딩문법을 바탕으로 상기 개발자에 의해 입력된 코딩 내용에 상기 코딩문법에 위반되는 에러가 있는지를 검사하는 D단계;
    상기 코딩 내용이 입력되다가 상기 에러 검사부에 의해 상기 코딩문법에 위반된 에러가 발견된 경우, 상기 제어부가 상기 에러 알림부를 제어하여 상기 에러 알림부가 상기 에러에 대한 알림음을 상기 개발자에게 발신하는 E단계; 및
    발견된 상기 에러에 대한 재검토를 통해 상기 에러가 수정되는 F단계;를 포함하는 것을 특징으로 하는 코딩 방법.
  8. 제 7항에 있어서,
    상기 A단계는,
    상기 음성 안내부에 의해 상기 개발자에게 가이드될 코딩문법 및 상기 코딩기능 중 어느 하나가 선택되는 A-1단계;를 더 포함하는 것을 특징으로 하는 코딩 방법.
  9. 제 7항에 있어서,
    상기 E단계에서,
    상기 에러 알림부는 미리 설정된 시간 안에 상기 에러의 수정이 안될 경우, 상기 알림음을 상기 개발자에게 발신하는 것을 특징으로 하는 코딩 방법.
KR1020110083194A 2011-08-22 2011-08-22 코딩 시스템 KR20130020970A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110083194A KR20130020970A (ko) 2011-08-22 2011-08-22 코딩 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110083194A KR20130020970A (ko) 2011-08-22 2011-08-22 코딩 시스템

Publications (1)

Publication Number Publication Date
KR20130020970A true KR20130020970A (ko) 2013-03-05

Family

ID=48174019

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110083194A KR20130020970A (ko) 2011-08-22 2011-08-22 코딩 시스템

Country Status (1)

Country Link
KR (1) KR20130020970A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018151464A1 (ko) * 2017-02-14 2018-08-23 윤종식 음성 인식을 이용한 코딩시스템 및 코딩방법
KR101960903B1 (ko) * 2018-08-28 2019-03-21 박한진 코딩 학습 시스템
KR20190109951A (ko) * 2018-03-19 2019-09-27 조성건 코딩 교육용 구형 로봇 제어 방법 및 코딩 교육용 구형 로봇 제어 시스템
KR102300584B1 (ko) * 2020-12-08 2021-09-10 주식회사 플레이코드 코딩을 교육하는 장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018151464A1 (ko) * 2017-02-14 2018-08-23 윤종식 음성 인식을 이용한 코딩시스템 및 코딩방법
KR20190109951A (ko) * 2018-03-19 2019-09-27 조성건 코딩 교육용 구형 로봇 제어 방법 및 코딩 교육용 구형 로봇 제어 시스템
KR101960903B1 (ko) * 2018-08-28 2019-03-21 박한진 코딩 학습 시스템
KR102300584B1 (ko) * 2020-12-08 2021-09-10 주식회사 플레이코드 코딩을 교육하는 장치 및 방법

Similar Documents

Publication Publication Date Title
Meinicke et al. Mastering software variability with FeatureIDE
US20080295069A1 (en) User-extensible rule-based source code modification
US9632754B2 (en) Auto generation and linkage of source code to test cases
US8893144B2 (en) Systems and methods for parallel execution of a portion of a script by interpreting comments in the script as parallel control statements
US7966182B2 (en) Voiced programming system and method
US20150212923A1 (en) Nontransitory processor readable recording medium having fault injection program recorded therein and fault injection method
CN101071378A (zh) 源代码生成方法、设备和程序
JP2007141173A (ja) コンパイルシステム、デバッグシステムおよびプログラム開発システム
KR20130020970A (ko) 코딩 시스템
US20200051563A1 (en) Method for executing function based on voice and electronic device supporting the same
KR102546424B1 (ko) 학습용 데이터 생성 장치, 소스 코드 오류 분석 장치 및 방법
JP6451417B2 (ja) デバッグ支援装置、デバッグ支援システム、デバッグ支援方法、および、デバッグ支援プログラム
US10613854B2 (en) Systems and methods for automated renumbering, reformatting, and re-referencing of branching statements or go-to instruction line referencing within modified code using a dual-pass approach that includes operations using predicted new line numbers, error detection/correction, and alignment correction processing
CN107122337B (zh) 一种翻译文案生成方法及装置
KR20150095061A (ko) 자동 번역 시스템 및 이를 이용한 자동 번역 방법
US11256479B2 (en) Dynamic updates in an interactive programming environment
JP7045846B2 (ja) プログラミング言語変換支援装置、プログラミング言語変換支援方法、およびプログラム
JP2011165039A (ja) モデルデバッグ装置およびモデルデバッグ方法
CN111984536A (zh) 一种设备自动化测试系统
JP6442908B2 (ja) 修正装置、翻訳装置、修正方法、および、コンピュータ・プログラム
CN105702256A (zh) 一种基于机载设备的数字串语音识别方法
JPH1185536A (ja) 原始プログラムのエラー自動修正装置及び方法
KR102601979B1 (ko) 소프트웨어 프로그램을 검증하는 방법 및 장치
KR20110024996A (ko) 위성 관제 시스템에서 위성 관제 운용 자동화를 위한 언어변환장치 및 방법
CN110955433B (zh) 一种自动化部署脚本的生成方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee