KR102560619B1 - Electronic device providing no-code tool service and method thereof - Google Patents

Electronic device providing no-code tool service and method thereof Download PDF

Info

Publication number
KR102560619B1
KR102560619B1 KR1020230034928A KR20230034928A KR102560619B1 KR 102560619 B1 KR102560619 B1 KR 102560619B1 KR 1020230034928 A KR1020230034928 A KR 1020230034928A KR 20230034928 A KR20230034928 A KR 20230034928A KR 102560619 B1 KR102560619 B1 KR 102560619B1
Authority
KR
South Korea
Prior art keywords
window
page
component
input
modal
Prior art date
Application number
KR1020230034928A
Other languages
Korean (ko)
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 KR1020230034928A priority Critical patent/KR102560619B1/en
Application granted granted Critical
Publication of KR102560619B1 publication Critical patent/KR102560619B1/en

Links

Classifications

    • 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
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • 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

Abstract

웹페이지를 생성하는 노코드툴(No-Code Tool) 서비스를 제공하는 전자 장치 및 그 방법이 개시된다. 상기 방법은 웹(web)상 주소가 할당된 페이지(Page)를 생성하고, 페이지 내에서 사용자 입력에 따라 이동하는 커서(Cursor)를 표시하고, 페이지 내에서 제1 위치를 선택하는 제1 사용자 입력이 수신됨에 따라 제1 위치에 대응하는 입력창을 생성하고, 입력창을 통해 모달 윈도(Modal Window), 알림 윈도 및 컴포넌트(Component) 중 적어도 하나를 생성하는 커맨드(command) 입력을 수신하고, 커맨드 입력이 컴포넌트에 대응하면, 컴포넌트를 생성하여 제1 위치에 표시하고, 컴포넌트 내부에서 제2 위치를 선택하는 제2 사용자 입력에 응답하여, 텍스트(text), 버튼, 이미지 및 인풋창(input window) 중 적어도 하나의 사용자 인터페이스 객체를 생성하기 위한 드롭다운 메뉴(drop-down menu)를 표시하며, 드롭다운 메뉴에서 하나의 사용자 인터페이스 객체를 선택하는 제3 사용자 입력에 응답하여 제2 위치에 선택된 사용자 인터페이스 객체를 표시하고, 화면의 일 측면에 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정값을 표시한다. 이때 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정값은 타입스크립트(Typescript)로 작성된 스벨트(Svelte) 프레임워크로 구현된다. An electronic device and method for providing a no-code tool service for generating a web page are disclosed. The method generates a page to which an address is assigned on the web, displays a cursor moving according to a user input within the page, generates an input window corresponding to the first position upon receiving a first user input selecting a first position within the page, receives a command input for generating at least one of a modal window, a notification window, and a component through the input window, and if the command input corresponds to the component, the component is created to create the first position. In response to a second user input for selecting a second position inside the component, a drop-down menu for generating at least one user interface object selected from text, buttons, images, and input windows is displayed, and in response to a third user input for selecting one user interface object from the drop-down menu, the selected user interface object is displayed at the second position, and the setting values of the page, modal window, notification window, and component are displayed on one side of the screen. At this time, the setting values of the page, modal window, notification window, and components are implemented with the Svelte framework written in Typescript.

Description

노코드툴 서비스를 제공하는 전자 장치 및 그 방법 {ELECTRONIC DEVICE PROVIDING NO-CODE TOOL SERVICE AND METHOD THEREOF}Electronic device and method for providing no-code tool service {ELECTRONIC DEVICE PROVIDING NO-CODE TOOL SERVICE AND METHOD THEREOF}

본 발명은 웹페이지를 제작하는 노코드툴(No-Code Tool) 서비스를 제공하는 전자 장치 및 그 방법에 관한 것이다.The present invention relates to an electronic device and method for providing a no-code tool service for creating a web page.

최근 4차 산업혁명 시대가 도래하면서 사회의 전 영역에서 디지털 전환 추세가 가속화되고 있다. 디지털 전환이란 소프트웨어를 활용하여 맞춤형 플랫폼을 만드는 것을 의미한다. 비즈니스 모델은 다양하므로 이에 대한 플랫폼에 대한 니즈도 다양하고 많을 수밖에 없는 것이 현실이나, 대기업이 아닌 중소기업에서 코딩, 프로그래밍 전문 인력을 확보하는데에 어려움이 있다. 이에 정부 및 민간 영역에서 개발자를 양성하기 위해 많은 노력을 하고 있으나 한계가 있다. 따라서, 프로그래밍에 익숙하지 않은 사람들도 플랫폼 내의 템플릿을 이용하여 스스로 필요한 서비스나 애플리케이션을 구현할 수 있는 노코드(No-Code), 로우 코드(Low Code) 플랫폼이 개발 시장에서 성장 중이다. 노코드 플랫폼은 코딩 없이 웹페이지 또는 웹어플리케이션을 개발하는 방식을 의미하며, 로우 코드 플랫폼은 개발자와 유사한 코딩을 할 수 있도록 최소화 및 간소화된 코딩을 제공하는 것을 의미한다. With the advent of the Fourth Industrial Revolution, digital transformation is accelerating in all areas of society. Digital transformation means leveraging software to create custom platforms. Since business models are diverse, the reality is that the needs for the platform are also diverse and numerous, but it is difficult for small and medium-sized enterprises (SMEs) to secure coding and programming experts. Therefore, many efforts are being made to train developers in the government and private sectors, but there are limitations. Therefore, a no-code, low-code platform that allows even those who are not familiar with programming to implement a service or application they need by using a template within the platform is growing in the development market. A no-code platform means a method of developing web pages or web applications without coding, and a low-code platform means providing minimal and simplified coding so that developers can code similarly.

그러나 현존하는 노코드툴 플랫폼은 특정 기능에 중점을 두어 다양한 비즈니스 모델을 적용하는데에 한계가 있거나, 인터페이스의 복잡도가 높아 여전히 일반인이 접근하는데에 여전히 어려움이 있다. 또한 로우 코드 플랫폼은 주로 복잡한 프로그램 개발을 돕는 개발자용 툴로서 사용되고 있다. 이에, 보다 시각적이고 효율적인 방식으로 다양한 비즈니스 모델에 적용할 수 있는 노코드툴 서비스를 제공하는 방법 및 그 시스템이 필요하다.However, the existing Nocode tool platform has limitations in applying various business models by focusing on specific functions, or it is still difficult for the general public to access due to the high complexity of the interface. Also, the low-code platform is mainly used as a tool for developers to help develop complex programs. Accordingly, there is a need for a method and system for providing a no-code tool service that can be applied to various business models in a more visual and efficient manner.

(특허문헌 1) KR 102482641(Patent Document 1) KR 102482641

본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은 직관적인 사용자 인터페이스를 제공함으로써 용이하게 웹페이지를 제공할 수 있는 노코드툴 서비스를 제공하는데에 그 목적이 있다. The present invention is to solve the above problems, and an object of the present invention is to provide a no-code tool service that can easily provide a web page by providing an intuitive user interface.

또한, 본 발명은 런타임 부하가 최소화된 웹페이지를 제공할 수 있는 노코드툴 서비스를 제공하는데에 그 목적이 있다. In addition, an object of the present invention is to provide a no-code tool service capable of providing a web page with a minimized runtime load.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 더 존재할 수 있다.However, the technical problem to be achieved by the present embodiment is not limited to the technical problems described above, and other technical problems may further exist.

상술한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 전자 장치의 동작 방법은 웹(web)상 주소가 할당된 페이지(Page)를 생성하는 단계; 상기 페이지 내에서 사용자 입력에 따라 이동하는 커서(Cursor)를 표시하는 단계; 상기 페이지 내에서 제1 위치를 선택하는 제1 사용자 입력이 수신됨에 따라 상기 제1 위치에 대응하는 입력창을 생성하는 단계; 상기 입력창을 통해 모달 윈도(Modal Window), 알림 윈도 및 컴포넌트(Component) 중 적어도 하나를 생성하는 커맨드(command) 입력을 수신하는 단계; 상기 커맨드 입력이 컴포넌트에 대응하면, 컴포넌트를 생성하여 상기 제1 위치에 표시하고, 상기 컴포넌트 내부에서 제2 위치를 선택하는 제2 사용자 입력에 응답하여, 텍스트(text), 버튼, 이미지 및 인풋창(input window) 중 적어도 하나의 사용자 인터페이스 객체를 생성하기 위한 드롭다운 메뉴(drop-down menu)를 표시하는 단계; 상기 드롭다운 메뉴에서 하나의 사용자 인터페이스 객체를 선택하는 제3 사용자 입력에 응답하여 상기 제2 위치에 상기 선택된 사용자 인터페이스 객체를 표시하는 단계; 및 화면의 일 측면에 상기 페이지, 상기 모달 윈도, 상기 알림 윈도 및 상기 컴포넌트의 설정값을 표시하는 단계를 포함한다. 이때 상기 페이지, 상기 모달 윈도, 상기 알림 윈도 및 상기 컴포넌트의 설정값은 타입스크립트(Typescript)로 작성된 스벨트(Svelte) 프레임워크로 구현된다. To achieve the above object, a method of operating an electronic device according to an embodiment of the present invention includes generating a page to which an address is assigned on a web; displaying a cursor moving according to a user input within the page; generating an input window corresponding to the first location when a first user input for selecting a first location within the page is received; Receiving a command input for generating at least one of a modal window, a notification window, and a component through the input window; If the command input corresponds to the component, creating and displaying the component at the first location, and in response to a second user input selecting a second location within the component, displaying a drop-down menu for generating at least one user interface object selected from text, buttons, images, and input windows; displaying the selected user interface object at the second location in response to a third user input for selecting one user interface object from the drop-down menu; and displaying the setting values of the page, the modal window, the notification window, and the components on one side of the screen. At this time, the setting values of the page, the modal window, the notification window, and the components are implemented with the Svelte framework written in Typescript.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

본 발명의 다양한 실시예는, 프로그래밍이 아닌 시각적인 사용자 인터페이스를 통하여 웹페이지를 제작할 수 있는 사용자 경험(User Experience)을 제공할 수 있다. Various embodiments of the present invention may provide a user experience capable of creating a web page through a visual user interface rather than programming.

또한, 본 발명의 다양한 실시예는 타입스크립트(Typescript)로 작성된 스벨트(Svelte) 프레임워크(framework)를 이용함으로써 런타임 부하가 최소화된 웹페이지를 제공할 수 있다. In addition, various embodiments of the present invention can provide a web page with a minimized runtime load by using the Svelte framework written in Typescript.

또한, 본 발명의 다양한 실시예는, 타입스크립트(Typescirpt) 기반의 프론트엔드 및 백엔드를 제공함으로써 안정적인 웹페이지 구동 환경을 제공할 수 있다. In addition, various embodiments of the present invention can provide a stable web page driving environment by providing a Typescript-based front end and back end.

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

도 1은 본 발명의 일 실시예에 따른 웹페이지를 제작하는 노코드툴(No-Code Tool) 서비스를 제공하는 노코드툴 시스템을 도시한다.
도 2는 본 발명의 일 실시예에 따른 노코드툴 서비스를 제공하는 전자 장치의 동작 방법을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따라 전자 장치가 노코드툴 서비스를 제공하는 화면을 도시한다.
도 4는 본 발명의 일 실시예에 따라 제1 위치에 대응하여 생성된 입력창을 도시한다.
도 5는 본 발명의 일 실시예에 따라 생성된 컴포넌트를 도시한다.
도 6은 본 발명의 일 실시예에 따라 생성된 모달 윈도 및 모달 윈도의 설정 버튼을 통해 데이터를 입력하는 화면을 도시한다.
도 7은 본 발명의 일 실시예에 따라 생성된 알림 윈도의 설정 버튼을 통해 데이터를 입력하는 화면을 도시한다.
도 8은 본 발명의 일실시예에 따라 타입스크립트로 작성된 페이지 설정값을 도시한다.
도 9는 본 발명의 일 실시예에 따라 생성된 컴포넌트를 도시한다.
도 10은 도 9의 컴포넌트에 대응하여 타입스크립트로 작성된 컴포넌트 설정값을 도시한다.
도 11은 본 발명의 일 실시 예에 따른 전자 장치의 구성도이다.
1 shows a no-code tool system that provides a no-code tool service for creating a web page according to an embodiment of the present invention.
2 is a diagram illustrating an operating method of an electronic device providing a no-code tool service according to an embodiment of the present invention.
3 shows a screen on which an electronic device provides a no-code tool service according to an embodiment of the present invention.
4 illustrates an input window generated corresponding to a first position according to an embodiment of the present invention.
5 shows a component created according to one embodiment of the present invention.
6 illustrates a screen for inputting data through a modal window created according to an embodiment of the present invention and a setting button of the modal window.
7 illustrates a screen for inputting data through a setting button of a notification window created according to an embodiment of the present invention.
8 shows page setting values written in TypeScript according to an embodiment of the present invention.
9 shows a component created according to one embodiment of the present invention.
FIG. 10 shows component setting values written in TypeScript corresponding to the components of FIG. 9 .
11 is a configuration diagram of an electronic device according to an embodiment of the present invention.

이하에서, 첨부된 도면을 이용하여 본 발명에 대하여 구체적으로 설명한다. 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다. Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. In describing the present invention, if it is determined that a detailed description of related known technologies may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. In addition, numbers (eg, first, second, etc.) used in the description process of this specification are only identifiers for distinguishing one component from another component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It should be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, the terms "comprise" or "have" are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, but it should be understood that the presence or addition of one or more other features or numbers, steps, operations, components, parts, or combinations thereof is not excluded in advance.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings commonly understood by those skilled in the art to which the present invention belongs. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined.

본 명세서에서, 전자 장치는 적어도 하나의 프로세서를 포함하는 무선 통신 기능을 포함하는 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 전자 장치는 데스크톱, 노트북, 스마트폰, 휴대폰, 헨드헬드 장치(hand-held device), 태블릿 PC 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, an electronic device means a hardware device including a wireless communication function including at least one processor, and may be understood as encompassing a software configuration operating in a corresponding hardware device according to an embodiment. For example, an electronic device may be understood as including all desktops, laptops, smartphones, mobile phones, hand-held devices, tablet PCs, and user clients and applications running on each device, but is not limited thereto.

또한, 본 명세서에서 장치는 "기기" 또는 "디바이스(device)"와 혼용될 수 있으며, "디바이스", "기기" 및 "장치"는 동일한 표현으로 기재되어 있을 수 있다.Also, in this specification, a device may be used interchangeably with a “device” or a “device”, and “device”, “device”, and “apparatus” may be described as the same expression.

본 명세서에서 설명되는 각 단계들은 단말에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Although each step described in this specification is described as being performed by a terminal, the subject of each step is not limited thereto, and at least a part of each step may be performed in different devices according to embodiments.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention will be described in more detail. Hereinafter, the same reference numerals are used for the same components in the drawings, and redundant descriptions of the same components are omitted.

도 1은 본 발명의 일 실시예에 따른 웹페이지를 제작하는 노코드툴(No-Code Tool) 서비스를 제공하는 노코드툴 시스템(1)을 도시한다. 1 shows a no-code tool system 1 that provides a no-code tool service for creating a web page according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 시스템(1)은 전자 장치(10) 및 서버 장치(20)를 포함하여 구성된다. System 1 according to an embodiment of the present invention is configured to include an electronic device 10 and a server device 20.

전자 장치(10)의 사용자는 기 설치된 어플리케이션 또는 웹 어플리케이션을 등을 통해 노코드툴 서비스를 실행할 수 있다. 본 발명의 일 실시예에 따른 노코드툴 서비스는 전자 장치(10)에서 웹페이지를 생성하기 위한 사용자 인터페이스 등을 제공하는 프론트엔드(frontend)와 서버 장치(20)에 기 설치되어 데이터 베이스, 서버 관리 등을 제공하는 백엔드(backend)를 포함할 수 있다. 이때 전자 장치(10)와 서버 장치(20)는 네트워크(network)를 통해 서로 통신할 수 있다. 여기서 네트워크는 다양한 기술로 구현된 유선 및 무선 네트워크를 포함할 수 있다. The user of the electronic device 10 may execute the no-code tool service through a pre-installed application or web application. The no-code tool service according to an embodiment of the present invention may include a frontend that provides a user interface for creating a web page on the electronic device 10 and a database pre-installed on the server device 20, and a backend that provides server management and the like. At this time, the electronic device 10 and the server device 20 may communicate with each other through a network. Here, the network may include wired and wireless networks implemented with various technologies.

본 발명의 일 실시예에 따른 시스템(1)은 노코드툴 서비스를 통해 사용자가 프로그래밍 언어를 사용하지 않고 시각적인 사용자 인터페이스를 이용하여 직관적으로 웹페이지 및또는 웹어플리케이션을 작성할 수 있도록 함으로써, 비개발자도 원하는 웹페이지 및또는 웹어플리케이션을 용이하게 제작할 수 있도록 할 수 있다. 이하, 도 2 내지 도 11을 참조하여 상세히 설명한다. System 1 according to an embodiment of the present invention allows users to intuitively create web pages and/or web applications using a visual user interface without using a programming language through a no-code tool service, so that non-developers can easily create desired web pages and/or web applications. Hereinafter, it will be described in detail with reference to FIGS. 2 to 11 .

도 2는 본 발명의 일 실시예에 따른 노코드툴 서비스를 제공하는 전자 장치의 동작 방법을 도시한 도면이다. 2 is a diagram illustrating an operating method of an electronic device providing a no-code tool service according to an embodiment of the present invention.

도 2를 참조하면, 전자 장치(10)는 웹(web)상 주소가 할당된 페이지(page)를 생성한다(S21). 여기서 페이지는 웹 상에 제공되는 기본 화면으로서, 다른 페이지, 다른 웹어플리케이션 등과 연동될 수 있다. 전자 장치(10)는 생성된 페이지에 웹상 주소를 할당함으로써, 생성된 페이지가 웹상에 제공될 수 있도록 할 수 있다. 한편, 전자 장치(10)는 페이지 제작이 완료되었다는 사용자 입력(예컨대, 도 3의 '출시하기' 버튼 입력 등)이 수신되기 전까지 상기 페이지에 할당된 웹상 주소의 접근을 제한할 수 있다. 도 3은 본 발명의 일 실시예에 따라 전자 장치(10)가 노코드툴 서비스를 제공하는 화면을 도시한다. 도 3을 참조하면, 전자 장치(10)는 웹상 주소가 할당된 페이지(31)를 생성할 수 있다. 이때 해당 페이지(31)가 하위 페이지(child page) 또는 상위 페이지(parent page)를 갖는지 여부는 화면의 좌측의 설정창(32)을 통해 제공할 수 있다.Referring to FIG. 2 , the electronic device 10 creates a page to which an address is assigned on the web (S21). Here, the page is a basic screen provided on the web, and may be interlocked with other pages or other web applications. The electronic device 10 may allow the created page to be provided on the web by allocating a web address to the created page. Meanwhile, the electronic device 10 may restrict access to the web address assigned to the page until a user input indicating that page creation is complete (eg, a 'release' button input in FIG. 3 ) is received. 3 shows a screen on which the electronic device 10 provides a no-code tool service according to an embodiment of the present invention. Referring to FIG. 3 , the electronic device 10 may create a page 31 to which an address on the web is assigned. At this time, whether the corresponding page 31 has a child page or a parent page can be provided through the setting window 32 on the left side of the screen.

다시 도 2를 참조하면, 전자 장치(10)는 페이지 내에서 사용자 입력에 따라 이동하는 커서(Cursor)를 표시한다(S22). 예를 들어, 전자 장치(10)는 마우스(mouse), 조이스틱 등을 이동하는 사용자 입력에 따라 커서를 표시할 수 있으며, 화면을 호버링(hovering)하는 사용자 입력에 따라 커서를 표시할 수도 있다. 그러나 이에 한정되는 것은 아니다. 한편, 커서는 도 3에 도시된 바와 같이 '/' 형상(33)일 수 있으나, 이에 한정되는 것은 아니다. Referring back to FIG. 2 , the electronic device 10 displays a cursor moving according to a user input within a page (S22). For example, the electronic device 10 may display a cursor according to a user input of moving a mouse or a joystick, or may display a cursor according to a user input of hovering over a screen. However, it is not limited thereto. Meanwhile, the cursor may have a '/' shape 33 as shown in FIG. 3, but is not limited thereto.

다음으로, 전자 장치(10)는 페이지 내에서 제1 위치를 선택하는 제1 사용자 입력이 수신됨에 따라 제1 위치에 대응하는 입력창을 생성한다(S23). 여기서 제1 위치를 선택하는 제1 사용자 입력은 터치(touch), 클릭(click) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. Next, the electronic device 10 generates an input window corresponding to the first position as the first user input for selecting the first position within the page is received (S23). Here, the first user input for selecting the first location may include a touch, a click, and the like, but is not limited thereto.

도 4는 본 발명의 일 실시예에 따라 제1 위치에 대응하여 생성된 입력창을 도시한다. 도 4를 참조하면, 전자 장치(10)는 사용자 입력이 수신된 제1 위치(33)에 입력창(41)을 표시할 수 있다. 4 illustrates an input window generated corresponding to a first position according to an embodiment of the present invention. Referring to FIG. 4 , the electronic device 10 may display an input window 41 at a first location 33 where a user input is received.

전자 장치(10)는 입력창을 통해 모달 윈도(modal window), 알림 윈도 및 컴포넌트(Component) 중 적어도 하나를 생성하는 커맨드(command) 입력을 수신한다(S24). 커맨드 입력은 기 설정된 문자열일 수 있으며, 비한정적인 예로서, 'component', '컴포넌트', 'cp new', 'cp win', 'modal', '모달', 'mw new', 'alarm', '알림', 'notify', 'aw new' 등일 수 있다. 전자 장치(10)는 입력창 하부에 사용가능한 커맨드 리스트를 불투명한 팝업창으로 제공할 수 있다. The electronic device 10 receives a command input for generating at least one of a modal window, a notification window, and a component through an input window (S24). The command input may be a preset string, and as non-limiting examples, may be 'component', 'component', 'cp new', 'cp win', 'modal', 'modal', 'mw new', 'alarm', 'notify', 'notify', 'aw new', and the like. The electronic device 10 may provide a usable command list below the input window as an opaque pop-up window.

전자 장치(10)는 커맨드 입력이 컴포넌트에 대응하면 컴포넌트를 생성하여 제1 위치에 표시하며, 컴포넌트 내부에서 제2 위치를 선택하는 제2 사용자 입력에 응답하여, 텍스트(text), 버튼(button), 이미지 및 인풋창(input windown) 중 적어도 하나의 사용자 인터페이스 객체를 생성하기 위한 드롭다운 메뉴(drop-down menu)를 표시한다(S25). 전자 장치(10)는 상기 사용자 인터페이스 객체들 이외에 카드, 탭바(tab bar) 등을 더 포함하여 드롭다운 메뉴를 표시할 수 있다. 한편, 생성된 컴포넌트의 크기는 기 결정된 초기값으로 결정될 수 있으나, 컴포넌트의 가장자리를 드레그(drag)하는 사용자 입력에 따라 변경될 수 있다. If the command input corresponds to the component, the electronic device 10 creates the component and displays it in the first position, and displays a drop-down menu for generating at least one user interface object among text, button, image, and input window in response to a second user input for selecting a second position inside the component (S25). The electronic device 10 may display a drop-down menu by further including a card, a tab bar, and the like in addition to the user interface objects. Meanwhile, the size of the generated component may be determined as a predetermined initial value, but may be changed according to a user input of dragging an edge of the component.

도 5는 본 발명의 일 실시예에 따라 생성된 컴포넌트를 도시한다. 전자 장치(10)는 입력창에 'component', '컴포넌트', 'cp new', 'cp win' 등과 같이 컴포넌트에 대응하는 커맨드 입력이 수신되면, 제1 위치(도 3의 31)에 기 결정된 크기의 컴포넌트(51)를 생성할 수 있다. 또한, 전자 장치(10)는 컴포넌트(51) 내부에서 제2 위치(52)를 선택하는 사용자 입력에 응답하여 드롭다운 메뉴(53)를 표시할 수 있다. 한편, 실시예에 따라, 전자 장치(10)는 제2 위치(52)에서 각 사용자 인터페이스 객체에 대응하는 커맨드 입력을 수신할 수도 있다. 이 경우, 커맨드 입력에 대응하는 사용자 인터페이스가 생성되고 드롭다운 메뉴(53)는 제거될 수 있다. 5 shows a component created according to one embodiment of the present invention. When a command input corresponding to a component such as 'component', 'component', 'cp new', 'cp win', etc. is received in the input window, the electronic device 10 may create a component 51 having a predetermined size at the first position (31 in FIG. 3 ). In addition, the electronic device 10 may display the drop-down menu 53 in response to a user input for selecting the second location 52 inside the component 51 . Meanwhile, according to embodiments, the electronic device 10 may receive a command input corresponding to each user interface object at the second location 52 . In this case, a user interface corresponding to the command input may be created and the drop-down menu 53 may be removed.

다시 도 2를 참조하면, 전자 장치(10)는 드롭다운 메뉴에서 하나의 사용자 인터페이스 객체를 선택하는 제3 사용자 입력에 응답하여 제2 위치에 선택된 사용자 인터페이스 객체를 표시한다(S26). 예를 들어, 전자 장치(10)는 텍스트 객체가 선택되면 텍스트를 입력할 수 있는 텍스트 입력창을 표시하며, 버튼 객체가 선택되면 버튼을 생성할 수 있는 버튼 입력창을 표시할 수 있다. 이때, 버튼 입력창은 각 버튼과 연결되어 동작해야 하는 액션(action) 객체를 사용자가 입력 및/또는 선택할 수 있는 사용자 인터페이스를 더 제공할 수 있다. 또한, 전자 장치(10)는 이미지가 선택되면 이미지를 업로드 및/또는 촬상할 수 있는 사용자 인터페이스를 표시할 수 있다. Referring back to FIG. 2 , the electronic device 10 displays the selected user interface object at the second location in response to a third user input for selecting one user interface object from the drop-down menu (S26). For example, the electronic device 10 may display a text input window for text input when a text object is selected, and may display a button input window for creating buttons when a button object is selected. In this case, the button input window may further provide a user interface through which a user may input and/or select an action object to be operated in connection with each button. Also, when an image is selected, the electronic device 10 may display a user interface for uploading and/or capturing an image.

추가로, 전자 장치(10)는 커맨드 입력이 모달 윈도에 대응하면 모달 윈도를 생성하여 제1 위치에 표시할 수 있다. 전자 장치(10)는 모달 윈도 상단 일측에 활성화된 모달 설정 버튼을 통해 모달 윈도의 색상, 데이터 및 액션 중 적어도 하나를 입력하는 제4 사용자 입력을 수신할 수 있다. 도 6은 본 발명의 일 실시예에 따라 생성된 모달 윈도 및 모달 윈도의 설정 버튼을 통해 데이터를 입력하는 화면을 도시한다. Additionally, if the command input corresponds to the modal window, the electronic device 10 may create a modal window and display it at the first position. The electronic device 10 may receive a fourth user input for inputting at least one of color, data, and action of the modal window through a modal setting button activated on an upper side of the modal window. 6 illustrates a screen for inputting data through a modal window created according to an embodiment of the present invention and a setting button of the modal window.

또한, 전자 장치(10)는 커맨드 입력이 알림 윈도에 대응하면 페이지의 일 측면에 활성화된 알림 설정 버튼을 통해 알림 윈도의 색상, 데이터, 액션 및 닫기 버튼 설정 중 적어도 하나를 입력하는 제5 사용자 입력을 수신할 수 있다. 도 7은 본 발명의 일 실시예에 따라 생성된 알림 윈도의 설정 버튼을 통해 데이터를 입력하는 화면을 도시한다. In addition, if the command input corresponds to the notification window, the electronic device 10 may receive a fifth user input for inputting at least one of color, data, action, and close button settings of the notification window through a notification setting button activated on one side of the page. 7 illustrates a screen for inputting data through a setting button of a notification window created according to an embodiment of the present invention.

한편, 전자 장치(10)는 페이지 내에서 컴포넌트, 모달 윈도 및 알림 윈도를 이동시키는 사용자 입력에 응답하여 컴포넌트, 모달 윈도 및 알림 윈도의 설정값을 갱신할 수 있다. 이때, 컴포넌트, 모달 윈도 및 알림 윈도는 사용자 입력에 대응하여 이동 위치할 수 있다. Meanwhile, the electronic device 10 may update the setting values of the component, modal window, and notification window in response to a user input for moving the component, modal window, and notification window within the page. In this case, the component, the modal window, and the notification window may be moved and positioned in response to a user input.

다시 도 2를 참조하면, 전자 장치(10)는 화면의 일 측면에 커맨드 입력, 사용자 입력들에 응답하여 생성된 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정값을 표시한다(S27). 여기서 설정값은 페이지, 모달 윈도, 알림 윈도 및 컴포넌트들의 이름, 색상, 위치, 크기, 하이어라키(Hierarchy), 사용자 인터페이스 객체 정보, 데이터, 액션 등을 포함할 수 있다. 도 3 내지 도 7에 도시된 바와 같이, 전자 장치(10)는 상기 설정값을 화면 좌측면(32)에 표시할 수 있으나, 이에 한정되는 것은 아니며, 전자 장치(10)는 상기 설정값을 팝업창으로 표시할 수도 있다. 전자 장치(10)는 페이지 내부에서뿐만 아니라, 상기 설정값을 통해서도 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정을 변경할 수 있다. 예를 들어, 전자 장치(10)는 '+' 버튼(34)을 이용하여 새로운 모달 윈도, 알림 윈도 및 컴포넌트를 생성할 수 있다. Referring back to FIG. 2 , the electronic device 10 displays a command input, a page generated in response to user inputs, a modal window, a notification window, and component setting values on one side of the screen (S27). Here, setting values may include names, colors, positions, sizes, hierarchies, user interface object information, data, actions, and the like of pages, modal windows, notification windows, and components. As shown in FIGS. 3 to 7 , the electronic device 10 may display the setting value on the left side of the screen 32, but is not limited thereto, and the electronic device 10 may display the setting value in a pop-up window. The electronic device 10 may change settings of the page, modal window, notification window, and components not only within the page but also through the setting value. For example, the electronic device 10 may create a new modal window, notification window, and component by using the '+' button 34 .

한편, 생성된 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정값은 타입스크립트(Typescript)로 작성된 스벨트(Svelte) 프레임워크(framework)로 구현된다. 타입스크립트(Typescript)는 자바스크립트(Javascript) 기반의 언어로 별도의 트랜스파일러를 필요로 하지 않고 자바스크립트 엔진을 사용할 수 있어 확장성 측면에서 우수하며, 자바스크립트와 달리 기 결정된 타입을 사용하기 때문에 런타임(runtime) 작업에 유리한 특징을 가진다. 또한, 스벨트(Svelte)는 가상의 문서 객체 모델(Document Object Model) 및 라이브러리들을 제거함으로써 빌드(build) 용량을 최소화하여 런타임 작업에 유리한 프레임워크(또는 컴파일러)이다. 전자 장치(10)는 타입스크립트로 작성된 스벨트 프레임워크를 통해 런타임 부하를 최소화함으로써 사용자에게 효율적인 웹페이지 제작 및 운영을 제공할 수 있다. Meanwhile, the generated page, modal window, notification window, and setting values of components are implemented with the Svelte framework written in Typescript. Typescript is a JavaScript-based language that does not require a separate transpiler and can use a JavaScript engine, which is excellent in terms of extensibility. In addition, Svelte is a framework (or compiler) that is advantageous for runtime operation by minimizing build capacity by removing virtual document object models and libraries. The electronic device 10 can provide users with efficient webpage creation and operation by minimizing runtime load through the Svelte framework written in TypeScript.

전자 장치(10)는 사용자 입력에 대응하여 기 결정된 타입스크립트 구조체에 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정값을 추가할 수 있다. 이때, 구조체는 페이지, 모달 윈도, 알림 윈도 및 컴포넌트 별로 상이하게 결정될 수 있다. The electronic device 10 may add setting values of a page, a modal window, a notification window, and components to a predetermined TypeScript structure in response to a user input. In this case, the structure may be determined differently for each page, modal window, notification window, and component.

도 8은 본 발명의 일실시예에 따라 타입스크립트로 작성된 페이지 설정값을 도시하고, 도 9는 본 발명의 일 실시예에 따라 생성된 컴포넌트를 도시하며, 도 10은 도 9의 컴포넌트에 대응하여 타입스크립트로 작성된 컴포넌트 설정값을 도시한다. 8 shows page settings written in TypeScript according to an embodiment of the present invention, FIG. 9 shows components created according to an embodiment of the present invention, and FIG. 10 shows component settings written in TypeScript corresponding to the components of FIG. 9 .

먼저, 도 8을 참조하면, 전자 장치(10)는 기 결정된 타입스크립트 구조체에 페이지의 설정값을 추가할 수 있다. 예를 들어, 전자 장치(10)는 페이지의 고유값(id), 사용자가 생성하는 웹어플리케이션의 고유값(applicationId), 제목(title), 웹상 주소(path), 매개변수 목록(params), 보유 컴포넌트(blocks), 페이지 로드시 발생하는 액션(loadActions), 액션 이후 리턴되는 값(loadedDataSchema), 보유 배너(banners) 등을 포함할 수 있다. 전자 장치(10)는 페이지가 생성됨에 따라 자동으로 보유되는 페이지 고유값(id), 웹어플리케이션 고유값(applicationId) 및 웹상 주소(path) 이외에 사용자 입력에 따라 대응되는 값을 구조체에 추가할 수 있다. First, referring to FIG. 8 , the electronic device 10 may add a setting value of a page to a predetermined TypeScript structure. For example, the electronic device 10 may include a unique value of a page (id), a unique value of a web application created by a user (applicationId), a title (title), a web address (path), a parameter list (params), a retained component (blocks), an action that occurs when a page is loaded (loadActions), a value returned after an action (loadedDataSchema), and retained banners (banners). The electronic device 10 may add a value corresponding to a user input to a structure in addition to a page-specific value (id), a web application-specific value (applicationId), and a web address (path) that are automatically retained as a page is created.

도 9및 도 10을 참조하면, 전자 장치(10)는 기 결정된 타입스크립트 구조체에 컴포넌트의 설정값을 추가할 수 있다. 이때 컴포넌트의 설정값이 추가되는 구조체는 페이지의 구조체와 상이하다. 예를 들어, 전자 장치(10)는 컴포넌트의 고유값(id), 컴포넌트 유형(typeSlug), 속성(props), 보유 사용자 인터페이스 객체(childBlocks), 액션 전달값(value), 라벨(lable), 컴포넌트 클릭시 발생 액션(clickActions) 등을 포함할 수 있다. 도 9에서는 텍스트 사용자 인터페이스 객체(91) 및 이미지 사용자 인터페이스 객체(92)가 생성되었으므로, 도 10을 참조하면, 전자 장치(10)는 텍스트 사용자 인터페이스 객체(91)에 대응하는 제1 보유 사용자 인터페이스 객체(101) 및 제2 보유 사용자 인터페이스 객체(102)를 추가할 수 있다. 이때 추가되는 각 사용자 인터페이스 객체의 구조체는 컴포넌트의 구조체와 유사하므로 자세한 설명은 생략한다. Referring to FIGS. 9 and 10 , the electronic device 10 may add setting values of components to a predetermined TypeScript structure. At this time, the structure in which the setting value of the component is added is different from the structure of the page. For example, the electronic device 10 may include a unique value (id) of a component, a component type (typeSlug), a property (props), a retained user interface object (childBlocks), an action transmission value (value), a label (label), an action generated when a component is clicked (clickActions), and the like. Since the text user interface object 91 and the image user interface object 92 are created in FIG. 9 , referring to FIG. 10 , the electronic device 10 may add a first retained user interface object 101 and a second retained user interface object 102 corresponding to the text user interface object 91. At this time, since the structure of each added user interface object is similar to that of a component, a detailed description thereof will be omitted.

한편, 스벨트 프레임워크로 구현된 프론트엔드는 서버 장치(20)에서 타입스크립트 및 TypeORM(Type Object Relational Mapping)을 이용하여 작성된 네스트 자바스크립트(NestJS) 프레임워크로 구현된 백엔드(backend)와 통신할 수 있다. 여기서 TypeORM은 타입스크립트로 작성된 객체를 분석하여 데이터 베이스 접근을 위한 SQL 쿼리를 작성하는데에 이용될 수 있으며, 네스트 자바스크립트는 많은 라이브러리를 내장하고 플러그인(plugin)을 통한 확정성을 보장하여 서버측 애플리케이션 개발에 유리하다. 서버 장치(20)는 프론트엔드에서 수신된 설정값을 전자 장치(10)의 사용자에 대응하는 데이터 베이스에 저장하고, 프론트엔드에서 요청된 데이터를 상기 데이터 베이스로부터 추출하여 제공할 수 있다. On the other hand, the front end implemented with the Svelte framework can communicate with the backend implemented with the NestJS framework written using TypeScript and TypeORM (Type Object Relational Mapping) in the server device 20. Here, TypeORM can be used to create SQL queries for database access by analyzing objects written in TypeScript, and Nest JavaScript is advantageous for developing server-side applications by incorporating many libraries and guaranteeing finality through plug-ins. The server device 20 may store the setting value received from the front end in a database corresponding to the user of the electronic device 10, and may extract and provide data requested by the front end from the database.

본 발명의 일 실시예에 따른 시스템(1)은 타입스크립트를 이용하여 프론트엔드 및 백엔드를 구현하여 동적 렌더링(Rendering)을 수행함으로써 생성된 웹페이지에 대하여 높은 안정성을 제공할 수 있다. 또한, 본 발명의 일 실시예에 따른 시스템(1)은 프론트엔드에서 전술한 스벨트 이외에 스벨트키트(SvelteKit)를 프레임워크로 더 사용할 수 있으며, 백엔드에서 postgresQL 을 더 사용할 수 있으나, 이에 한정되는 것은 아니다.The system 1 according to an embodiment of the present invention implements a front end and a back end using Type Script to perform dynamic rendering, thereby providing high stability to a generated web page. In addition, system 1 according to an embodiment of the present invention may further use SvelteKit as a framework in addition to the aforementioned Svelte in the front end, and may further use postgresQL in the back end, but is not limited thereto.

한편, 상술한 설명에서 각 단계들은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.Meanwhile, each step in the above description may be further divided into additional steps or combined into fewer steps according to an embodiment of the present invention. Also, some steps may be omitted if necessary, and the order of steps may be changed.

도 11은 본 발명의 일 실시 예에 따른 전자 장치(10)의 구성도이다. 도 11의 전자 장치(10)는, 앞서 도 1 내지 도 10에서 설명된 실시예들과 관련된다. 따라서, 이하 생략된 내용이라 하여도 도 1 내지 도 10에서 앞서 설명된 내용들은, 도 11의 구성에도 적용될 수 있다. 11 is a configuration diagram of an electronic device 10 according to an embodiment of the present invention. The electronic device 10 of FIG. 11 is related to the embodiments described above with reference to FIGS. 1 to 10 . Therefore, even if the contents are omitted below, the contents previously described in FIGS. 1 to 10 may be applied to the configuration of FIG. 11 .

프로세서(111)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.The processor 111 may include one or more cores (not shown) and a graphic processing unit (not shown) and/or a connection path (eg, a bus) for transmitting and receiving signals to and from other components.

일 실시예에 따른 프로세서(111)는 메모리(112)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 1 내지 도 10와 관련하여 설명된 방법을 수행한다. 예를 들어, 프로세서(111)는 웹(web)상 주소가 할당된 페이지(Page)를 생성하고, 페이지 내에서 사용자 입력에 따라 이동하는 커서(Cursor)를 표시하고, 페이지 내에서 제1 위치를 선택하는 제1 사용자 입력이 수신됨에 따라 제1 위치에 대응하는 입력창을 생성하고, 상기 입력창을 통해 모달 윈도(Modal Window), 알림 윈도 및 컴포넌트(Component) 중 적어도 하나를 생성하는 커맨드(command) 입력을 수신한다. 또한, 프로세서(111)는 커맨드 입력이 컴포넌트에 대응하면, 컴포넌트를 생성하여 제1 위치에 표시하고, 컴포넌트 내부에서 제2 위치를 선택하는 제2 사용자 입력에 응답하여, 텍스트(text), 버튼, 이미지 및 인풋창(input window) 중 적어도 하나의 사용자 인터페이스 객체를 생성하기 위한 드롭다운 메뉴(drop-down menu)를 표시하고, 드롭다운 메뉴에서 하나의 사용자 인터페이스 객체를 선택하는 제3 사용자 입력에 응답하여 제2 위치에 선택된 사용자 인터페이스 객체를 표시하고, 화면의 일 측면에 생성된 모달 윈도, 알림 윈도 및 컴포넌트의 설정값을 표시한다. 이때 페이지, 모달 윈도, 알림 윈도 및 컴포넌트의 설정값은 타입스크립트(Typescript)로 작성된 스벨트(Svelte) 프레임워크로 구현된다. Processor 111 according to one embodiment performs the method described with respect to FIGS. 1-10 by executing one or more instructions stored in memory 112 . For example, the processor 111 creates a page to which an address is assigned on the web, displays a cursor moving according to a user input within the page, generates an input window corresponding to the first position as a first user input for selecting a first position within the page is received, and receives a command input for generating at least one of a modal window, a notification window, and a component through the input window. In addition, if the command input corresponds to the component, the processor 111 creates and displays the component at a first location, displays a drop-down menu for generating at least one user interface object of text, buttons, images, and an input window in response to a second user input selecting a second location within the component, displays the selected user interface object at the second location in response to a third user input for selecting one user interface object from the drop-down menu, and displays the selected user interface object on one side of the screen. Displays the created modal window, notification window, and component settings. At this time, the setting values of the page, modal window, notification window, and components are implemented with the Svelte framework written in Typescript.

또한, 프로세서(111)는 커맨드 입력이 모달 윈도에 대응하면, 모달 윈도를 생성하여 제1 위치에 표시하고, 모달 윈도 상단 일측에 활성화된 모달 설정 버튼을 통해 모달 윈도의 색상, 데이터 및 액션 중 적어도 하나를 입력하는 제4 사용자 입력을 수신할 수 있다. In addition, if the command input corresponds to the modal window, the processor 111 may create a modal window, display it at the first position, and receive a fourth user input for inputting at least one of the color, data, and action of the modal window through a modal setting button activated on one side of the top of the modal window.

또한, 프로세서(111)는 커맨드 입력이 알림 윈도에 대응하면, 페이지의 일 측면에 활성화된 알림 설정 버튼을 통해 알림 윈도의 색상, 데이터, 액션 및 닫기 버튼 설정 중 적어도 하나를 입력하는 제5 사용자 입력을 수신할 수 있다. In addition, if the command input corresponds to the notification window, the processor 111 may receive a fifth user input inputting at least one of color, data, action, and close button settings of the notification window through a notification setting button activated on one side of the page.

또한, 프로세서(111)는 페이지 내에서 컴포넌트, 모달 윈도 및 알림 윈도를 이동시키는 사용자 입력에 응답하여 컴포넌트, 모달 윈도 및 알림 윈도의 설정값을 갱신할 수 있다. Also, the processor 111 may update setting values of the component, the modal window, and the notification window in response to a user input for moving the component, the modal window, and the notification window within the page.

한편, 스벨트 프레임워크로 구현된 프론트엔드(frontend)는 서버 장치(20)에서 타입스크립트 및 TypeORM(Type Object Relational Mappling)을 이용하여 작성된 네스트 자바스크립트(NestJS) 프레임워크로 구현된 백엔드(backend)와 통신하며, 서버 장치(20)는 설정값을 전자 장치(10)의 사용자에 대응하는 데이터 베이스에 저장할 수 있다. On the other hand, the frontend implemented with the Svelte framework communicates with the backend implemented with the NestJS framework written using TypeScript and TypeORM (Type Object Relational Mappling) in the server device 20. The server device 20 may store setting values in a database corresponding to the user of the electronic device 10.

또한, 프로세서(111)는 기 결정된 타입스크립트 구조체에 상기 페이지, 상기 모달 윈도, 상기 알림 윈도 및 상기 컴포넌트의 설정값을 추가할 수 있다. 이때 타입스크립트 구조체는 페이지, 모달 윈도, 알림 윈도 및 컴포넌트 별로 상이하게 결정될 수 있다. In addition, the processor 111 may add setting values of the page, the modal window, the notification window, and the components to a predetermined TypeScript structure. At this time, the TypeScript structure may be determined differently for each page, modal window, notification window, and component.

또한, 프로세서(111)는 화면을 호버링(hovering)하는 사용자 입력에 응답하여 '/' 형상을 표시할 수 있다. Also, the processor 111 may display a '/' shape in response to a user input of hovering the screen.

한편, 프로세서(111)는 프로세서(111) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(111)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다. Meanwhile, the processor 111 may further include a RAM (Random Access Memory, not shown) and a ROM (ROM: Read-Only Memory, not shown) that temporarily and/or permanently store signals (or data) processed inside the processor 111. In addition, the processor 111 may be implemented in the form of a system on chip (SoC) including at least one of a graphics processing unit, RAM, and ROM.

메모리(112)에는 프로세서(111)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(1020)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 112 may store programs (one or more instructions) for processing and control of the processor 111 . Programs stored in the memory 1020 may be divided into a plurality of modules according to functions.

통신부(113)는 서버 장치(20) 또는 다른 장치 등과 데이터 송수신하는데에 필요한 적어도 하나의 구성요소를 포함한다. 예를 들어, 통신부(113)는 IP(internet protocol) 통신 회로, 이동 통신 회로, 위성 통신 회로 등을 포함하여 구현될 수 있다. The communication unit 113 includes at least one component necessary for transmitting and receiving data to and from the server device 20 or other devices. For example, the communication unit 113 may be implemented by including an internet protocol (IP) communication circuit, a mobile communication circuit, a satellite communication circuit, and the like.

또한, 전자 장치(10)는 상기의 구성들 이외에, 각 기능에서 처리되는 데이터 등을 표시하고 사용자 입력(예컨대, 마우스 입력, 조이스틱 입력, 터치 등)을 수신하는 디스플레이부(114), 사용자의 음성을 입력받는 마이크(미도시됨) 등을 더 포함할 수 있다. 그러나, 본 발명의 전자 장치(10)가 더 많은 구성요소들을 포함하여 구현될 수 있음은 본 발명의 기술분야의 당업자가 용이하게 이해할 수 있을 것이다.In addition to the above configurations, the electronic device 10 may further include a display unit 114 that displays data processed in each function and receives user input (e.g., mouse input, joystick input, touch, etc.), a microphone (not shown) that receives the user's voice, and the like. However, it will be easily understood by those skilled in the art that the electronic device 10 of the present invention may be implemented by including more components.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.Steps of a method or algorithm described in connection with an embodiment of the present invention may be implemented directly in hardware, implemented in a software module executed by hardware, or implemented by a combination thereof. A software module may reside in random access memory (RAM), read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, a hard disk, a removable disk, a CD-ROM, or any other form of computer-readable recording medium well known in the art.

본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.Components of the present invention may be implemented as a program (or application) to be executed in combination with a computer, which is hardware, and stored in a medium. Components of the present invention may be implemented as software programming or software elements, and similarly, an embodiment may be implemented in a programming or scripting language such as C, C++, Java, assembler, etc., including various algorithms implemented as data structures, processes, routines, or combinations of other programming constructs. Functional aspects may be implemented in an algorithm running on one or more processors.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 또한, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 따라서, 본 발명의 호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an example of the technical idea of the present invention, and various modifications and variations can be made to those skilled in the art without departing from the essential characteristics of the present invention. In addition, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain, and the scope of the technical idea of the present invention is not limited by these embodiments. Therefore, the scope of the present invention should be construed according to the claims below, and all technical ideas within the equivalent range should be construed as being included in the scope of the present invention.

1: 노코드툴 서비스 시스템
10: 전자 장치
20: 서버 장치
1: No-code tool service system
10: electronic device
20: server device

Claims (9)

웹페이지를 생성하는 노코드툴(No-Code Tool) 서비스를 제공하는 전자 장치의 동작 방법에 있어서,
웹(web)상 주소가 할당된 페이지(Page)를 생성하는 단계;
상기 페이지 내에서 사용자 입력에 따라 이동하는 커서(Cursor)를 표시하는 단계;
상기 페이지 내에서 제1 위치를 선택하는 제1 사용자 입력이 수신됨에 따라 상기 제1 위치에 대응하는 입력창을 생성하는 단계;
상기 입력창을 통해 모달 윈도(Modal Window), 알림 윈도 및 컴포넌트(Component) 중 적어도 하나를 생성하는 커맨드(command) 입력을 수신하는 단계;
상기 커맨드 입력이 컴포넌트에 대응하면, 컴포넌트를 생성하여 상기 제1 위치에 표시하고, 상기 컴포넌트 내부에서 제2 위치를 선택하는 제2 사용자 입력에 응답하여, 텍스트(text), 버튼, 이미지 및 인풋창(input window) 중 적어도 하나의 사용자 인터페이스 객체를 생성하기 위한 드롭다운 메뉴(drop-down menu)를 표시하는 단계;
상기 드롭다운 메뉴에서 하나의 사용자 인터페이스 객체를 선택하는 제3 사용자 입력에 응답하여 상기 제2 위치에 상기 선택된 사용자 인터페이스 객체를 표시하는 단계; 및
화면의 일 측면에 상기 페이지, 상기 모달 윈도, 상기 알림 윈도 및 상기 컴포넌트의 설정값을 표시하는 단계를 포함하되,
상기 페이지, 상기 모달 윈도, 상기 알림 윈도 및 상기 컴포넌트의 설정값은 기 결정된 타입스크립트(Typescript) 구조체에 추가되며,
상기 페이지 설정값은 생성되는 웹어플리케이션의 고유값, 제목, 웹상 주소, 매개변수 목록, 보유 컴포넌트, 페이지 로드시 발생하는 액션 및 액션에 따라 리턴되는 값을 포함하며,
상기 컴포넌트의 설정값은 컴포넌트의 고유값, 컴포넌트의 유형, 속성, 보유 사용자 인터페이스 객체, 액션 전달값 및 라벨 값을 포함하며,
상기 기 결정된 타입스크립트 구조체는 타입스크립트로 작성된 스벨트(Svelte) 프레임워크로 구현되고,
상기 스벨트 프레임워크로 구현된 프론트엔드(frontend)는 서버 장치에서 타입스크립트 및 TypeORM(Type Object Relational Mappling)을 이용하여 작성된 네스트 자바스크립트(NestJS) 프레임워크로 구현된 백엔드(backend)와 통신하는 것인 방법.
In the operating method of an electronic device providing a No-Code Tool service for generating a web page,
generating a page to which an address is assigned on the web;
displaying a cursor moving according to a user input within the page;
generating an input window corresponding to the first location when a first user input for selecting a first location within the page is received;
Receiving a command input for generating at least one of a modal window, a notification window, and a component through the input window;
If the command input corresponds to the component, creating and displaying the component at the first location, and in response to a second user input selecting a second location within the component, displaying a drop-down menu for generating at least one user interface object selected from text, buttons, images, and input windows;
displaying the selected user interface object at the second location in response to a third user input for selecting one user interface object from the drop-down menu; and
Displaying the setting values of the page, the modal window, the notification window, and the component on one side of the screen,
The setting values of the page, the modal window, the notification window, and the component are added to a predetermined Typescript structure,
The page setting value includes a unique value of the generated web application, a title, a web address, a parameter list, a retained component, an action that occurs when the page is loaded, and a value returned according to the action,
The setting value of the component includes a unique value of the component, a component type, a property, a retained user interface object, an action transfer value, and a label value,
The predetermined TypeScript structure is implemented with the Svelte framework written in TypeScript,
The frontend implemented with the Svelte framework communicates with a backend implemented with the NestJS framework written using TypeScript and TypeORM (Type Object Relational Mapping) on the server device.
제 1항에 있어서,
상기 커맨드 입력을 수신하는 단계는,
상기 커맨드 입력이 모달 윈도에 대응하면, 모달 윈도를 생성하여 상기 제1 위치에 표시하는 단계; 및
상기 모달 윈도 상단 일측에 활성화된 모달 설정 버튼을 통해 상기 모달 윈도의 색상, 데이터 및 액션 중 적어도 하나를 입력하는 제4 사용자 입력을 수신하는 단계를 포함하는 방법.
According to claim 1,
Receiving the command input,
if the command input corresponds to the modal window, generating a modal window and displaying the modal window at the first location; and
and receiving a fourth user input for inputting at least one of color, data, and action of the modal window through a modal setting button activated on an upper side of the modal window.
제 2 항에 있어서,
상기 커맨드 입력을 수신하는 단계는
상기 커맨드 입력이 알림 윈도에 대응하면, 상기 페이지의 일 측면에 활성화된 알림 설정 버튼을 통해 상기 알림 윈도의 색상, 데이터, 액션 및 닫기 버튼 설정 중 적어도 하나를 입력하는 제5 사용자 입력을 수신하는 단계를 더 포함하는 방법.
According to claim 2,
Receiving the command input
If the command input corresponds to the notification window, receiving a fifth user input for inputting at least one of color, data, action, and close button settings of the notification window through a notification setting button activated on one side of the page.
제 3 항에 있어서, 상기 방법은,
상기 페이지 내에서 상기 컴포넌트, 상기 모달 윈도 및 상기 알림 윈도를 이동시키는 사용자 입력에 응답하여 상기 컴포넌트, 상기 모달 윈도 및 상기 알림 윈도의 설정값을 갱신하는 단계를 더 포함하는 방법.
The method of claim 3, wherein the method,
The method further comprising updating setting values of the component, the modal window, and the notification window in response to a user input for moving the component, the modal window, and the notification window within the page.
삭제delete 삭제delete 제 1 항에 있어서,
상기 커서를 표시하는 단계는,
상기 화면을 호버링(hovering)하는 사용자 입력에 응답하여 '/' 형상을 표시하는 것인 방법.
According to claim 1,
In the step of displaying the cursor,
The method of displaying a '/' shape in response to a user input hovering over the screen.
통신부;
디스플레이부;
하나 이상의 인스트럭션을 저장하는 메모리; 및
상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
제1 항의 방법을 수행하는, 전자 장치.
communications department;
display unit;
a memory that stores one or more instructions; and
a processor to execute the one or more instructions stored in the memory;
By executing the one or more instructions, the processor:
An electronic device performing the method of claim 1 .
하드웨어인 컴퓨터와 결합되어, 제1 항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.A computer program stored in a computer-readable recording medium to be combined with a computer, which is hardware, to perform the method of claim 1.
KR1020230034928A 2023-03-17 2023-03-17 Electronic device providing no-code tool service and method thereof KR102560619B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230034928A KR102560619B1 (en) 2023-03-17 2023-03-17 Electronic device providing no-code tool service and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230034928A KR102560619B1 (en) 2023-03-17 2023-03-17 Electronic device providing no-code tool service and method thereof

Publications (1)

Publication Number Publication Date
KR102560619B1 true KR102560619B1 (en) 2023-07-27

Family

ID=87433150

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230034928A KR102560619B1 (en) 2023-03-17 2023-03-17 Electronic device providing no-code tool service and method thereof

Country Status (1)

Country Link
KR (1) KR102560619B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100110307A (en) * 2007-12-28 2010-10-12 마이크로소프트 코포레이션 Creating and editing dynamic graphics via a web interface
KR101588592B1 (en) * 2014-08-22 2016-02-12 (주)비원이즈 Hybrid application development system based on object relational mapping and the method thereof
KR102397495B1 (en) * 2021-11-17 2022-05-13 (주)에스엠시스템 No code web development and operating system, and service method using of it
KR102482641B1 (en) 2022-09-14 2022-12-29 (주)메타믹스 Nft market construction service system and method based on no-code tool

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100110307A (en) * 2007-12-28 2010-10-12 마이크로소프트 코포레이션 Creating and editing dynamic graphics via a web interface
KR101588592B1 (en) * 2014-08-22 2016-02-12 (주)비원이즈 Hybrid application development system based on object relational mapping and the method thereof
KR102397495B1 (en) * 2021-11-17 2022-05-13 (주)에스엠시스템 No code web development and operating system, and service method using of it
KR102482641B1 (en) 2022-09-14 2022-12-29 (주)메타믹스 Nft market construction service system and method based on no-code tool

Similar Documents

Publication Publication Date Title
CN110795195B (en) Webpage rendering method and device, electronic equipment and storage medium
US20210034336A1 (en) Executing a process-based software application in a first computing environment and a second computing environment
US10303331B2 (en) Live mobile application visual editor demo
CN113536755A (en) Method, device, electronic equipment, storage medium and product for generating poster
KR102560619B1 (en) Electronic device providing no-code tool service and method thereof
CN116719456A (en) Icon style switching method and device, electronic equipment and storage medium
CN116775174A (en) Processing method, device, equipment and medium based on user interface frame
US20160147741A1 (en) Techniques for providing a user interface incorporating sign language
CN113656533A (en) Tree control processing method and device and electronic equipment
CN113407078A (en) Method and device for editing character icon, storage medium and terminal
KR20140114983A (en) A method for providing an application developing tool
CN115730096A (en) Primitive customization method and device, storage medium and computer equipment
KR20140115006A (en) A method for providing an application developing tool and an apparatus using it
KR20140115470A (en) An application developing environment system
KR20140114968A (en) A recording media recognized by computer which is recorded an application developing tool programs
KR20140114995A (en) A method for providing an application developing tool
KR20140115005A (en) A method for providing an application developing tool
KR20140114989A (en) A method for providing an application developing tool
KR20140115002A (en) A method for providing an application developing tool and an apparatus using it
KR20140114999A (en) A method for providing an application developing tool
KR20140114964A (en) A recording media recognized by computer for providing an application developing tool
KR20140114977A (en) A method for providing an application developing tool
KR20140115007A (en) A method for providing an application developing tool
KR20140114991A (en) A method for providing an application developing tool
KR20140115468A (en) An application developing environment system

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant