KR102852202B1 - Service providing method, program and device for generating api with low code - Google Patents
Service providing method, program and device for generating api with low codeInfo
- Publication number
- KR102852202B1 KR102852202B1 KR1020230124468A KR20230124468A KR102852202B1 KR 102852202 B1 KR102852202 B1 KR 102852202B1 KR 1020230124468 A KR1020230124468 A KR 1020230124468A KR 20230124468 A KR20230124468 A KR 20230124468A KR 102852202 B1 KR102852202 B1 KR 102852202B1
- Authority
- KR
- South Korea
- Prior art keywords
- layer
- api
- combination
- layers
- tab
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04817—Interaction 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 using icons
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
로우코드(Low Code)로 API(Application Programming Interface)를 생성하는 서비스 제공 방법은 기본 계층, 기본 계층을 조직화한 조합 계층, 및 조합 계층을 조직화한 API를 포함하는 계층을 정의하는 단계; APP 제공자로부터 계층의 종류 및 순서를 설정받는 단계; APP 제공자가 설정한 계층의 종류 및 순서대로 API를 생성하는 단계; 및 생성된 API에 포함된 계층들을 순차적으로 실행하는 단계;를 포함한다.A service providing method for generating an API (Application Programming Interface) using low code includes a step of defining a layer including a basic layer, a combination layer that organizes the basic layer, and an API that organizes the combination layer; a step of receiving a step of setting the type and order of layers from an APP provider; a step of generating an API according to the type and order of layers set by the APP provider; and a step of sequentially executing the layers included in the generated API.
Description
본 발명은 API를 생성하는 방법에 관한 것으로, 구체적으로, 로우코드를 이용하여 API 생성 서비스를 제공하는 방법, 프로그램, 및 장치에 관한 것이다. The present invention relates to a method for generating an API, and more particularly, to a method, program, and device for providing an API generation service using low code.
최근 소프트웨어나 앱(application)을 개발하는 코딩에 대한 사람들의 관심이 증가하고 있다. 그러나, 코딩으로 소프트웨어나 앱을 개발하는 것은 간단한 일이 아니므로, 전문적인 지식을 갖는 일부 개발자들만이 코딩을 능숙하게 다루며 소프트웨어나 앱을 개발할 수 있었다.Recently, interest in coding for software and application development has been increasing. However, developing software or apps through coding is not a simple task, so only a select few developers with specialized knowledge have been able to master the art of coding and develop software or apps.
그러나, 코딩에 대한 수요가 높아지면서 손쉽게 코딩할 수 있는 도구에 대한 수요가 높아졌다. 이에 대한 새로운 대안으로 로우코드(Low Code)와 노코드(No Code) 방식이 주목받고 있다. 로우코드란 최소한의 코드를 사용해 소프트웨어나 앱을 개발하는 방식이고, 노코드란 코드를 전혀 사용하지 않고 소프트웨어나 앱을 개발하는 방식이다. 이러한 로우코드와 노코드 방식을 통해 소프트웨어나 앱의 개발이 신속해지고 용이해졌다.However, as demand for coding grows, so does the need for tools that facilitate easy coding. Low-code and no-code approaches are gaining attention as new alternatives. Low-code refers to developing software or apps using minimal code, while no-code refers to developing software or apps without using any code at all. These low-code and no-code approaches have made software and app development faster and easier.
따라서, 전문 개발자를 보유하고 있지 않은 기업이나 코딩에 대한 전문적인 지식이 없는 개인을 위해 로우코드나 노코드 방식으로 API를 생성하는 서비스가 제공될 필요성이 존재한다.Therefore, there is a need for a service that creates APIs in a low-code or no-code manner for companies that do not have professional developers or individuals without specialized coding knowledge.
본 발명은 위와 같은 문제점을 해결하기 위하여 제안된 것으로, 로우코드로 API를 생성하는 서비스를 제공함으로써, 보다 용이하고 빠르게 API를 개발하는 방법, 프로그램, 및 장치를 제공하는 것을 목적으로 한다.The present invention has been proposed to solve the above problems, and aims to provide a method, program, and device for developing APIs more easily and quickly by providing a service for generating APIs with low code.
본 발명이 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 포함될 수 있다.The technical problem to be solved by the present invention is not limited to the technical problem mentioned above, and may include various technical problems within a scope obvious to a person skilled in the art from the contents described below.
본 발명의 실시예들에 따른 로우코드(Low Code)로 API(Application Programming Interface)를 생성하는 서비스 제공 방법은 기본 계층, 상기 기본 계층을 조직화한 조합 계층, 및 상기 조합 계층을 조직화한 API를 포함하는 계층을 정의하는 단계; APP 제공자로부터 상기 계층의 종류 및 순서를 설정받는 단계; 상기 APP 제공자가 설정한 상기 계층의 종류 및 순서대로 API를 생성하는 단계; 및 상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하는 단계;를 포함할 수 있다.A service providing method for generating an API (Application Programming Interface) with low code according to embodiments of the present invention may include a step of defining a layer including a basic layer, a combination layer that organizes the basic layer, and an API that organizes the combination layer; a step of receiving a step of setting the type and order of the layers from an APP provider; a step of generating an API according to the type and order of the layers set by the APP provider; and a step of sequentially executing the layers included in the generated API.
일 실시예에서, 상기 API의 로직은 상기 계층의 배치에 따라 달라질 수 있다.In one embodiment, the logic of the API may vary depending on the arrangement of the layers.
일 실시예에서, 상기 기본 계층은 서버에서 실행 가능한 상기 로직의 최소 단위이고, 상기 조합 계층은 복수의 기본 계층의 조합으로 이루어진 계층이며, 상기 API는 복수의 조합 계층의 조합으로 이루어진 계층일 수 있다.In one embodiment, the basic layer is the minimum unit of the logic executable on the server, the combination layer is a layer formed by combining a plurality of basic layers, and the API may be a layer formed by combining a plurality of combination layers.
일 실시예에서, 상기 계층의 데이터 타입은 참조 타입일 수 있다.In one embodiment, the data type of the layer may be a reference type.
일 실시예에서, 상기 로직에 포함된 상기 계층의 종류 및 순서가 달라지는 경우, 런타임(runtime) 중단 없이 상기 API에 적용 가능할 수 있다.In one embodiment, if the types and order of the layers included in the logic change, it can be applied to the API without runtime interruption.
일 실시예에서, 상기 방법은 API 요청 정보를 받는 단계; 상기 API 요청 정보에 대응하는 공유 스토리지를 생성하는 단계; 상기 API 요청 정보를 처리하는 단계; 상기 API 요청 정보에 대한 응답 정보를 전송하는 단계; 및 상기 공유 스토리지를 폐기하는 단계;를 더 포함할 수 있다.In one embodiment, the method may further include the steps of: receiving API request information; creating shared storage corresponding to the API request information; processing the API request information; transmitting response information for the API request information; and discarding the shared storage.
일 실시예에서, 상기 공유 스토리지는 상기 기본 계층에 의해 산출된 값을 저장하고, 동일한 API에 포함된 상기 기본 계층끼리 상기 저장된 값을 공유할 수 있다.In one embodiment, the shared storage stores values produced by the base layer, and the base layers included in the same API can share the stored values.
일 실시예에서, 상기 API를 생성하는 단계는, 계층 조립을 위한 사용자 인터페이스를 제공하는 단계를 더 포함할 수 있다.In one embodiment, the step of generating the API may further include the step of providing a user interface for assembling the layer.
일 실시예에서, 상기 사용자 인터페이스는, 상기 조합 계층 및 상기 API 중 하나를 제공하는 영역인 제1 계층 제공 영역; 및 상기 제1 계층 제공 영역에 포함된 계층보다 낮은 단위의 계층을 제공하는 영역인 제2 계층 제공 영역;을 포함할 수 있다.In one embodiment, the user interface may include a first layer providing area, which is an area providing one of the combination layer and the API; and a second layer providing area, which is an area providing a layer of a lower unit than the layer included in the first layer providing area.
일 실시예에서, 상기 제1 계층 제공 영역에서 제공되는 계층이 상기 조합 계층인 경우 상기 제2 계층 제공 영역에서 제공되는 계층은 상기 기본 계층이고, 상기 제1 계층 제공 영역에서 제공되는 계층이 상기 API인 경우 상기 제2 계층 제공 영역에서 제공되는 계층은 상기 조합 계층일 수 있다.In one embodiment, if the layer provided in the first layer provision area is the combination layer, the layer provided in the second layer provision area may be the base layer, and if the layer provided in the first layer provision area is the API, the layer provided in the second layer provision area may be the combination layer.
일 실시예에서, 상기 제1 계층 제공 영역은 상기 제1 계층 제공 영역에서 제공되는 계층을 참조 타입으로 복사할 수 있는 버튼인 제1 계층 탭을 포함하고, 상기 제2 계층 제공 영역은 상기 제2 계층 제공 영역에서 제공되는 계층을 참조 타입으로 복사할 수 있는 버튼인 제2 계층 탭을 포함할 수 있다.In one embodiment, the first layer providing area may include a first layer tab, which is a button that can copy a layer provided in the first layer providing area as a reference type, and the second layer providing area may include a second layer tab, which is a button that can copy a layer provided in the second layer providing area as a reference type.
일 실시예에서, 상기 사용자 인터페이스는 조립 영역을 더 포함하고, 상기 조립 영역은 상기 서버가 상기 제1 계층 제공 영역에 포함된 상기 제1 계층 탭 및 상기 제2 계층 제공 영역에 포함된 상기 제2 계층 탭에 대한 클릭 또는 드래그를 인식하여 각 계층 탭을 배치하는 영역일 수 있다.In one embodiment, the user interface further includes an assembly area, wherein the assembly area may be an area where the server recognizes a click or drag on the first layer tab included in the first layer provision area and the second layer tab included in the second layer provision area to place each layer tab.
일 실시예에서, 상기 APP 제공자로부터 계층의 종류 및 순서를 설정받는 단계는, 상기 제1 계층 탭에 대한 클릭을 인식하여 상기 제1 계층 제공 영역의 제1 계층 탭을 상기 조립 영역에 배치시키는 단계; 및 상기 제2 계층 탭에 대한 드래그를 인식하여 상기 제2 계층 제공 영역의 제2 계층 탭을 상기 조립 영역에서 상기 제1 계층 탭의 하위에 배치시키는 단계;를 더 포함할 수 있다.In one embodiment, the step of setting the type and order of layers from the APP provider may further include the step of recognizing a click on the first layer tab and placing the first layer tab of the first layer provision area in the assembly area; and the step of recognizing a drag on the second layer tab and placing the second layer tab of the second layer provision area below the first layer tab in the assembly area.
일 실시예에서, 상기 사용자 인터페이스는, 상기 조합 계층 및 상기 API 중 하나를 추가로 등록할 수 있는 버튼인 계층 추가 탭; 및 상기 조합 계층 및 상기 API 중 하나를 선택하여 제1 계층 제공 영역에 표시할 수 있는 버튼들을 포함하는 계층 선택 영역;을 더 포함할 수 있다.In one embodiment, the user interface may further include an add layer tab, which is a button for additionally registering one of the combination layers and the API; and a layer selection area, which includes buttons for selecting one of the combination layers and the API and displaying it in the first layer provision area.
일 실시예에서, 상기 API를 생성하는 단계는, 하나 이상의 기본 계층을 조합하여 상기 조합 계층을 생성하는 단계; 및 하나 이상의 조합 계층을 조합하여 상기 API를 생성하는 단계;를 포함할 수 있다.In one embodiment, the step of generating the API may include: generating the combination layer by combining one or more base layers; and generating the API by combining one or more combination layers.
본 발명의 실시예들에 따른 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램은 장치의 프로세서에서 실행되는 경우, 장치의 프로세서에 의해 로우코드로 API를 생성하는 서비스를 제공하는 단계들을 수행하며, 상기 단계들은: 기본 계층, 상기 기본 계층을 조직화한 조합 계층, 및 상기 조합 계층을 조직화한 API를 포함하는 계층을 정의하는 단계; APP 제공자로부터 상기 계층의 종류 및 순서를 설정받는 단계; 상기 APP 제공자가 설정한 상기 계층의 종류 및 순서대로 API를 생성하는 단계; 및 상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하는 단계;를 포함할 수 있다. According to embodiments of the present invention, a computer program stored in a computer-readable storage medium performs steps for providing a service of generating an API in low code by the processor of the device when executed on a processor of the device, the steps including: defining a layer including a basic layer, a combination layer organizing the basic layer, and an API organizing the combination layer; receiving a step of setting the type and order of the layers from an APP provider; generating an API according to the type and order of the layers set by the APP provider; and sequentially executing the layers included in the generated API.
일 실시예에서, 상기 API의 로직은 상기 계층의 배치에 따라 달라질 수 있다.In one embodiment, the logic of the API may vary depending on the arrangement of the layers.
본 발명의 실시예들에 따른 로우코드로 API를 생성하는 서비스를 제공하는 장치는: 적어도 하나의 프로그램 명령이 저장된 저장부; 및 상기 적어도 하나의 프로그램 명령을 수행하는 프로세서;를 포함하고, 상기 프로세서는, 기본 계층, 상기 기본 계층을 조직화한 조합 계층, 및 상기 조합 계층을 조직화한 API를 포함하는 계층을 정의하고; APP 제공자로부터 상기 계층의 종류 및 순서를 설정받고; 상기 APP 제공자가 설정한 상기 계층의 종류 및 순서대로 API를 생성하고; 그리고 상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행할 수 있다.A device for providing a service for generating an API with low code according to embodiments of the present invention includes: a storage unit storing at least one program command; and a processor for executing the at least one program command; wherein the processor defines a layer including a basic layer, a combination layer organizing the basic layer, and an API organizing the combination layer; receives a type and order of the layers from an APP provider; generates an API according to the type and order of the layers set by the APP provider; and sequentially executes the layers included in the generated API.
일 실시예에서, 상기 API의 로직은 상기 계층의 배치에 따라 달라질 수 있다.In one embodiment, the logic of the API may vary depending on the arrangement of the layers.
본 발명의 실시예들에 따른 로우코드로 API를 생성하는 서비스 제공 방법에 있어서, 서버가 로우코드로 API를 생성하는 서비스를 제공함으로써, APP 제공자는 보다 용이하고 빠르게 API를 생성할 수 있다. 구체적으로, APP 제공자의 관리자는 서버를 통해 로우코드로 클릭 또는 드래그 앤 드롭 방식을 통해 API를 손쉽게 생성 또는 수정할 수 있다. 또한, API는 조직화된 계층을 통해 생성되므로, APP 제공자의 관리자가 각 계층 단위로 수정하거나 변경할 수 있으므로, APP 제공자의 관리자는 개별적인 연산자를 수정하거나 생성할 필요가 없다. 또한, API가 수정이 되는 경우에도 서버는 런타임 중단 없이 API에 적용할 수 있으므로, 서버는 API에 대한 수정 사항을 실시간으로 반영할 수 있다.In a service providing method for generating an API using low-code according to embodiments of the present invention, since the server provides a service for generating an API using low-code, the APP provider can generate an API more easily and quickly. Specifically, the APP provider's administrator can easily create or modify an API using low-code by clicking or dragging and dropping through the server. Furthermore, since the API is generated through an organized hierarchy, the APP provider's administrator can modify or change each hierarchy unit, eliminating the need for the APP provider's administrator to modify or create individual operators. Furthermore, even if an API is modified, the server can apply the modification to the API without runtime interruption, allowing the server to reflect the modification to the API in real time.
다만, 본 발명의 효과가 전술한 효과들에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the effects of the present invention are not limited to the effects described above, and may be expanded in various ways without departing from the spirit and scope of the present invention.
도 1은 본 발명의 실시예들에 따른 로우코드로 API를 생성하는 서비스를 제공하는 시스템의 구성의 실시예를 설명하기 위한 개념도이다.
도 2는 로우코드로 API를 생성하는 서비스 제공 시스템을 구성하는 장치의 구성의 실시예를 도시한 블록도이다.
도 3은 로우코드로 API를 생성하는 서비스 제공 시스템의 실시예를 나타내는 흐름도이다.
도 4는 API 요청 정보를 수신하고 응답 정보를 전송하는 단계의 실시예를 나타내는 흐름도이다.
도 5 내지 도 10은 API의 로직을 생성하기 위한 사용자 인터페이스들을 나타내는 도면들일 수 있다.FIG. 1 is a conceptual diagram illustrating an embodiment of a configuration of a system that provides a service for generating an API with low code according to embodiments of the present invention.
Figure 2 is a block diagram illustrating an embodiment of the configuration of a device that constitutes a service providing system that generates an API with low code.
Figure 3 is a flowchart illustrating an embodiment of a service providing system that generates an API using low code.
Figure 4 is a flowchart illustrating an embodiment of a step of receiving API request information and transmitting response information.
FIGS. 5 to 10 may be drawings showing user interfaces for generating logic of an API.
이하에서는 도면을 참조하여 본 발명에 따른 방법의 다양한 실시예(들)를 상세하게 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. Hereinafter, various embodiments of the method according to the present invention will be described in detail with reference to the drawings. Regardless of the drawing numbers, identical or similar components are given the same reference numbers and redundant descriptions thereof will be omitted.
본 발명의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 본 발명의 하나 이상의 실시예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 적어도 하나의 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. The purposes and effects of the present invention, as well as the technical configurations for achieving them, will become clearer with reference to the embodiments described in detail below, along with the accompanying drawings. In describing one or more embodiments of the present invention, if a detailed description of a related known technology is deemed to obscure the gist of at least one embodiment of the present invention, the detailed description will be omitted.
본 발명의 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로써 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 또한, 첨부된 도면은 본 발명의 하나 이상의 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The terms of the present invention are defined in consideration of the functions of the present invention, and may vary depending on the intention or custom of the user or operator. In addition, the attached drawings are only intended to facilitate the understanding of one or more embodiments of the present invention, and the technical spirit of the present invention is not limited by the attached drawings, and should be understood to include all modifications, equivalents, or substitutes included in the spirit and technical scope of the present invention.
이하의 설명에서 사용되는 구성요소에 대한 접미사 "부"는 본 발명의 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. The suffix "부" for components used in the following description is given or used interchangeably only for the convenience of writing the present invention, and does not have a distinct meaning or role in itself.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소가 될 수도 있다. Terms including ordinal numbers, such as "first" and "second," may be used to describe various components, but these components are not limited by these terms. These terms are used solely to distinguish one component from another. Therefore, a "first" component referred to below may also be a "second" component within the technical scope of the present invention.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 즉, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우, 본 발명과 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다. Singular expressions include plural expressions unless the context clearly indicates otherwise. That is, unless otherwise specified or the context clearly indicates a singular form, the singular should generally be construed as meaning "one or more" in the present invention and claims.
본 발명에서, "포함하는", "포함한다" 또는 "가지다" 등의 용어는 본 발명상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In the present invention, it should be understood that terms such as “comprising,” “including,” or “having” are intended to specify the presence of a feature, number, step, operation, component, part, or combination thereof described in the present invention, but do not exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
본 발명에서 "또는"이라는 용어는 배타적 의미의 "또는"이 아니라 내포적 의미의 "또는"으로 이해되어야 한다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 발명에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다. The term "or" in the present invention should be understood as an inclusive "or" rather than an exclusive "or." That is, unless otherwise specified or clear from context, "X utilizes A or B" is intended to mean either of the natural inclusive permutations. That is, if X utilizes A; X utilizes B; or X utilizes both A and B, "X utilizes A or B" can apply to any of these cases. Furthermore, the term "and/or" as used herein should be understood to refer to and encompass all possible combinations of one or more of the associated items listed.
본 발명에서 사용되는 용어 "정보" 및 "데이터"는 서로 상호 교환 가능하도록 사용될 수 있다. The terms “information” and “data” used in the present invention may be used interchangeably.
다른 정의가 없다면, 본 발명에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명의 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 특별히 정의되어 있지 않는 한 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this invention may be used with meanings commonly understood by those of ordinary skill in the art. Furthermore, terms defined in commonly used dictionaries should not be overly interpreted unless specifically defined otherwise.
그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 단지 본 발명의 몇몇 실시예들은 본 발명의 기술분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 그러므로 그 정의는 본 발명 전반에 걸친 내용을 토대로 내려져야 할 것이다.However, the present invention is not limited to the embodiments disclosed below and can be implemented in various other forms. These specific embodiments are provided solely to fully inform those skilled in the art of the scope of the present invention, and the present invention is defined solely by the scope of the claims. Therefore, such definitions should be based on the overall content of the present invention.
본 발명의 장치의 프로세서는 로우코드로 API를 생성하는 서비스를 제공할 수 있고, 이를 통해 보다 쉽고 빠르게 API를 생성하는 서비스를 제공할 수 있다. 이하에서는 도 1 내지 도 10을 참조하여 로우코드로 API를 생성하는 서비스를 제공하는 방법을 이하 설명한다.The processor of the device of the present invention can provide a service for generating APIs using low-code, thereby enabling easier and faster API generation. A method for providing a service for generating APIs using low-code will be described below with reference to FIGS. 1 to 10.
도 1은 본 발명의 실시예들에 따른 로우코드로 API를 생성하는 서비스를 제공하는 시스템의 구성의 실시예를 설명하기 위한 개념도이다.FIG. 1 is a conceptual diagram illustrating an embodiment of a configuration of a system that provides a service for generating an API with low code according to embodiments of the present invention.
도 1을 참조하면, 로우코드로 API를 생성하는 서비스 제공 시스템은 서버(110)와 네트워크를 통해 서버(110)와 연결되는 사용자 단말(120) 및 서버(110)를 통해 사용자 단말(120)에 API를 제공하는 APP 제공자(130)를 포함할 수 있다.Referring to FIG. 1, a service providing system for generating an API with low code may include a server (110), a user terminal (120) connected to the server (110) via a network, and an APP provider (130) that provides an API to the user terminal (120) via the server (110).
네트워크는 서버(110)와 사용자 단말(120) 및 APP 제공자(130) 상호 간의 정보를 교환하기 위한 연결 구조를 의미할 수 있다. 네트워크는 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 3G, 4G, LTE(long term evolution), VoLTE(voice over LTE), 5G NR(new radio) Wi-Fi(wireless-fidelity), 블루투스(Bluetooth), NFC, RFID (radio frequency identification) 홈 네트워크(home network), IoT(internet of things) 등을 포함할 수 있다. A network may refer to a connection structure for exchanging information between a server (110), a user terminal (120), and an APP provider (130). The network may include the Internet, a Local Area Network (LAN), a Wireless Local Area Network (Wireless LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), 3G, 4G, LTE (long term evolution), VoLTE (voice over LTE), 5G NR (new radio), Wi-Fi (wireless-fidelity), Bluetooth, NFC, RFID (radio frequency identification), a home network, and the Internet of Things (IoT).
서버(110)는 로우코드 방식을 통해 API를 생성하는 서비스를 제공할 수 있다. 예를 들어, 서버(110)는 API 게이트웨이일 수 있다. The server (110) may provide a service for generating APIs using a low-code method. For example, the server (110) may be an API gateway.
APP 제공자(130)는 네트워크를 통해 서버(110)와 연결될 수 있다. APP 제공자(130)는 서버(110)를 통해 API를 생성하고, 생성된 API를 서버(110)를 통해 사용자 단말(120)에 제공할 수 있다. 또한, APP 제공자(130) 또는 상기 APP 제공자(130)의 관리자는 API를 새로 생성하거나 수정할 때에만 서버(110)에 접속해서 API를 새로 생성하거나 수정할 수 있다. The APP provider (130) can be connected to the server (110) via a network. The APP provider (130) can create an API via the server (110) and provide the created API to the user terminal (120) via the server (110). In addition, the APP provider (130) or the administrator of the APP provider (130) can connect to the server (110) to create or modify the API only when creating or modifying a new API.
구체적으로, APP 제공자(130)의 애플리케이션과 서버(110)가 연결될 수 있다. 이때, APP 제공자(130)의 애플리케이션은 서버(110)에 API를 요청하고, API를 제공받을 수 있다. 이를 통해 사용자 단말(120)은 서버(110)에 의해 생성된 API를 수신할 수 있다.Specifically, an application of an APP provider (130) and a server (110) may be connected. At this time, the application of the APP provider (130) may request an API from the server (110) and receive the API. Through this, the user terminal (120) may receive the API generated by the server (110).
따라서, APP 제공자(130)는 서버(110)를 통해 쉽고 빠르게 API를 생성 또는 수정하고, 생성되거나 수정된 API를 사용자 단말(120)에 제공할 수 있다.Accordingly, the APP provider (130) can easily and quickly create or modify an API through the server (110) and provide the created or modified API to the user terminal (120).
사용자 단말(120)은 네트워크를 통해 서버(110)와 연결될 수 있다. 사용자 단말(120)은 컴퓨터, 태블릿, 스마트폰과 같은 사용자 장치(user equipment)를 포함할 수 있다. 사용자 단말(120)은 APP 제공자(130)의 애플리케이션에 접속하여 서버(110)를 통해 제공되는 API를 이용할 수 있다.A user terminal (120) may be connected to a server (110) via a network. The user terminal (120) may include user equipment such as a computer, tablet, or smartphone. The user terminal (120) may access an application of an APP provider (130) and utilize an API provided by the server (110).
도 1의 서버(110), 사용자 단말(120) 및 APP 제공자(130)는 장치로 지칭될 수 있으며, 장치의 구성은 아래에 설명하는 바와 같을 수 있다. The server (110), user terminal (120), and APP provider (130) of FIG. 1 may be referred to as a device, and the configuration of the device may be as described below.
도 2는 로우코드로 API를 생성하는 서비스 제공 시스템을 구성하는 장치의 구성의 실시예를 도시한 블록도이다. Figure 2 is a block diagram illustrating an embodiment of the configuration of a device that constitutes a service providing system that generates an API with low code.
시스템에 포함된 장치(200)는, 적어도 하나의 프로세서(210) 및 적어도 하나의 프로세서(210)가 적어도 하나의 단계를 수행하도록 지시하는 명령(instructions)을 저장하는 데이터베이스(220)를 포함할 수 있다.A device (200) included in the system may include at least one processor (210) and a database (220) that stores instructions for directing at least one processor (210) to perform at least one step.
프로세서(210)는 데이터베이스(220)에 저장된 적어도 하나의 프로그램 명령을 수행할 수 있다. 프로세서(210)는 응용 프로그램과 관련된 동작 외에도 통상적으로 장치(200)의 전반적인 동작을 제어할 수 있다. 프로세서(210)는 장치(200)의 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 데이터베이스(220)에 저장된 응용 프로그램을 구동함으로써, 적절한 정보 또는 기능을 제공 또는 처리할 수 있다. The processor (210) can execute at least one program command stored in the database (220). In addition to operations related to the application program, the processor (210) can typically control the overall operation of the device (200). The processor (210) can provide or process appropriate information or functions by processing signals, data, information, etc. input or output through components of the device (200) or by operating an application program stored in the database (220).
프로세서(210)는 데이터베이스(220)에 저장된 응용 프로그램을 구동하기 위하여 장치(200)의 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 프로세서(210)는 응용 프로그램의 구동을 위하여 장치(200)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.The processor (210) can control at least some of the components of the device (200) to drive an application program stored in the database (220). Furthermore, the processor (210) can operate at least two or more of the components included in the device (200) in combination to drive the application program.
프로세서(210)는 하나 이상의 코어로 구성될 수 있으며, 다양한 상용 프로세서들 중 임의의 프로세서일 수 있다. 예를 들어, 프로세서(210)는 장치의 중앙 처리 장치(CPU: Central Processing Unit), 범용 그래픽 처리 장치 (GPGPU: General Purpose Graphics Processing Unit), 텐서 처리 장치(TPU: Tensor Processing Unit) 등을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The processor (210) may be configured with one or more cores and may be any of various commercially available processors. For example, the processor (210) may include a central processing unit (CPU), a general purpose graphics processing unit (GPGPU), a tensor processing unit (TPU), etc. of the device. However, the present disclosure is not limited thereto.
데이터베이스(220)는, 장치(200)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 데이터베이스(220)는 장치(200)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 장치(200)의 동작을 위한 데이터들, 명령어들, 및 적어도 하나의 프로그램 명령을 저장할 수 있다. 한편, 응용 프로그램은, 데이터베이스(220)에 저장되고, 장치(200) 상에 설치되어 프로세서(210)에 의하여 장치(200)의 동작(또는 기능)을 수행하도록 구동될 수 있다. The database (220) can store data that supports various functions of the device (200). The database (220) can store a plurality of application programs (or applications) running on the device (200), data for the operation of the device (200), commands, and at least one program command. Meanwhile, the application programs can be stored in the database (220), installed on the device (200), and driven by the processor (210) to perform the operation (or function) of the device (200).
캐시 메모리(230)는 데이터베이스(220)와 프로세서(210) 사이에서 보다 빠른 전달을 위해 데이터베이스(220)의 일부 데이터들을 미리 저장할 수 있다. 캐시 메모리(230)는 프로세서(210)와 데이터베이스(220) 사이에서 데이터를 고속으로 전달함으로써, 프로세서(210)와 데이터베이스(220)의 속도 차이로 인한 병목 현상을 줄일 수 있다. 즉, 장치(200)는 API 생성 및 수정을 위한 정보를 캐시 메모리(230)에 저장할 수 있다. 이를 통해 프로세서(210)는 API를 생성하거나 수정할 때 캐시 메모리(230)에 액세스함으로써, 캐시 메모리(230)로부터 보다 빠르게 데이터를 가져올 수 있다.The cache memory (230) can store some data of the database (220) in advance for faster transmission between the database (220) and the processor (210). The cache memory (230) can reduce bottlenecks caused by speed differences between the processor (210) and the database (220) by transmitting data between the processor (210) and the database (220) at high speed. That is, the device (200) can store information for creating and modifying APIs in the cache memory (230). Through this, the processor (210) can access the cache memory (230) when creating or modifying APIs, thereby retrieving data from the cache memory (230) more quickly.
통신부(240)는 장치(200)와 유선/무선 통신 시스템 사이, 장치(200)와 다른 장치 사이 또는 장치(200)와 외부 서버 사이의 유선/무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 통신부(240)는 장치(200)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다. The communication unit (240) may include one or more modules that enable wired/wireless communication between the device (200) and a wired/wireless communication system, between the device (200) and another device, or between the device (200) and an external server. In addition, the communication unit (240) may include one or more modules that connect the device (200) to one or more networks.
본 개시에서 장치(200)에 포함된 각각의 구성요소들은 통신부(240)를 통해 서로 통신할 수 있고, 장치(200)는 통신부(240)를 통해 사용자 단말 및 다른 장치와 통신이 연결될 수 있다. 여기서, 사용자 단말은 API 요청 정보를 전송하는 단말기를 의미할 수 있고, 다른 장치는 API 서비스를 제공하고자 하는 고객 서버를 의미할 수 있다.In the present disclosure, each component included in the device (200) can communicate with each other through the communication unit (240), and the device (200) can be connected to a user terminal and other devices through the communication unit (240). Here, the user terminal may refer to a terminal that transmits API request information, and the other device may refer to a customer server that wishes to provide an API service.
로우코드로 API를 생성하는 서비스 제공 시스템에 포함된 서버가 실행하는 알고리즘 및 동작들은 아래에 설명하는 바와 같을 수 있다.The algorithms and operations executed by the server included in the service provision system that generates APIs with low code may be as described below.
도 3은 로우코드로 API를 생성하는 서비스 제공 시스템의 실시예를 나타내는 흐름도이다.Figure 3 is a flowchart illustrating an embodiment of a service providing system that generates an API using low code.
도 3을 참조하면, S301 단계에서, 서버(310)는 기본 계층, 조합 계층, API, 및 APP을 정의할 수 있다. Referring to FIG. 3, in step S301, the server (310) can define a base layer, a combination layer, an API, and an APP.
기본 계층은 서버(310)에서 실행 가능한 로직의 최소 단위일 수 있다. 기본 계층은 변수 선언, 할당, 조건, 반복 및 단위 연산을 나타내는 연산자일 수 있다.The base layer may be the smallest unit of logic executable on the server (310). The base layer may be an operator representing variable declaration, assignment, condition, repetition, and unit operation.
조합 계층은 제1 조합 계층 및 제2 조합 계층을 포함할 수 있다. 제1 조합 계층은 기본 계층을 조직화한 계층이다. 즉, 제1 조합 계층은 기본 연산자인 기본 계층을 조합해서 생성된 최소 단위 로직인 함수를 의미할 수 있다. 또한, 제1 조합 계층은 API의 로직에서 재사용 가능한 최소 계층일 수 있다. 즉, 제1 조합 계층 및 제1 조합 계층보다 상위 계층 단위로 API 로직 내에서 재사용될 수 있다. 다시 말하면, 서버(310) 또는 APP 제공자(320)는 API 로직 내에서 재사용되는 기본 계층을 조직화하여 제1 조합 계층을 생성하고, 이후에 필요할 때마다 저장된 제1 조합 계층을 불러와서 사용할 수 있다. 예를 들어, 제1 조합 계층은 변수 초기화 모듈, 헤더 전문 변환 모듈, 및 응답 모듈 등이 있다.The combination layer may include a first combination layer and a second combination layer. The first combination layer is a layer that organizes the basic layers. That is, the first combination layer may refer to a function, which is the minimum unit of logic created by combining the basic layers, which are basic operators. In addition, the first combination layer may be a minimum layer that can be reused in the logic of the API. That is, it can be reused within the API logic as a unit of the first combination layer and a layer higher than the first combination layer. In other words, the server (310) or the APP provider (320) organizes the basic layers that are reused within the API logic to create the first combination layer, and can then retrieve and use the stored first combination layer whenever necessary. For example, the first combination layer may include a variable initialization module, a header conversion module, and a response module.
제2 조합 계층은 제1 조합 계층을 조직화한 계층일 수 있다. 즉, 제2 조합 계층은 연속적인 함수들을 포함하는 템플릿일 수 있다. 또한, 제2 조합 계층은 API의 로직을 생성하기 위한 일반적인 계층 및 오류를 처리하기 위한 오류 계층을 포함할 수 있다. 오류 계층은 API의 로직에 필수적인 부분은 아니나, 오류 계층이 있는 경우에는 API의 로직의 실행 중 오류가 나더라도 오류 계층이 이를 처리할 수 있다. 예를 들어, 제2 조합 계층은 EAI(Enterprise Application Integration) 호출 API 템플릿 등이 있다.The second composition layer may be a layer that organizes the first composition layer. That is, the second composition layer may be a template containing sequential functions. Furthermore, the second composition layer may include a general layer for generating the API's logic and an error layer for handling errors. The error layer is not essential to the API's logic, but if present, it can handle errors that occur during the execution of the API's logic. For example, the second composition layer may include an EAI (Enterprise Application Integration) call API template.
API는 제2 조합 계층을 조직화한 계층일 수 있다. 예를 들어, API는 계좌 목록 조회 API, 계좌 잔액 조회 API, 및 타행 이체 API 등이 있다. 마지막으로, APP은 API를 조직화한 계층일 수 있다. 예를 들어, APP은 안드로이드 앱 및 iOS 앱 등이 있다.APIs can be a layer that organizes the second layer of integration. For example, APIs include account list query APIs, account balance query APIs, and interbank transfer APIs. Finally, APPs can be a layer that organizes APIs. For example, APPs include Android and iOS apps.
즉, 제1 조합 계층은 복수의 기본 계층의 조합으로 이루어진 계층일 수 있고, 제2 조합 계층은 복수의 제1 조합 계층의 조합으로 이뤄진 계층일 수 있으며, API는 복수의 제2 조합 계층의 조합으로 이루어진 계층일 수 있다. 서버(310)는 위와 같이 계층을 정의하고, 정의된 계층을 기초로 API를 생성할 수 있다.That is, the first combination layer may be a layer formed by combining multiple base layers, the second combination layer may be a layer formed by combining multiple first combination layers, and the API may be a layer formed by combining multiple second combination layers. The server (310) may define layers as described above and generate an API based on the defined layers.
또한, 기본 계층, 조합 계층, 및 API를 포함하는 계층의 데이터 타입은 참조 타입일 수 있다. 따라서, 서버(310)는 API에 포함된 일부 계층이 바뀌는 경우 등과 같이 변경 사항이 생기는 경우에도 데이터를 효율적으로 공유하고 관리할 수 있다.Additionally, the data types of the layers including the base layer, the composite layer, and the API can be reference types. Accordingly, the server (310) can efficiently share and manage data even when changes occur, such as when some layers included in the API are changed.
서버(310)는 제1 조합 계층, 제2 조합 계층, API, 및 APP에 대한 정보를 JSON(JavaScript Object Notation) 형식으로 데이터베이스(예를 들어, 도 2의 데이터베이스(220))에 저장할 수 있다. 서버(310)는 제1 조합 계층, 제2 조합 계층, API, 및 APP에 대한 정보를 데이터베이스에서 초기에 캐시 메모리(예를 들어, 도 2의 캐시 메모리(230))에 로딩할 수 있다. 따라서, 서버(310)가 이후에 사용자 단말로부터 API 요청 정보를 수신하는 경우, 서버(310)는 캐시 메모리에서 API 요청 정보 관련 데이터를 가져올 수 있다.The server (310) can store information about the first combination layer, the second combination layer, the API, and the APP in a JSON (JavaScript Object Notation) format in a database (e.g., the database (220) of FIG. 2). The server (310) can initially load information about the first combination layer, the second combination layer, the API, and the APP from the database into a cache memory (e.g., the cache memory (230) of FIG. 2). Accordingly, when the server (310) later receives API request information from a user terminal, the server (310) can retrieve data related to the API request information from the cache memory.
S303 단계에서, APP 제공자(320)는 서버(310)가 제공하는 사용자 인터페이스를 통해 API의 로직을 생성할 수 있다. 즉, APP 제공자(320)는 사용자 인터페이스를 통해 계층들을 배치하여 API의 로직을 생성할 수 있다. 다시 말하면, 서버(310)는 APP 제공자(320)로부터 계층의 종류 및 순서를 설정받을 수 있다. 이때, API의 로직은 계층의 종류 및 순서, 즉, 계층의 배치에 따라 달라질 수 있다.In step S303, the APP provider (320) can generate the API logic through the user interface provided by the server (310). That is, the APP provider (320) can generate the API logic by arranging layers through the user interface. In other words, the server (310) can receive the type and order of layers from the APP provider (320). At this time, the API logic may vary depending on the type and order of layers, i.e., the arrangement of the layers.
S305 단계에서, 서버(310)는 APP 제공자(320)가 설정한 계층의 종류 및 순서대로 API를 생성할 수 있다. 구체적으로, 서버(310)는 APP 제공자(320)가 설정한대로 하나 이상의 기본 계층을 조합하여 제1 조합 계층을 생성하고, 하나 이상의 제1 조합 계층을 조합하여 제2 조합 계층을 생성할 수 있다. 또한, 서버(310)는 하나 이상의 제2 조합 계층을 조합하여 API를 생성할 수 있다. 즉, 서버(310)는 하위 계층의 조합으로 상위 계층을 생성하는 것을 반복하여 최종적으로 API를 생성할 수 있다.In step S305, the server (310) can generate an API according to the type and order of layers set by the APP provider (320). Specifically, the server (310) can generate a first combination layer by combining one or more base layers as set by the APP provider (320), and can generate a second combination layer by combining one or more first combination layers. In addition, the server (310) can generate an API by combining one or more second combination layers. In other words, the server (310) can repeatedly generate an upper layer by combining lower layers to finally generate an API.
API가 생성된 경우, 서버(310)는 데이터베이스 및 캐시 메모리에 저장된 데이터를 모두 갱신할 수 있다. 또한, 서버(310)는 주기적으로 데이터베이스와 캐시 메모리 간의 데이터 불일치를 검사할 수 있다. 이를 통해 서버(310)는 데이터베이스와 캐시 메모리 간의 데이터 불일치를 보정할 수 있다.When an API is created, the server (310) can update both the data stored in the database and cache memory. Furthermore, the server (310) can periodically check for data inconsistencies between the database and cache memory. This allows the server (310) to correct any data inconsistencies between the database and cache memory.
S307 단계에서, 서버(310)는 생성된 API를 배포할 수 있다. 따라서, APP 제공자(320)는 배포된 API를 서버(310)를 통해 사용자 단말에 제공할 수 있다.In step S307, the server (310) can distribute the generated API. Accordingly, the APP provider (320) can provide the distributed API to the user terminal through the server (310).
S309 단계에서, 서버(310)는 사용자 단말로부터 전달된 특정 자극을 인식한 경우, 생성된 API에 포함된 계층들을 순차적으로 실행할 수 있다. 예를 들어, 특정 자극이란, 서버(310)가 사용자 단말로부터 API 요청 정보를 받는 것을 의미할 수 있다. 이에 따라, 서버(310)는 API 요청 정보를 처리하며, API에 포함된 계층들을 순차적으로 실행할 수 있다. 서버(310)는 API 요청 정보에 대한 응답 정보를 사용자 단말에게 전송할 수 있다.In step S309, if the server (310) recognizes a specific stimulus transmitted from the user terminal, it may sequentially execute the layers included in the generated API. For example, the specific stimulus may mean that the server (310) receives API request information from the user terminal. Accordingly, the server (310) processes the API request information and sequentially executes the layers included in the API. The server (310) may transmit response information regarding the API request information to the user terminal.
S311 단계에서, APP 제공자(320)는 서버(310)가 제공하는 사용자 인터페이스를 통해 API의 로직을 수정할 수 있다. 즉, APP 제공자(320)는 사용자 인터페이스를 통해 계층들의 배치를 변경하여 API의 로직을 수정할 수 있다. 따라서, API의 로직은 변경된 계층의 배치에 따라 달라질 수 있다.At step S311, the APP provider (320) can modify the API logic through the user interface provided by the server (310). That is, the APP provider (320) can modify the API logic by changing the arrangement of layers through the user interface. Accordingly, the API logic may vary depending on the changed arrangement of layers.
S313 단계에서, 서버(310)는 APP 제공자(320)가 수정한 계층의 종류 및 순서대로 API를 생성할 수 있다. 구체적으로, 서버(310)는 APP 제공자가 수정한대로 적어도 하나의 계층을 변경할 수 있다. 서버(310)는 API가 수정된 경우, 데이터베이스 및 캐시 메모리에 저장된 데이터를 모두 갱신할 수 있다.At step S313, the server (310) can generate an API based on the type and order of layers modified by the APP provider (320). Specifically, the server (310) can modify at least one layer as modified by the APP provider. If the API is modified, the server (310) can update all data stored in the database and cache memory.
S315 단계에서, 서버(310)는 수정된 API를 실시간으로 배포할 수 있다. 따라서, APP 제공자(320)는 수정된 API를 서버(310)를 통해 사용자 단말에 제공할 수 있다.At step S315, the server (310) can distribute the modified API in real time. Accordingly, the APP provider (320) can provide the modified API to the user terminal through the server (310).
S317 단계에서, 서버(310)는 사용자 단말로부터 특정 자극을 인식한 경우, 수정된 API에 포함된 계층들을 순차적으로 실행할 수 있다. 예를 들어, 특정 자극이란, 서버(310)가 사용자 단말로부터 새로운 API 요청 정보를 받는 것을 의미할 수 있다. 이에 따라, 서버(310)는 API 요청 정보를 처리하며, 실시간으로 수정된 API에 포함된 계층들을 순차적으로 실행할 수 있다. 서버(310)는 수정된 API에 포함된 계층들을 순차적으로 실행함으로써, API 요청 정보에 대한 응답 정보를 사용자 단말에게 전송할 수 있다.In step S317, if the server (310) recognizes a specific stimulus from the user terminal, it may sequentially execute the layers included in the modified API. For example, the specific stimulus may mean that the server (310) receives new API request information from the user terminal. Accordingly, the server (310) processes the API request information and sequentially executes the layers included in the modified API in real time. By sequentially executing the layers included in the modified API, the server (310) may transmit response information regarding the API request information to the user terminal.
즉, 계층의 데이터 타입이 참조 타입이므로, API의 로직에 포함된 계층의 종류 및 순서가 변경되어 달라지는 경우에도 서버(310)는 이러한 변경 사항을 실시간으로 반영할 수 있다. 또한, 서버(310)는 런타임(runtime) 중단 없이 변경 사항을 API의 로직에 바로 적용할 수 있다. 즉, 서버(310)의 중지 없이 변경된 API 로직이 실시간으로 동기화되어 배포될 수 있다. 따라서, 서버(310)는 변경 직후에 사용자 단말로부터 API 요청 정보를 수신하는 경우에도 수정된 API에 포함된 계층들을 순차적으로 실행할 수 있다.That is, since the data type of the layer is a reference type, even if the type and order of the layers included in the API logic are changed, the server (310) can reflect such changes in real time. In addition, the server (310) can immediately apply the changes to the API logic without runtime interruption. In other words, the changed API logic can be synchronized and distributed in real time without stopping the server (310). Accordingly, even if the server (310) receives API request information from a user terminal immediately after a change, it can sequentially execute the layers included in the modified API.
또한, 예를 들어, 서버(310)가 하나의 서버가 아닌 이중화 서버인 경우에도, 이중화 서버 간에 변경 사항을 통신을 통해서 동기화시킬 수 있다.Additionally, for example, even if the server (310) is a dual server rather than a single server, changes can be synchronized between the dual servers through communication.
위에서 설명한 바와 같이 사용자 단말로부터 API 요청 정보를 수신해서 API 요청 정보에 대응하는 응답 정보를 전송하는 구체적인 알고리즘 및 동작들은 아래에 설명하는 바와 같을 수 있다.As described above, the specific algorithms and operations for receiving API request information from a user terminal and transmitting response information corresponding to the API request information may be as described below.
도 4는 API 요청 정보를 수신하고 응답 정보를 전송하는 단계의 실시예를 나타내는 흐름도이다.Figure 4 is a flowchart illustrating an embodiment of a step of receiving API request information and transmitting response information.
도 4를 참조하면, S401 단계에서, 서버(410)는 사용자 단말(420)로부터 API 요청 정보를 수신할 수 있다. 즉, 서버(410)는 사용자 단말(420)로부터 API 요청 정보라는 특정 자극을 수신할 수 있다. 예를 들어, API 요청 정보는 HTTP API 요청 정보일 수 있다. 다만, 본 발명은 이에 한정되지 않는다.Referring to FIG. 4, in step S401, the server (410) may receive API request information from the user terminal (420). That is, the server (410) may receive a specific stimulus called API request information from the user terminal (420). For example, the API request information may be HTTP API request information. However, the present invention is not limited thereto.
S403 단계에서, 서버(410)는 API 요청 정보에 대응하는 공유 스토리지를 생성할 수 있다. 서버(410)는 API 요청 정보에 대응하여 하나의 API에 하나의 공유 스토리지를 생성할 수 있다.In step S403, the server (410) may create shared storage corresponding to the API request information. The server (410) may create one shared storage for one API corresponding to the API request information.
공유 스토리지는 API의 로직에 포함된 기본 계층에 의해 산출된 값을 저장할 수 있다. 또한, 동일한 API 로직에 포함된 기본 계층끼리 공유 스토리지에 저장된 값을 서로 공유할 수 있다. 즉, 동일한 API에 포함된 기본 계층들은 공유 스토리지에 산출된 값을 저장하고, 또 저장된 값을 불러올 수 있다. 이에 따라 서버(410)는 기본 계층 자체에 값을 저장하지 않아도 공유 스토리지를 통해 API의 로직에 포함된 기본 계층에 따른 연산을 순차적으로 수행할 수 있다.Shared storage can store values produced by the basic layer included in the API's logic. Furthermore, basic layers included in the same API logic can share the values stored in the shared storage. In other words, basic layers included in the same API can store and retrieve the produced values in the shared storage. Accordingly, the server (410) can sequentially perform operations based on the basic layer included in the API's logic through the shared storage, without having to store the values in the basic layer itself.
S405 단계에서, 서버(410)는 API 요청 정보를 처리할 수 있다. 이때, 서버(410)는 API에 포함된 계층들을 순차적으로 실행할 수 있다.At step S405, the server (410) can process API request information. At this time, the server (410) can sequentially execute the layers included in the API.
구체적으로, 서버(410)는 캐시 메모리에서 API에 대한 룩업을 할 수 있다. 이후, 서버(410)는 캐시 메모리에서 API에 포함된 제2 조합 계층에 대한 룩업을 할 수 있다. 이후, 서버(410)는 캐시 메모리에서 제2 조합 계층에 포함된 제1 조합 계층에 대한 룩업을 할 수 있다. 마지막으로, 서버(410)는 캐시 메모리에서 제1 조합 계층에 포함된 기본 계층에 대한 룩업을 할 수 있다. Specifically, the server (410) may perform a lookup for the API in the cache memory. Thereafter, the server (410) may perform a lookup for the second combination layer included in the API in the cache memory. Thereafter, the server (410) may perform a lookup for the first combination layer included in the second combination layer in the cache memory. Finally, the server (410) may perform a lookup for the base layer included in the first combination layer in the cache memory.
즉, 서버(410)는 캐시 메모리에서 API를 검색하거나 호출하고, 이후, API에 포함된 제2 조합 계층을 검색하거나 호출하며, 이후, 제2 조합 계층에 포함된 제1 조합 계층을 검색하거나 호출하고, 마지막으로, 제1 조합 계층에 포함된 기본 계층을 검색하거나 호출할 수 있다. That is, the server (410) can retrieve or call an API from the cache memory, then retrieve or call a second combination layer included in the API, then retrieve or call a first combination layer included in the second combination layer, and finally retrieve or call a base layer included in the first combination layer.
다시 말하면, 서버(410)는 API에서부터 기본 계층까지 순차적으로 룩업(lookup)하며, 상위 계층에서부터 하위 계층 방향으로 룩업할 수 있고, 최종적으로 가장 하위 계층인 기본 계층을 순차적으로 실행할 수 있다.In other words, the server (410) sequentially looks up from the API to the base layer, can look up from the upper layer to the lower layer, and can sequentially execute the base layer, which is the lowest layer.
S407 단계에서, 서버(410)는 API 요청 정보에 대한 응답 정보를 사용자 단말(420)에 전송할 수 있다. 사용자 단말(420)은 출력부를 통해 응답 정보를 표시할 수 있다.In step S407, the server (410) can transmit response information for API request information to the user terminal (420). The user terminal (420) can display the response information through an output unit.
S409 단계에서, 서버(410)는 공유 스토리지를 폐기할 수 있다. 공유 스토리지는 API에 대한 응답 정보를 생성할 때 API의 로직에 포함된 기본 계층들끼리 데이터(값)를 공유하기 위해 생성된 것으로써, 서버(410)는 API 요청 정보에 대한 응답 종료 시 공유 스토리지를 폐기할 수 있다.At step S409, the server (410) may discard shared storage. Shared storage is created to share data (values) between basic layers included in the API's logic when generating response information for the API. The server (410) may discard shared storage when the response to the API request information is terminated.
위에서 설명한 바와 같이 API의 로직을 생성하기 위한 사용자 인터페이스들은 아래에 설명하는 바와 같을 수 있다.As described above, the user interfaces for creating the logic of the API may be as described below.
도 5 내지 도 10은 API의 로직을 생성하기 위한 사용자 인터페이스들을 나타내는 도면들일 수 있다.FIGS. 5 to 10 may be drawings showing user interfaces for generating logic of an API.
도 5를 참조하면, 서버는 APP 제공자에게 계층 조립을 위한 사용자 인터페이스(500)를 제공할 수 있다. APP 제공자는 API 로직을 생성하거나 수정할 때 서버에 접속해서 서버가 제공하는 사용자 인터페이스(500)를 통해 API 로직을 생성하거나 수정할 수 있다.Referring to FIG. 5, the server may provide the APP provider with a user interface (500) for layer assembly. When creating or modifying API logic, the APP provider may access the server and create or modify the API logic through the user interface (500) provided by the server.
사용자 인터페이스(500)는 제1 계층 제공 영역(510), 제2 계층 제공 영역(520), 및 조립 영역(530)을 포함할 수 있다.The user interface (500) may include a first layer providing area (510), a second layer providing area (520), and an assembly area (530).
제1 계층 제공 영역(510)은 조합 계층 및 API 중 하나를 제공하는 영역일 수 있다. 제2 계층 제공 영역(520)은 제1 계층 제공 영역(510)에 포함된 계층보다 낮은 단위의 계층을 제공하는 영역일 수 있다. 구체적으로, 제1 계층 제공 영역(510)에서 제공되는 계층이 조합 계층인 경우, 제2 계층 제공 영역(520)에서 제공되는 계층은 기본 계층일 수 있다. 제1 계층 제공 영역(510)에서 제공되는 계층이 API인 경우, 제2 계층 제공 영역(520)에서 제공되는 계층은 조합 계층 또는 기본 계층일 수 있다.The first layer provision area (510) may be an area that provides one of a combination layer and an API. The second layer provision area (520) may be an area that provides a layer of a lower unit than the layer included in the first layer provision area (510). Specifically, if the layer provided in the first layer provision area (510) is a combination layer, the layer provided in the second layer provision area (520) may be a base layer. If the layer provided in the first layer provision area (510) is an API, the layer provided in the second layer provision area (520) may be a combination layer or a base layer.
예를 들어, 제1 계층 제공 영역(510)에서 제공되는 계층이 제1 조합 계층인 경우, 제2 계층 제공 영역(520)에서 제공되는 계층은 기본 계층일 수 있다. 제1 계층 제공 영역(510)에서 제공되는 계층이 제2 조합 계층인 경우, 제2 계층 제공 영역(520)에서 제공되는 계층은 제1 조합 계층일 수 있다. 제1 계층 제공 영역(510)에서 제공되는 계층이 API인 경우, 제2 계층 제공 영역(520)에서 제공되는 계층은 제2 조합 계층일 수 있다. 제1 계층 제공 영역(510)에서 제공되는 계층이 APP인 경우, 제2 계층 제공 영역(520)에서 제공되는 계층은 API일 수 있다.For example, if the layer provided in the first layer provision area (510) is the first combination layer, the layer provided in the second layer provision area (520) may be the base layer. If the layer provided in the first layer provision area (510) is the second combination layer, the layer provided in the second layer provision area (520) may be the first combination layer. If the layer provided in the first layer provision area (510) is an API, the layer provided in the second layer provision area (520) may be the second combination layer. If the layer provided in the first layer provision area (510) is an APP, the layer provided in the second layer provision area (520) may be an API.
또한, 제1 계층 제공 영역(510)은 제1 계층 탭(512)을 포함할 수 있고, 제2 계층 제공 영역(520)은 제2 계층 탭(522)을 포함할 수 있다. 제1 계층 탭(512)은 제1 계층 제공 영역(510)에서 제공되는 계층을 참조 타입으로 복사할 수 있는 버튼이며, 제2 계층 탭(522)은 제2 계층 제공 영역(520)에서 제공되는 계층을 참조 타입으로 복사할 수 있는 버튼일 수 있다. 즉, 제1 계층 탭(512)은 제1 계층 제공 영역(510)에서 제공되는 계층을 얕은 복사로 가져올 수 있는 버튼이며, 계층 탭(522)은 제2 계층 제공 영역(520)에서 제공되는 계층을 얕은 복사로 가져올 수 있는 버튼일 수 있다.In addition, the first layer provision area (510) may include a first layer tab (512), and the second layer provision area (520) may include a second layer tab (522). The first layer tab (512) may be a button that can copy a layer provided in the first layer provision area (510) as a reference type, and the second layer tab (522) may be a button that can copy a layer provided in the second layer provision area (520) as a reference type. That is, the first layer tab (512) may be a button that can bring a layer provided in the first layer provision area (510) as a shallow copy, and the layer tab (522) may be a button that can bring a layer provided in the second layer provision area (520) as a shallow copy.
제1 계층 탭(512)은 공통되는 기능에 따라 그룹화되어 제1 계층 제공 영역(510)에 표시될 수 있으며, 제2 계층 탭(522) 또한 공통되는 기능에 따라 그룹화되어 제2 계층 제공 영역(520)에 표시될 수 있다. 이를 통해 APP 제공자의 관리자는 필요한 제1 계층 탭(512) 및 제2 계층 탭(522)을 보다 빠르게 찾을 수 있다.The first layer tabs (512) may be grouped according to common functions and displayed in the first layer provision area (510), and the second layer tabs (522) may also be grouped according to common functions and displayed in the second layer provision area (520). This allows the administrator of the APP provider to more quickly find the required first layer tabs (512) and second layer tabs (522).
APP 제공자의 관리자는 코딩을 직접 할 필요 없이 제1 계층 제공 영역(510)의 제1 계층 탭(512) 중 하나를 클릭하여 코드를 불러올 수 있다. 마찬가지로, APP 제공자의 관리자는 제1 계층 탭(512)의 하위 계층의 코딩을 직접 할 필요가 없으며, 제2 계층 제공 영역(520)의 제2 계층 탭(522) 중 하나를 드래그하여 코드를 불러올 수 있다.An administrator of an APP provider can retrieve code by clicking on one of the first layer tabs (512) of the first layer provision area (510) without having to code directly. Similarly, an administrator of an APP provider can retrieve code by dragging one of the second layer tabs (522) of the second layer provision area (520) without having to code directly in the lower layers of the first layer tab (512).
조립 영역(530)은 서버가 계층 제공 영역(510, 520)에 포함된 계층 탭(512, 522)에 대한 클릭 또는 드래그를 인식하여 각 계층 탭(512, 522)을 배치하는 영역일 수 있다. 즉, 조립 영역(530)은 제1 계층 제공 영역(510)에 포함된 제1 계층 탭(512) 및 제2 계층 제공 영역(520)에 포함된 제2 계층 탭(522)에 대한 클릭 또는 드래그를 인식하여 제1 계층 탭(512') 및 제2 계층 탭(522')을 배치하는 영역일 수 있다.The assembly area (530) may be an area where the server recognizes a click or drag on the layer tabs (512, 522) included in the layer provision area (510, 520) and places each layer tab (512, 522). That is, the assembly area (530) may be an area where the server recognizes a click or drag on the first layer tab (512) included in the first layer provision area (510) and the second layer tab (522) included in the second layer provision area (520) and places the first layer tab (512') and the second layer tab (522').
서버는 사용자 인터페이스(500)를 통해 APP 제공자의 관리자로부터 계층의 종류 및 순서를 설정받을 수 있다. 구체적으로, APP 제공자의 관리자가 제1 계층 탭(512)을 클릭하는 경우, 서버는 제1 계층 탭(512)에 대한 클릭을 인식하여 제1 계층 제공 영역(510)의 제1 계층 탭(512)을 조립 영역(530)에 배치시킬 수 있다. The server can receive the type and order of layers from the administrator of the APP provider through the user interface (500). Specifically, when the administrator of the APP provider clicks the first layer tab (512), the server can recognize the click on the first layer tab (512) and place the first layer tab (512) of the first layer provision area (510) in the assembly area (530).
이때, 조립 영역(530)에 배치되는 제1 계층 탭(512')은 다양한 계층으로 표시될 수 있다. 예를 들어, 조립 영역(530)에 배치되는 제1 계층 탭(512')은 제1 계층 제공 영역(510)에서 제공되는 계층으로 표시될 수 있다. 다른 예를 들어, 제1 계층 제공 영역(510)에서 제공되는 계층은 제2 계층 제공 영역(520)에서 제공되는 계층의 순서적인 조합이므로, 조립 영역(530)에 배치되는 제1 계층 탭(512')은 제2 계층 제공 영역(520)에서 제공되는 계층으로 표시될 수 있다. At this time, the first layer tab (512') placed in the assembly area (530) may be displayed in various layers. For example, the first layer tab (512') placed in the assembly area (530) may be displayed as a layer provided in the first layer provision area (510). For another example, since the layers provided in the first layer provision area (510) are a sequential combination of the layers provided in the second layer provision area (520), the first layer tab (512') placed in the assembly area (530) may be displayed as a layer provided in the second layer provision area (520).
이후, APP 제공자의 관리자가 제2 계층 탭(522)을 조립 영역(530)으로 드래그하는 경우, 서버는 제2 계층 탭(522)에 대한 드래그를 인식하여 제2 계층 제공 영역(520)의 제2 계층 탭(522')을 조립 영역(530)에서 제1 계층 탭(512')의 하위에 배치시킬 수 있다.Thereafter, when the administrator of the APP provider drags the second layer tab (522) to the assembly area (530), the server can recognize the drag for the second layer tab (522) and place the second layer tab (522') of the second layer provision area (520) below the first layer tab (512') in the assembly area (530).
이때, 상위 계층에 대응되는 제1 계층 탭(512')이 조립 영역(530)에 우선적으로 배치될 수 있다. 이후, 하위 계층에 대응되는 제2 계층 탭(522')이 조립 영역(530)에서 제1 계층 탭(512')의 하위에 배치될 수 있다.At this time, the first layer tab (512') corresponding to the upper layer may be preferentially placed in the assembly area (530). Thereafter, the second layer tab (522') corresponding to the lower layer may be placed below the first layer tab (512') in the assembly area (530).
도 5를 참조하면, 제1 계층 제공 영역(510)이 제공하는 계층이 제1 조합 계층이고, 제2 계층 제공 영역(520)이 제공하는 계층이 기본 계층일 수 있다. 이 경우, APP 제공자의 관리자는 API의 로직에 필요한 제1 계층 제공 영역(510)의 제1 계층 탭(512)을 클릭하여 조립 영역(530)에 배치시킬 수 있다. Referring to FIG. 5, the layer provided by the first layer provision area (510) may be the first combination layer, and the layer provided by the second layer provision area (520) may be the basic layer. In this case, the administrator of the APP provider may click the first layer tab (512) of the first layer provision area (510) required for the API logic and place it in the assembly area (530).
APP 제공자의 관리자는 API의 로직에 필요한 제2 계층 탭(522')을 드래그하여 조립 영역(530)의 제1 계층 탭(512')의 하위에 배치시킬 수 있다. 즉, APP 제공자의 관리자는 기존의 제1 계층 탭(512)의 하위에 배치된 제2 계층 탭(522) 외에 만들고자 하는 API의 로직에 필요한 제2 계층 탭(522)을 추가로 배치시킬 수 있다. 이와 달리, APP 제공자의 관리자는 만들고자 하는 API의 로직에 맞게 기존의 제1 계층 탭(512')의 하위에 배치된 제2 계층 탭(522')을 삭제할 수도 있다.The administrator of the APP provider can drag the second layer tab (522') required for the logic of the API and place it under the first layer tab (512') of the assembly area (530). That is, the administrator of the APP provider can additionally place the second layer tab (522) required for the logic of the API to be created in addition to the second layer tab (522) placed under the existing first layer tab (512). Alternatively, the administrator of the APP provider can delete the second layer tab (522') placed under the existing first layer tab (512') to suit the logic of the API to be created.
도 6을 더 참조하면, 서버가 조립 영역(530)에 제2 계층 탭(522')이 배치된 것을 인식하는 경우, 제2 계층 탭(522')을 제1 계층 탭(512') 하위로 배치시키기 위해 필요한 추가 정보를 입력하는 제1 정보 입력 탭(610)을 팝업으로 표시할 수 있다. APP 제공자의 관리자는 제1 정보 입력 탭(610)에서 필수로 입력하는 란을 기재해야만 제2 계층 탭(522')을 제1 계층 탭(512')의 하위에 추가할 수 있다.Referring further to FIG. 6, when the server recognizes that a second layer tab (522') is placed in the assembly area (530), it may display a first information input tab (610) as a pop-up for entering additional information required to place the second layer tab (522') under the first layer tab (512'). The administrator of the APP provider must fill in the required fields in the first information input tab (610) to add the second layer tab (522') under the first layer tab (512').
이때, 필요한 추가 정보는 기본 계층이 동작하기 위해 필요한 피연산자 값, 기본 계층이 동작함으로 인해 산출된 값이 저장되는 공간 등을 포함할 수 있다. 다만, 본 발명은 이에 한정되지 않는다.At this time, the additional information required may include operand values required for the base layer to operate, space for storing values produced by the base layer to operate, etc. However, the present invention is not limited thereto.
다시 도 5를 참조하면, 사용자 인터페이스(500)는 변경 사항을 저장할 수 있는 버튼인 저장 탭(560)을 포함할 수 있다. APP 제공자의 관리자가 로직을 변경하거나 생성한 후 저장 탭(560)을 클릭하는 경우, 서버는 로직의 변경 사항 및 생성 사항을 캐시 메모리에 저장할 수 있다.Referring again to FIG. 5, the user interface (500) may include a Save tab (560), which is a button for saving changes. When an administrator of the APP provider changes or creates logic and then clicks the Save tab (560), the server may store the changes and creations in the logic in cache memory.
또한, 사용자 인터페이스(500)는 계층 추가 탭(540) 및 계층 선택 영역(550)을 더 포함할 수 있다. Additionally, the user interface (500) may further include an add layer tab (540) and a layer selection area (550).
도 7을 더 참조하면, 계층 추가 탭(540)은 조합 계층, API, 및 APP 중 하나를 추가로 등록할 수 있는 버튼일 수 있다. 서버가 계층 추가 탭(540)에 대한 클릭을 인식하는 경우, 제1 계층 탭(512')을 추가하기 위해 필요한 추가 정보를 입력하는 제2 정보 입력 탭(710)을 팝업으로 표시할 수 있다. APP 제공자의 관리자는 제2 정보 입력 탭(710)에서 필수로 입력하는 란을 기재해야만 제1 계층 탭(512')을 제1 계층 제공 영역(510)에 추가할 수 있다.Referring further to FIG. 7, the Add Layer tab (540) may be a button that allows for additional registration of one of a combination layer, an API, and an APP. When the server recognizes a click on the Add Layer tab (540), it may display a pop-up second information input tab (710) for entering additional information required to add a first layer tab (512'). The administrator of the APP provider must fill in the required fields in the second information input tab (710) to add the first layer tab (512') to the first layer provision area (510).
이때, 필요한 추가 정보는 각 계층마다 상이할 수 있다. 예를 들어, APP 제공자가 입력한 대로 서버가 제1 조합 계층에 대한 계층 탭을 추가하는 경우, 필요한 추가 정보는 해당 제1 조합 계층을 식별할 수 있는 계층 탭의 이름, 해당 제1 조합 계층의 고유한 번호 등을 포함할 수 있다. At this time, the required additional information may vary for each layer. For example, if the server adds a layer tab for the first combination layer as input by the APP provider, the required additional information may include the name of the layer tab that identifies the first combination layer, a unique number for the first combination layer, etc.
APP 제공자가 입력한 대로 서버가 제2 조합 계층에 대한 계층 탭을 추가하는 경우, 필요한 추가 정보는 해당 제2 조합 계층을 식별할 수 있는 계층 탭의 이름, 해당 제2 조합 계층의 고유한 번호, 및 해당 제2 조합 계층이 일반적인 계층인지 오류 계층인지 여부 등을 포함할 수 있다.When the server adds a layer tab for a second combination layer as input by the APP provider, the additional information required may include a name of the layer tab that can identify the second combination layer, a unique number for the second combination layer, and whether the second combination layer is a normal layer or an error layer.
APP 제공자가 입력한 대로 서버가 API에 대한 계층 탭을 추가하는 경우, 필요한 추가 정보는 해당 API를 식별할 수 있는 계층 탭의 이름, 해당 API의 고유한 번호, 외부에서 접속하기 위한 URL, 및 해당 API와 관련된 파라미터 등을 포함할 수 있다.When the server adds a layer tab to an API as entered by the APP provider, the additional information required may include the name of the layer tab that identifies the API, a unique number for the API, a URL for accessing it externally, and parameters associated with the API.
APP 제공자가 입력한 대로 서버가 APP에 대한 계층 탭을 추가하는 경우, 필요한 추가 정보는 해당 APP을 식별할 수 있는 계층 탭의 이름, 해당 APP의 고유한 번호, 및 해당 APP과 관련된 파라미터 등을 포함할 수 있다.When the server adds a layer tab for an APP as entered by the APP provider, the additional information required may include the name of the layer tab that can identify that APP, a unique number for that APP, and parameters related to that APP.
도 5를 다시 참조하면, 계층 선택 영역(550)은 조합 계층, API, 및 APP 중 하나를 선택해서 제1 계층 제공 영역(510)에 표시할 수 있는 버튼들을 포함할 수 있다.Referring back to FIG. 5, the layer selection area (550) may include buttons that can select one of the combination layers, API, and APP to be displayed in the first layer provision area (510).
즉, 계층 선택 영역(550)은 제1 조합 계층에 대응되는 계층 탭을 제1 계층 제공 영역(510)에 표시하는 제1 계층 선택 탭(552), 제2 조합 계층에 대응되는 계층 탭을 제1 계층 제공 영역(510)에 표시하는 제2 계층 선택 탭(554), API에 대응되는 계층 탭을 제1 계층 제공 영역(510)에 표시하는 제3 계층 선택 탭(556), 및 APP에 대응되는 계층 탭을 제1 계층 제공 영역(510)에 표시하는 제4 계층 선택 탭(558)을 포함할 수 있다.That is, the layer selection area (550) may include a first layer selection tab (552) that displays a layer tab corresponding to the first combination layer in the first layer provision area (510), a second layer selection tab (554) that displays a layer tab corresponding to the second combination layer in the first layer provision area (510), a third layer selection tab (556) that displays a layer tab corresponding to the API in the first layer provision area (510), and a fourth layer selection tab (558) that displays a layer tab corresponding to the APP in the first layer provision area (510).
서버는 제1 계층 선택 탭(552)에 대한 클릭을 인식한 경우, 제1 계층 제공 영역(510)에 제1 조합 계층에 대응되는 제1 계층 탭(512)을 표시하고, 제2 계층 제공 영역(520)에 기본 계층에 대응되는 제2 계층 탭(522)을 표시할 수 있다.When the server recognizes a click on the first layer selection tab (552), it can display a first layer tab (512) corresponding to the first combination layer in the first layer provision area (510) and a second layer tab (522) corresponding to the base layer in the second layer provision area (520).
도 8을 참조하면, 서버는 계층 선택 영역(850)에서 제2 계층 선택 탭(854)에 대한 클릭을 인식한 경우, 사용자 인터페이스(800)에 제1 계층 제공 영역(810)에 제2 조합 계층에 대응되는 제1 계층 탭(812)을 표시하고, 제2 계층 제공 영역(820)에 제1 조합 계층에 대응되는 제2 계층 탭(822)을 표시할 수 있다.Referring to FIG. 8, when the server recognizes a click on the second layer selection tab (854) in the layer selection area (850), the server can display a first layer tab (812) corresponding to the second combination layer in the first layer provision area (810) of the user interface (800), and can display a second layer tab (822) corresponding to the first combination layer in the second layer provision area (820).
도 9를 참조하면, 서버는 계층 선택 영역(950)에서 제3 계층 선택 탭(956)에 대한 클릭을 인식한 경우, 사용자 인터페이스(900)에 제1 계층 제공 영역(910)에 API에 대응되는 제1 계층 탭(912)을 표시하고, 제2 계층 제공 영역(920)에 제2 조합 계층에 대응되는 제2 계층 탭(922)을 표시할 수 있다.Referring to FIG. 9, when the server recognizes a click on the third layer selection tab (956) in the layer selection area (950), the server can display a first layer tab (912) corresponding to the API in the first layer provision area (910) of the user interface (900), and can display a second layer tab (922) corresponding to the second combination layer in the second layer provision area (920).
도 10을 참조하면, 서버는 계층 선택 영역(1050)에서 제4 계층 선택 탭(1058)에 대한 클릭을 인식한 경우, 사용자 인터페이스(1000)에 제1 계층 제공 영역(1010)에 APP에 대응되는 제1 계층 탭(1012)을 표시하고, 제2 계층 제공 영역(1020)에 API에 대응되는 제2 계층 탭(1022)을 표시할 수 있다.Referring to FIG. 10, when the server recognizes a click on the fourth layer selection tab (1058) in the layer selection area (1050), the server can display a first layer tab (1012) corresponding to the APP in the first layer provision area (1010) of the user interface (1000), and can display a second layer tab (1022) corresponding to the API in the second layer provision area (1020).
또한, 도 8 내지 도 10을 참조하면, 각 사용자 인터페이스(800, 900, 1000)는 계층 추가 탭(840, 940, 1040) 및 저장 탭(860, 960, 1060)을 더 포함할 수 있다. 따라서, APP 제공자는 계층 추가 탭(840, 940, 1040)을 통해 선택된 계층에 대응되는 계층 탭을 추가할 수 있고, 저장 탭(860, 960, 1060)을 통해 생성 사항 및 변경 사항을 저장할 수 있다.Additionally, referring to FIGS. 8 to 10, each user interface (800, 900, 1000) may further include an Add Layer tab (840, 940, 1040) and a Save tab (860, 960, 1060). Accordingly, the APP provider may add a layer tab corresponding to a selected layer through the Add Layer tab (840, 940, 1040), and may save creations and changes through the Save tab (860, 960, 1060).
본 발명의 실시예들에 있어서, 서버가 로우코드로 API를 생성하는 서비스를 제공함으로써, APP 제공자는 보다 용이하고 빠르게 API를 생성할 수 있다. 구체적으로, APP 제공자의 관리자는 서버를 통해 로우코드로 클릭 또는 드래그 앤 드롭 방식을 통해 API를 손쉽게 생성 또는 수정할 수 있다. 또한, API는 조직화된 계층을 통해 생성되므로, APP 제공자의 관리자가 각 계층 단위로 수정하거나 변경할 수 있으므로, APP 제공자의 관리자는 개별적인 연산자를 수정하거나 생성할 필요가 없다. 또한, API가 수정이 되는 경우에도 서버는 런타임 중단 없이 API에 적용할 수 있으므로, 서버는 API에 대한 수정 사항을 실시간으로 반영할 수 있다. In embodiments of the present invention, by providing a service that allows the server to generate APIs using low-code, APP providers can more easily and quickly create APIs. Specifically, the APP provider's administrator can easily create or modify APIs using low-code methods, such as clicks or drag-and-drop, via the server. Furthermore, since APIs are created through organized hierarchies, the APP provider's administrator can modify or change each layer individually, eliminating the need to modify or create individual operators. Furthermore, even when APIs are modified, the server can apply them without runtime interruption, allowing the server to reflect API modifications in real time.
다만, 상술한 예들은 예시들에 불과할 뿐 본 발명은 상술한 예시들에 한정되는 것은 아니다. However, the above-described examples are merely examples and the present invention is not limited to the above-described examples.
본 발명에서 시스템 및 장치는 상기 설명된 몇몇 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 몇몇 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.In the present invention, the system and device are not limited to the configuration and method of the several embodiments described above, but the several embodiments may be configured by selectively combining all or some of the embodiments so that various modifications can be made.
본 발명에서 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 디바이스로 읽을 수 있는 기록매체 내에서 구현될 수 있다. The various embodiments described in the present invention may be implemented in a recording medium readable by a computer or similar device, for example, using software, hardware, or a combination thereof.
하드웨어적인 구현에 의하면, 여기에 설명되는 몇몇 실시예는 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays, 프로세서, 제어기, 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 발명에서 설명되는 몇몇 실시예가 프로세서로 구현될 수 있다.In terms of hardware implementation, some embodiments described herein may be implemented using at least one of application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, and other electrical units for performing functions. In some cases, some embodiments described herein may be implemented using a processor.
소프트웨어적인 구현에 의하면, 본 발명에서 설명되는 절차 및 기능과 같은 몇몇 실시예는 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 발명에서 설명되는 하나 이상의 기능, 태스크 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 애플리케이션으로 소프트웨어 코드(software code)가 구현될 수 있다. 여기서, 소프트웨어 코드는, 저장부에 저장되고, 프로세서에 의해 실행될 수 있다. 즉, 적어도 하나의 프로그램 명령이 저장부에 저장되어 있고, 적어도 하나의 프로그램 명령이 프로세서에 의해 실행될 수 있다. In a software implementation, some embodiments, such as the procedures and functions described in the present invention, may be implemented as separate software modules. Each software module may perform one or more functions, tasks, and operations described in the present invention. The software code may be implemented as a software application written in a suitable programming language. Here, the software code may be stored in a storage unit and executed by a processor. That is, at least one program instruction is stored in the storage unit, and at least one program instruction may be executed by the processor.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 및 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. The methods according to the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, and data structures, either singly or in combination. The program instructions recorded on the computer-readable medium may be those specifically designed and constructed for the present invention, or may be known and usable by those skilled in the art of computer software.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 및 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media include hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include not only machine language codes generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the present invention has been described with reference to the above embodiments, it will be understood by those skilled in the art that various modifications and changes can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below.
Claims (19)
서버에서 실행 가능한 로직의 최소 단위인 기본 계층, 복수의 상기 기본 계층의 조합으로 이루어진 조합 계층, 및 복수의 상기 조합 계층의 조합으로 이루어진 API를 포함하는 계층을 정의하는 단계;
APP 제공자로부터 상기 계층의 종류 및 순서를 설정받는 단계;
상기 APP 제공자가 설정한 상기 계층의 종류 및 순서대로 API를 생성하는 단계; 및
상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하는 단계;를 포함하며,
상기 조합 계층은 상기 기본 계층을 조합해서 생성된 함수를 의미하는 제1 조합 계층을 포함하고,
상기 기본 계층, 상기 조합 계층, 및 상기 API를 포함하는 계층의 데이터 타입은 참조 타입인,
방법.In a service providing method for generating an API (Application Programming Interface) with low code executed by a server processor,
A step of defining a layer including a basic layer, which is the minimum unit of logic executable on a server, a combination layer formed by a combination of a plurality of the basic layers, and an API formed by a combination of a plurality of the combination layers;
A step of receiving the type and order of the above layers from the APP provider;
A step of generating an API according to the type and order of the layers set by the APP provider; and
A step of sequentially executing the layers included in the generated API;
The above combination layer includes a first combination layer that means a function generated by combining the above basic layers,
The data types of the layer including the above basic layer, the above combination layer, and the above API are reference types.
method.
상기 제1 조합 계층 및 상기 API에 대한 정보를 데이터베이스에 저장하는 단계; 및
상기 제1 조합 계층 및 상기 API에 대한 정보를 데이터베이스에서 캐시 메모리에 로딩하는 단계;를 더 포함하고,
상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하는 단계는,
상기 캐시 메모리에서 상기 API에서부터 상기 기본 계층까지 상위 계층에서부터 하위 계층 방향으로 순차적으로 룩업(lookup)하는 단계;를 포함하는,
방법.In the first paragraph,
A step of storing information about the first combination layer and the API in a database; and
Further comprising a step of loading information about the first combination layer and the API from a database into a cache memory;
The step of sequentially executing the layers included in the above generated API is:
A step of sequentially looking up from the upper layer to the lower layer from the API to the basic layer in the cache memory;
method.
주기적으로 상기 데이터베이스 및 상기 캐시 메모리 간의 데이터 불일치를 검사하는 단계;를 더 포함하는,
방법.In the third paragraph,
Further comprising a step of periodically checking for data inconsistency between the database and the cache memory;
method.
API 요청 정보를 받는 단계;
상기 API 요청 정보에 대응하는 공유 스토리지를 생성하는 단계;
상기 API 요청 정보를 처리하는 단계;
상기 API 요청 정보에 대한 응답 정보를 전송하는 단계; 및
상기 공유 스토리지를 폐기하는 단계;를 더 포함하고,
상기 공유 스토리지는 동일한 API에 포함된 기본 계층끼리 공유되는 것인,
방법.In the first paragraph,
Step of receiving API request information;
A step of creating shared storage corresponding to the above API request information;
A step of processing the above API request information;
A step of transmitting response information for the above API request information; and
further comprising a step of discarding the shared storage;
The above shared storage is shared between the basic layers included in the same API.
method.
상기 API를 생성하는 단계는,
계층 조립을 위한 사용자 인터페이스를 제공하는 단계를 더 포함하고,
상기 사용자 인터페이스는,
제1 계층 탭을 표시하는 제1 계층 제공 영역;
제1 계층 탭에 대응되는 계층의 하위 계층에 대응되는 제2 계층 탭을 표시하는 제2 계층 제공 영역; 및
상기 제1 계층 탭 및 상기 제2 계층 탭에 대한 클릭 또는 드래그를 인식하여 상기 제1 계층 탭 및 상기 제2 계층 탭을 배치하는 조립 영역을 포함하는,
방법.In the first paragraph,
The steps to create the above API are:
Further comprising the step of providing a user interface for assembling the hierarchy;
The above user interface,
A first-tier provision area that displays the first-tier tab;
A second layer provision area that displays a second layer tab corresponding to a lower layer of a layer corresponding to a first layer tab; and
Including an assembly area that recognizes a click or drag on the first layer tab and the second layer tab and places the first layer tab and the second layer tab.
method.
상기 조립 영역에 상기 제2 계층 탭이 배치된 것을 인식하는 경우, 상기 제2 계층 탭을 상기 제1 계층 탭의 하위로 배치시키기 위해 필요한 추가 정보를 입력하는 제1 정보 입력 탭을 표시하는 단계;를 더 포함하는,
방법.In paragraph 8,
Further comprising a step of displaying a first information input tab for inputting additional information required to place the second layer tab under the first layer tab when recognizing that the second layer tab is placed in the assembly area;
method.
서버에서 실행 가능한 로직의 최소 단위인 기본 계층, 복수의 상기 기본 계층의 조합으로 이루어진 조합 계층, 및 복수의 상기 조합 계층의 조합으로 이루어진 API를 포함하는 계층을 정의하는 단계;
APP 제공자로부터 상기 계층의 종류 및 순서를 설정받는 단계;
상기 APP 제공자가 설정한 상기 계층의 종류 및 순서대로 API를 생성하는 단계; 및
상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하는 단계;를 포함하고,
상기 조합 계층은 상기 기본 계층을 조합해서 생성된 함수를 의미하는 제1 조합 계층을 포함하고,
상기 기본 계층, 상기 조합 계층, 및 상기 API를 포함하는 계층의 데이터 타입은 참조 타입인,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.A computer program stored in a computer-readable storage medium, wherein when the computer program is executed on a processor of a device, the computer program performs steps for providing a service of generating an API in low code by the processor of the device, the steps comprising:
A step of defining a layer including a basic layer, which is the minimum unit of logic executable on a server, a combination layer formed by a combination of a plurality of the basic layers, and an API formed by a combination of a plurality of the combination layers;
A step of receiving the type and order of the above layers from the APP provider;
A step of generating an API according to the type and order of the layers set by the APP provider; and
A step of sequentially executing the layers included in the generated API;
The above combination layer includes a first combination layer that means a function generated by combining the above basic layers,
The data types of the layer including the above basic layer, the above combination layer, and the above API are reference types.
A computer program stored on a computer-readable storage medium.
데이터베이스; 및
상기 데이터베이스에 저장된 적어도 하나의 프로그램 명령을 수행하는 프로세서;를 포함하고,
상기 적어도 하나의 프로그램 명령은,
서버에서 실행 가능한 로직의 최소 단위인 기본 계층, 복수의 상기 기본 계층의 조합으로 이루어진 조합 계층, 및 복수의 상기 조합 계층의 조합으로 이루어진 API를 포함하는 계층을 정의하고;
APP 제공자로부터 상기 계층의 종류 및 순서를 설정받고;
상기 APP 제공자가 설정한 상기 계층의 종류 및 순서대로 API를 생성하고; 그리고
상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하도록 상기 프로세서에 의해 실행되며,
상기 조합 계층은 상기 기본 계층을 조합해서 생성된 함수를 의미하는 제1 조합 계층을 포함하고,
상기 기본 계층, 상기 조합 계층, 및 상기 API를 포함하는 계층의 데이터 타입은 참조 타입인,
장치.In a device that provides a service for generating an API with low code, the device:
database; and
a processor for performing at least one program command stored in the database;
At least one program command above,
Define a layer including a basic layer, which is the minimum unit of logic executable on a server, a combination layer formed by a combination of a plurality of the basic layers, and an API formed by a combination of a plurality of the combination layers;
Obtain the type and order of the above layers from the APP provider;
Generate an API in the type and order of the above layers set by the above APP provider; and
It is executed by the processor to sequentially execute the layers included in the generated API,
The above combination layer includes a first combination layer that means a function generated by combining the above basic layers,
The data types of the layer including the above basic layer, the above combination layer, and the above API are reference types.
device.
상기 프로세서와 상기 데이터베이스 사이에서 데이터를 고속으로 전달하는 캐시 메모리;를 더 포함하고,
상기 적어도 하나의 프로그램 명령은,
상기 제1 조합 계층 및 상기 API에 대한 정보를 데이터베이스에 저장하고,
상기 제1 조합 계층 및 상기 API에 대한 정보를 데이터베이스에서 캐시 메모리에 로딩하도록 상기 프로세서에 의해 더 실행되며,
상기 생성된 API에 포함된 상기 계층들을 순차적으로 실행하도록 상기 프로세서에 의해 실행될 때,
상기 캐시 메모리에서 상기 API에서부터 상기 기본 계층까지 상위 계층에서부터 하위 계층 방향으로 순차적으로 룩업(lookup)하도록 상기 프로세서에 의해 실행되는,
장치.In Article 18,
Further comprising a cache memory for high-speed data transfer between the processor and the database;
At least one program command above,
Store information about the first combination layer and the API in a database,
Further executed by the processor to load information about the first combination layer and the API from the database into the cache memory,
When executed by the processor to sequentially execute the layers included in the generated API,
Executed by the processor to sequentially lookup from the upper layer to the lower layer from the API to the basic layer in the cache memory,
device.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020230124468A KR102852202B1 (en) | 2023-09-19 | 2023-09-19 | Service providing method, program and device for generating api with low code |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020230124468A KR102852202B1 (en) | 2023-09-19 | 2023-09-19 | Service providing method, program and device for generating api with low code |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20250041714A KR20250041714A (en) | 2025-03-26 |
| KR102852202B1 true KR102852202B1 (en) | 2025-08-29 |
Family
ID=95207035
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020230124468A Active KR102852202B1 (en) | 2023-09-19 | 2023-09-19 | Service providing method, program and device for generating api with low code |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR102852202B1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102813036B1 (en) | 2025-04-17 | 2025-05-28 | 주식회사 케이디에스 | A Low-Code Based Platform System For Developing User Applications |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140245255A1 (en) * | 2013-02-28 | 2014-08-28 | Web Computing AS | Modular platform for web applications and systems |
| CN108388622A (en) * | 2018-02-12 | 2018-08-10 | 平安科技(深圳)有限公司 | Api interface dynamic creation method, device, computer equipment and storage medium |
| CN116126316A (en) * | 2023-02-08 | 2023-05-16 | 上海市大数据股份有限公司 | Automatic data development low-code system and method |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102483310B1 (en) | 2022-10-07 | 2023-01-02 | 이데아텍(주) | Gateway device for API integration processing and operation method thereof |
-
2023
- 2023-09-19 KR KR1020230124468A patent/KR102852202B1/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140245255A1 (en) * | 2013-02-28 | 2014-08-28 | Web Computing AS | Modular platform for web applications and systems |
| CN108388622A (en) * | 2018-02-12 | 2018-08-10 | 平安科技(深圳)有限公司 | Api interface dynamic creation method, device, computer equipment and storage medium |
| CN116126316A (en) * | 2023-02-08 | 2023-05-16 | 上海市大数据股份有限公司 | Automatic data development low-code system and method |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20250041714A (en) | 2025-03-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11288557B2 (en) | Long running workflows for document processing using robotic process automation | |
| US11738453B2 (en) | Integration of heterogeneous models into robotic process automation workflows | |
| AU2019232804B2 (en) | Decision tables and flow engine for building automated flows within a cloud based development platform | |
| US11797273B2 (en) | System and method for enhancing component based development models with auto-wiring | |
| US12327093B2 (en) | Executing a process-based software application in a first computing environment and a second computing environment | |
| US9678740B2 (en) | Migration mechanism | |
| US11093242B2 (en) | Automatically mapping data while designing process flows | |
| US12175212B2 (en) | System and method for using a graphical user interface to develop a virtual programmable logic controller | |
| US9043750B2 (en) | Automated generation of two-tier mobile applications | |
| US20210304142A1 (en) | End-user feedback reporting framework for collaborative software development environments | |
| US10101972B1 (en) | Data modelling and flow engine for building automated flows within a cloud based developmental platform | |
| KR20210156192A (en) | Application Integration for Robotic Process Automation | |
| US12367067B2 (en) | Cloud migration | |
| JP2023070148A (en) | Systems and methods for dynamically binding robotic process automation (RPA) robots to resources | |
| KR102852202B1 (en) | Service providing method, program and device for generating api with low code | |
| EP3624027A1 (en) | Decision tables and flow engine for building automated flows within a cloud based development platform | |
| US20140250386A1 (en) | Method and system for client side user interface generation | |
| US20250028759A1 (en) | User Interface Framework for Enhancing Content with Language Model Interactions | |
| US20250244972A1 (en) | Generating Graphical User Interfaces from Design Specifications and Design Specifications from Graphical User Interfaces | |
| US12483647B2 (en) | Customization framework for native mobile applications |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| P14-X000 | Amendment of ip right document requested |
St.27 status event code: A-5-5-P10-P14-nap-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| P16-X000 | Ip right document amended |
St.27 status event code: A-5-5-P10-P16-nap-X000 |
|
| Q16-X000 | A copy of ip right certificate issued |
St.27 status event code: A-4-4-Q10-Q16-nap-X000 |