KR20100087860A - A mobile web application framework, mobile terminal, and, a storage medium - Google Patents

A mobile web application framework, mobile terminal, and, a storage medium Download PDF

Info

Publication number
KR20100087860A
KR20100087860A KR1020090006888A KR20090006888A KR20100087860A KR 20100087860 A KR20100087860 A KR 20100087860A KR 1020090006888 A KR1020090006888 A KR 1020090006888A KR 20090006888 A KR20090006888 A KR 20090006888A KR 20100087860 A KR20100087860 A KR 20100087860A
Authority
KR
South Korea
Prior art keywords
mobile
web application
application framework
mobile web
agent
Prior art date
Application number
KR1020090006888A
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 KR1020090006888A priority Critical patent/KR20100087860A/en
Publication of KR20100087860A publication Critical patent/KR20100087860A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44557Code layout in executable memory
    • G06F9/44563Sharing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/188Virtual file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/44Browsing; Visualisation therefor
    • G06F16/444Spatial browsing, e.g. 2D maps, 3D or virtual spaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • G06F9/30174Runtime instruction translation, e.g. macros for non-native instruction set, e.g. Javabyte, legacy code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: A mobile web application framework, a mobile terminal, and a storage medium are provided to use a PHP as server-sided script language and include 3-Tier structure by web expression and separation of logic, thereby reducing prototyping of the cost for application and development. CONSTITUTION: A web application manager manages request of a UI(User Interface) agent. A mobile web server returns the result relating to the request of the UI agent. A script engine performs necessary calculation according to a command of the mobile web server. The script engine returns an operation result to the mobile web server. An extension module enables the control of the mobile terminal and application of resource.

Description

모바일 웹 어플리케이션 프레임웍, 모바일 단말 및 저장매체{A Mobile Web Application FrameWork, Mobile Terminal, And, A Storage Medium}Mobile Web Application Framework, Mobile Terminal, And, A Storage Medium}

본 발명은 모바일 웹 어플리케이션 프레임웍에 대한 것으로, 더욱 상세하게는 모바일 웹 어플리케이션의 개발에 있어서, 모바일의 환경에 적응하면서도 전통적인 웹 개발 방식과 언어 및 환경을 그대로 적용하여 저비용으로 모바일 웹 어플리케이션 개발이 가능한 모바일 웹 어플리케이션 프레임 웍, 이를 탑재한 모바일 단말 및 저장매체에 대한 것이다.The present invention relates to a mobile web application framework. More specifically, in the development of a mobile web application, a mobile web application can be developed at low cost by adapting a traditional web development method, language, and environment while adapting to a mobile environment. Web application framework, mobile terminal and storage media equipped with it.

웹상에서 재생산된 자원의 공유를 위한 환경을 제공하는 웹 2.0의 시대에 접어들면서 웹을 플랫폼으로 하는 웹 어플리케이션이 등장하고 있고, RIA(Rich Internet Application)에 대한 수요에 부응하기 위하여 기존의 데스크탑 어플리케이션과 유사한 기능을 수행하는 다양한 웹 어플리케이션들이 개발되고 있다.In the era of Web 2.0, which provides an environment for sharing resources reproduced on the Web, web applications based on the web are emerging, and in order to meet the demand for RIA (Rich Internet Application), Various web applications that perform similar functions are being developed.

모바일 웹 어플리케이션 프레임웍은 모바일 웹 어플리케이션의 개발을 위한 기반으로, 모바일 시스템과 OS에 의존적인 개발 툴 및 API에 대한 새로운 학습이 필요한 네이티브 어플리케이션 프레임웍(Native Application FrameWork)을 보완하여 쉽게 어플리케이션을 개발할 수 있는 개발환경을 제공한다. The mobile web application framework is the foundation for developing mobile web applications. The mobile web application framework complements the Native Application FrameWork, which requires new learning about mobile system and OS-dependent development tools and APIs. Provide an environment.

도 1은 종래의 모바일 웹 어플리케이션 프레임웍(Mobile Web Appication FrameWork)을 예시한 개요도이다.1 is a schematic diagram illustrating a conventional mobile web application framework (Mobile Web Appication FrameWork).

도 1에 도시된 종래의 모바일 웹 어플리케이션 프레임웍(예컨대, 애플사 IPhone의 WAF)은 Html, JavaScript 및 CSS(Cascade Style Sheet)에 의해 구성되며, 클라이언트 측에는 HTML, CSS, JavaScript(또는 AJAX)에 의하는 웹 브라우저와, HTML 또는 CSS 및 JavaScript에 의하는 파일시스템을 구비하며, JavaScript 및 CSS에 의한 기능확장으로 모바일 내의 데이터베이스와의 연동 및 애니메이션 등이 가능하도록 하고 있다. The conventional mobile web application framework shown in FIG. 1 (eg, WAF of Apple IPhone) is composed of HTML, JavaScript, and Cascade Style Sheets (CSS), and on the client side is a web based on HTML, CSS, JavaScript (or AJAX). A browser and a file system based on HTML or CSS and JavaScript are provided, and functions such as animation and interaction with a database in the mobile are possible by expanding functions by JavaScript and CSS.

이와 같은 종래의 웹 어플리케이션 프레임웍은 Html에 의한 UI 구성이 가능하여 간단한 웹 어플리케이션의 개발을 용이하게 하였고, 다양한 어플리케이션이 개발되어 모바일 단말에 탑재됨에 따라 장치의 활용성을 극대화 할 수 있게 되었다. Such a conventional web application framework enables the UI configuration by Html to facilitate the development of simple web applications, and as the various applications are developed and mounted on the mobile terminal, it is possible to maximize the utilization of the device.

한편, 상기 모바일 웹 어플리케이션 프레임웍에서 UI 로직과 어플리케이션 로직은 모두 JavaScript(또는 AJAX)에 의해 구성되므로 표현과 로직의 구분이 되지 않은 사실상 2 Tier 구조로서, 웹 어플리케이션 개발자의 어플리케이션 개발의 전제로 해당 웹 어플리케이션 플랫폼의 SDK(Software Development Kit) 및 API(application programming interface)에 대한 학습이 선행되어야 하는 문제가 있으므로, 웹 어플리케이션의 개발에 장시간이 소요되고 개발비용이 증가하는 문제 가 있다.In the mobile web application framework, since both UI logic and application logic are composed of JavaScript (or AJAX), the virtual application is a virtual two-tier structure in which expression and logic are not distinguished. Because there is a problem that learning about the SDK (Software Development Kit) and API (application programming interface) of the platform must be preceded, it takes a long time to develop a web application and increase the development cost.

또한, 웹 개발에 있어서 JavaScript 및 CSS(Cascade Style Sheet)의 확장으로 기능을 추가하는 방식은 비표준 방식으로 지속적인 포팅이 필요하며, 항상 국제 표준에 의한 지원이 가능한 것이 아니며, 이에 의해 개발된 웹 어플리케이션은 브라우저(예컨대 애플사의 IPHONE의 경우는 '사파리 브라우저')에 의존적인 구성이라는 한계성을 갖는다. 그리고, 상기 모바일 웹 어플리케이션 프레임웍에 의하는 경우는, 단말 내부의 자원 및 컨텐츠를 활용하는 웹 어플리케이션 개발은 매우 복잡하여 적용이 사실상 곤란하고 웹 어플리케이션 개발자의 범위를 협소하게 하는 문제가 발생한다. In addition, the method of adding a function as an extension of JavaScript and Cascade Style Sheet (CSS) in web development requires continuous porting in a non-standard manner, and it is not always supported by international standards. There is a limit to the configuration that depends on the browser (eg, the Safari browser in the case of Apple's IPHONE). In the case of the mobile web application framework, the development of a web application that utilizes resources and contents in the terminal is very complicated, so that application is practically difficult and a problem of narrowing the scope of the web application developer occurs.

본 발명의 목적은, 모바일 웹 어플리케이션의 개발에 있어서, 모바일의 환경에 적응하면서도 전통적인 웹 개발 방식과 언어 및 환경을 그대로 적용하여 저비용으로 웹 어플리케이션 개발이 가능한 모바일 웹 어플리케이션 프레임 웍을 구현하는 것이다.An object of the present invention is to implement a mobile web application framework capable of developing a web application at low cost by adapting a traditional web development method, language and environment while adapting to a mobile environment.

본 발명의 다른 목적은, 모바일 웹 어플리케이션의 개발에 있어서, 모바일의 환경에 적응하면서도 전통적인 웹 개발 방식과 언어 및 환경을 그대로 적용하여 저비용으로 웹 어플리케이션 개발을 가능하고, Web 2.0의 자원과 소산을 공유하는 것이 가능한 모바일 웹 어플리케이션 프레임 웍을 탑재한 모바일 단말 및 저장매체를 구현하는 것이다.Another object of the present invention, in the development of mobile web applications, it is possible to develop a web application at low cost by adapting the traditional web development method, language and environment while adapting to the mobile environment, and share the resources and resources of Web 2.0 A mobile terminal and a storage medium equipped with a mobile web application framework can be implemented.

상기 목적을 달성하기 위한 본 발명에 모바일 웹 어플리케이션 프레임웍은, UI 에이전트와; 상기 UI 에이전트의 요청을 관리하며 요청에 대한 결과를 반환하며, 필요한 연산을 수행하기 위한 스크립트언어 실행모듈을 구비한 모바일 웹서버를 구비한 모바일 하이브리드 플랫폼을 포함하여 구성되는 것을 특징으로 한다.Mobile web application framework in the present invention for achieving the above object, UI agent; And a mobile hybrid platform having a mobile web server having a script language execution module for managing a request of the UI agent and returning a result of the request and performing a required operation.

상기 스크립트언어 실행모듈은, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신과; 상기 컴파일러에 의해 리턴된 OP코드를 케슁하여 중복된 요청에 대해서 빠른 응답을 보장하는 케슁수단을 포함하여 구성되는 것을 특징으로 한다.The script language execution module includes: a compiler for loading and compiling a PHP script file and returning the result as an OP code; A virtual machine executing the OP code returned by the compiler; And a means for caching OP codes returned by the compiler to ensure fast response to duplicate requests.

상기 스크립트언어 실행모듈은, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신을 포함하여 구성되는 것을 특징으로 한다.The script language execution module includes: a compiler for loading and compiling a PHP script file and returning the result as an OP code; And a virtual machine for executing the OP code returned by the compiler.

상기 스크립트 언어 실행모듈은, 모바일 단말에 탑재되는 네이티브 어플리케이션 프레임웍의 네이티브 함수 및 기능과 연동하기 위한 확장 API(Extensible Application Programming Interface)를 포함하는 것을 특징으로 한다.The script language execution module may include an extensible application programming interface (API) for interworking with native functions and functions of a native application framework mounted on a mobile terminal.

상기 스크립트 언어 실행모듈은, PHP의 확장함수를 수용하기 위한 PHP 확장모듈을 더 구비하는 것을 특징으로 한다.The script language execution module may further include a PHP extension module for accommodating an extension function of PHP.

상기 목적을 달성하기 위한 본 발명에 의한 모바일 웹 어플리케이션 프레임웍은, UI 에이전트와; 상기 UI 에이전트의 요청을 관리하며 요청에 대한 결과를 반환하는 모바일 웹서버 및 상기 모바일 웹서버의 명령에 따라 필요한 연산을 수행하여 상기 모바일 웹서버로 반환하는 스크립트 엔진을 포함한 모바일 하이브리드 플랫폼을 포함하여 구성되는 것을 특징으로 한다.Mobile web application framework according to the present invention for achieving the above object, UI agent; And a mobile hybrid platform including a mobile web server that manages the request of the UI agent and returns a result of the request, and a script engine that performs a required operation according to a command of the mobile web server and returns the result to the mobile web server. It is characterized by.

상기 모바일 하이브리드 플랫폼의 구성언어는 HTML와 SVG 중 적어도 어느 하나와, JavaScript와, 서버측 스크립트 언어를 포함하는 것을 특징으로 한다. The constituent language of the mobile hybrid platform may include at least one of HTML and SVG, JavaScript, and a server-side scripting language.

상기 서버측 스크립트 언어는 PHP 및 CGI에 의하는 것을 특징으로 한다.The server-side scripting language is characterized by PHP and CGI.

상기 모바일 웹 어플리케이션 프레임 웍에서 동작하는 웹 어플리케이션은, 웹 표현을 위한 구성과, 어플리케이션 로직을 위한 구성 및 데이터저장시스템으로 분리된 3-Tier 구조를 구비하는 것을 특징으로 한다.The web application operating in the mobile web application framework is characterized by having a 3-tier structure separated into a configuration for web presentation, a configuration for application logic, and a data storage system.

상기 웹 표현을 위한 구성은 HTML, SVG, CSS, JavaScript, Flash 중 적어도 어느 하나에 의해 구성되는 것을 특징으로 한다.The configuration for the web representation is characterized by being configured by at least one of HTML, SVG, CSS, JavaScript, Flash.

상기 어플리케이션 로직을 위한 구성은 PHP 및 CGI에 의하는 것을 특징으로 한다.The configuration for the application logic is characterized by the PHP and CGI.

상기 스크립트 엔진은, 모바일 단말에 탑재되는 네이티브 어플리케이션 프레임웍의 네이티브 함수 및 기능과 연동하기 위한 확장 API(Extensible Application Programming Interface)를 포함하는 것을 특징으로 한다.The script engine may include an extensible application programming interface (API) for interworking with native functions and functions of a native application framework mounted on a mobile terminal.

상기 스크립트 엔진은, PHP의 확장함수 등을 수용하기 위한 PHP 확장모듈을 구비하는 것을 특징으로 한다.The script engine is characterized by having a PHP extension module for accommodating the PHP extension function.

상기 스크립트 엔진은, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신과; 상기 가상머신의 API 함수에 대한 접근 및 실행권한을 제어하는 엑세스 컨트롤 모듈과; 상기 컴파일러에 의해 리턴된 OP코드를 케싱하여 중복된 요청에 대해서 빠른 응답을 보장하는 케싱수단을 포함하여 구성되는 것을 특징으로 한다.The script engine includes: a compiler for loading and compiling a PHP script file and returning the result as an OP code; A virtual machine executing the OP code returned by the compiler; An access control module for controlling access and execution rights to the API functions of the virtual machine; And caching means for caching the OP code returned by the compiler to ensure fast response to duplicate requests.

상기 스크립트 엔진은, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신과; 상기 가상머신의 API 함수에 대한 접근 및 실행권한을 제어하는 엑세스 컨트롤 모듈을 포함하여 구성되는 것을 특징으로 한다.The script engine includes: a compiler for loading and compiling a PHP script file and returning the result as an OP code; A virtual machine executing the OP code returned by the compiler; And an access control module for controlling access and execution rights to the API functions of the virtual machine.

상기 모바일 하이브리드 플랫폼은, 상기 UI 에이전트의 요청을 모바일 하이브리드 플랫폼에 문의하고 그 결과물의 컨텐트 타입에 따라 적합한 플레이어를 지정하여 UI 에이전트로 전달하는 웹 어플리케이션 매니저를 더 포함하여 구성되는 것을 특징으로 한다.The mobile hybrid platform further comprises a web application manager for inquiring the request of the UI agent to the mobile hybrid platform and designating a suitable player according to the content type of the result and delivering the request to the UI agent.

상기 모바일 하이브리드 플랫폼은, 상기 모바일 단말의 제어 및 리소스의 활용을 가능하게 하는 확장모듈을 더 포함하여 구성되는 것을 특징으로 한다.The mobile hybrid platform is characterized in that it further comprises an expansion module that enables the control of the mobile terminal and the utilization of resources.

상기 확장모듈은, 오픈 API와, Common Resourse 및 플러그인 모듈 중 적어도 어느 하나를 포함하는 것을 특징으로 한다.The extension module may include at least one of an open API, a common resource, and a plug-in module.

상기 UI 에이전트는, 브라우저 또는 플레이어로부터 독립하여 렌더링이 수행되는 레이어인 렌더링 레이어를 제공하며, 상기 렌더링 레이어에 어플리케이션을 실행하기 위해 필요한 컴포넌트를 플러그인 하는 것을 특징으로 한다.The UI agent provides a rendering layer, which is a layer on which rendering is performed independently from a browser or a player, and plugs in a component necessary for executing an application to the rendering layer.

상기 렌더링 레이어는 복수개의 캔버스로 구성되며, 상기 캔버스에 상기 웹 어플리케이션 매니저가 지정한 각 컴포넌트 대응시켜 렌더링하는 것을 특징으로 한다.The rendering layer is composed of a plurality of canvases, and the canvases are rendered in correspondence with each component designated by the web application manager.

상기 모바일 웹서버는, 상기 UI 에이전트와의 소켓 연결을 처리하는 컨넥션 메니저와; 상기 UI 에이전트의 HTTP/HTTPS 요청을 받아서 처리하는 HTTP 핸들러와;The mobile web server includes: a connection manager that handles socket connection with the UI agent; An HTTP handler for receiving and processing an HTTP / HTTPS request from the UI agent;

상기 HTTP 핸들러가 수신한 요청에 대해 케슁정책에 따라 결과를 케슁하여 제공하는 Response 핸들러를 포함하여 구성되는 것을 특징으로 한다.The HTTP handler is configured to include a response handler for providing the result of the request according to the policy policy for the request received.

상기 목적을 달성하기 위한 본 발명에 의한 모바일 단말은 상술한바 중 어느 하나의 웹 어플리케이션 프레임 웍을 탑재한 것을 특징으로 한다.Mobile terminal according to the present invention for achieving the above object is characterized in that it is equipped with any one of the web application framework described above.

상기 목적을 달성하기 위한 본 발명에 의한 저장매체는, 상술한바 중 어느 하나의 웹 어플리케이션 프레임웍을 컴퓨터 시스템상에서 구현하는 컴퓨터 프로그램을 내장한 것을 특징으로 한다.A storage medium according to the present invention for achieving the above object is characterized in that the computer program for implementing any one of the above-described web application framework on a computer system.

본 발명은 상기와 같이, 서버 측 스크립트 언어를 웹 개발자들 사이에서 가에서 가장 대중적이며 인지도 높은 스크립트 언어인 PHP를 사용하여 웹 표현과 논리를 분리하여 3-Tier 구조를 구비함으로써, 어플리케이션의 프로토타이핑 및 개발 비용을 감소시킨다.As described above, the server-side scripting language can be prototyped by providing a 3-tier structure by separating web representation and logic using PHP, which is the most popular and recognized scripting language among web developers. And reduce development costs.

또한, 종래의 웹 개발 방식을 익숙한 개발자에게 웹 개발 언어를 그대로 적용하여 개발하는 것이 가능하고, 기존 사용하던 다양한 웹 개발 툴과 통합 개발 환 경을 사용하는 것이 가능하여 모바일 웹 어플리케이션의 개발이 용이해진다.In addition, it is possible to develop the existing web development method by applying a web development language to a developer who is familiar with it, and it is possible to use various web development tools and an integrated development environment that have been used in the past, thereby making it easier to develop a mobile web application. .

본 발명은 또한 네이티브 어플리케이션과 연결되고 웹 2.0 기반의 서비스와 융합되어 오픈 플랫폼을 형성하므로 더 많은 개발자, 파워유저, 블로그 전문가, npq 디자이너 등이 다양한 풀을 가진 생태계로 발전하는 모델을 제공한다. 따라서, 모바일 단말을 이용하여 웹 어플리케이션 개발에 사용자들의 직접 참여를 유도하는 것이 가능해지며, 기존 모바일 웹 어플리케이션 개발회사 외에 신규 회사 및 개인 등에 의한 서비스 개발이 이루어질 수 있고 새로운 형태의 서비스가 개발될 수 있는 여건을 제공한다.The present invention also provides a model in which more developers, power users, blog experts, npq designers, etc. evolve into a diverse pool of ecosystems as they connect with native applications and integrate with Web 2.0-based services to form an open platform. Therefore, it is possible to induce the direct participation of users in the development of web applications using a mobile terminal, the service development can be made by new companies and individuals in addition to the existing mobile web application development company and a new type of service can be developed Provide the conditions.

또한, 본 발명은 저비용의 개발 및 유지보수 환경을 제공하므로 웹에이전시도 단말의 개발에 참여하는 것이 가능해지며, 웹 2.0 서비스 업체로 인한 덤파이프화를 막고 웹 객체 정책을 통해 세밀한 제어권 확보가 가능해지고, 단말과 서비스 및 기능 상호 간의 매쉬업으로 서비스 재조합 및 신규 BM 창출이 가능해진다.In addition, since the present invention provides a low-cost development and maintenance environment, it is possible to participate in the development of the terminal even in the web agency, to prevent dumping due to the Web 2.0 service provider and to secure detailed control rights through the web object policy. The service mashup between the terminal, the service, and the function enables service recombination and new BM creation.

이하 상기와 같은 구성을 갖는 본 발명에 의한 모바일 단말기, 모바일 웹 어플리케이션 프레임 웍, 그리고, 저장매체의 바람직한 실시예의 구성을 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, a configuration of a mobile terminal, a mobile web application framework, and a preferred embodiment of a storage medium according to the present invention having the above configuration will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 실시예의 모바일 단말의 소프트웨어 구성을 예시한 개요도이고, 도 3a 및 도 3b는 본 발명의 실시예의 모바일 웹 어플리케이션 프레임 웍을 탑재한 단말의 소프트웨어 구성를 예시한 개요도이고, 도 4는 본 발명의 실시예의 모바일 웹 어플리케이션 프레임웍의 구성을 예시한 개요도이다. 한편, 도 5a는 본 발명의 실시예의 모바일 웹 어플리케이션 프레임웍의 UI 에이전트의 구성을 예시한 개요도이고, 도 5b는 본 발명의 실시예의 렌더링 레이어의 구성을 예시한 개요도이고, 도 5c는 UI 에이전트에서의 어플리케이션을 구동시키는 과정을 예시한 흐름도이다. 그리고, 도 6a는 본 발명의 제 1 실시예의 모바일 웹 서버의 구성을 예시한 개요도이고, 도 6b는 본 발명의 제 2 실시예의 모바일 하이브리드 플랫폼의 구성을 예시한 개요도이고, 도 7a는 본 발명의 실시예의 스크립트 엔진의 구성을 예시한 개요도이며, 도 7b는 본 발명의 실시예의 JIT 컴파일러의 동작과정을 예시한 흐름도이다.2 is a schematic diagram illustrating a software configuration of a mobile terminal of an embodiment of the present invention, Figures 3a and 3b is a schematic diagram illustrating a software configuration of a terminal equipped with a mobile web application framework of an embodiment of the present invention, Figure 4 is It is a schematic diagram illustrating the configuration of a mobile web application framework of an embodiment of the present invention. On the other hand, Figure 5a is a schematic diagram illustrating the configuration of the UI agent of the mobile web application framework of the embodiment of the present invention, Figure 5b is a schematic diagram illustrating the configuration of the rendering layer of the embodiment of the present invention, Figure 5c is a UI agent A flowchart illustrating the process of running an application. 6A is a schematic diagram illustrating the configuration of the mobile web server of the first embodiment of the present invention, and FIG. 6B is a schematic diagram illustrating the configuration of the mobile hybrid platform of the second embodiment of the present invention, and FIG. 7B is a schematic diagram illustrating the configuration of a script engine of an embodiment, and FIG. 7B is a flowchart illustrating an operation process of the JIT compiler of an embodiment of the present invention.

도 2에 도시된 본 발명의 실시예의 모바일 단말의 소프트웨어 구성은, 네이티브 어플리케이션 프레임웍(Native Application FrameWork)(10)과, 이에 대한 인터페이스를 구비한 모바일 웹 어플리케이션 프레임웍(Mobile Web Application FrameWork)(20)과 데이터베이스(30)를 포함한다.The software configuration of the mobile terminal according to the embodiment of the present invention shown in FIG. 2 includes a native application framework 10 and a mobile web application framework 20 having an interface thereto. Database 30 is included.

본 실시예의 네이티브 어플리케이션 프레임웍(10)은, 네이티브 어플리케이션 프레임(11)과, 3차원 동영상의 구현을 위한 네이티브 UI(3D)(12)와 플래쉬(13)를 포함하며, 추가구성(15)으로 멀티미디어(16), 인포메이션(17), 유틸리티(18) 모듈을 포함한다. 본 실시예의 데이터베이스(30)는 시스템 세팅에 관한 정보, 미디어 컨텐츠, 어플리케이션, 사용자 컨텐츠 및 PIM 데이터 등을 포함한다. The native application framework 10 of the present embodiment includes a native application frame 11, a native UI (3D) 12 and a flash 13 for implementing a 3D video, and the multimedia as an additional configuration 15 (16), information 17, utility 18 module. The database 30 of the present embodiment includes information on system settings, media content, applications, user content, PIM data, and the like.

본 발명의 실시예의 모바일 웹 어플리케이션 프레임웍(20)은, UI 에이전트와(21), 상기 UI 에이전트(21)의 요청을 실행하여 결과를 반환하는 모바일 하이브 리드 플랫폼(Mobile Hybrid Platform)(50)을 포함한다.The mobile web application framework 20 of the embodiment of the present invention includes a UI agent 21 and a mobile hybrid platform 50 for executing a request of the UI agent 21 and returning a result. do.

본 실시예에서 UI 에이전트(21)는 네이티브 어플리케이션 프레임웍(10)과의 인터페이스를 위한 네이티브 어플리케이션 인터페이스(22)와, 네이티브 MMUI 인터페이스(25)를 구비하여 모바일 웹 어플리케이션과 네이티브 어플리케이션을 함께 실행하는 것을 가능하게 한다.In the present embodiment, the UI agent 21 includes a native application interface 22 and a native MMUI interface 25 for interfacing with the native application framework 10 to execute a mobile web application and a native application together. Let's do it.

또한, 본 실시예의 UI 에이전트(21)는, 캔버스(41,42,43)에 임베딩된 컴포넌트 모듈로부터의 렌더링 결과를 받아서 레이어(40)에 출력하는 렌더러(Renderer)(29)와, UI 에이전트(21)의 레이어(40) 상에 브라우저의 렌더링 결과를 출력하는 브라우저 인터페이스(24)와, 다양한 3rd 파티(3rd Party)의 브라우저를 실행하기 위한 브라우저 인스턴스 매니저(Browser Instance Manager)(30)와, 상기 캔버스의 생성과 관리를 수행하는 캔버스 메니저(27)와, 상기 렌더링 레이어(40) 및 브라우저에 연동되는 다른 레이어들에 대한 관리를 수행하는 레이어 매니저(26)와, HTML/JavaScript(31), SVG(32), Flash Player(33) 등의 컴포넌트를 포함하여 다양한 모바일 웹 어플리케이션의 구현을 가능하게 한다.In addition, the UI agent 21 of the present embodiment includes a renderer 29 that receives rendering results from the component modules embedded in the canvases 41, 42, and 43 and outputs them to the layer 40, and a UI agent ( A browser interface 24 for outputting a rendering result of the browser on the layer 40 of 21, a browser instance manager 30 for executing browsers of various 3rd parties, and A canvas manager 27 for creating and managing canvas, a layer manager 26 for managing the rendering layer 40 and other layers linked to the browser, HTML / JavaScript 31, and SVG (32), Flash Player 33, and other components are included to enable the implementation of various mobile web applications.

즉, 본 발명의 실시예에서는 웹브라우저를 대체하여 HTML/JavaScript(31), SVG(32), Flash Player(33) 등의 컴포넌트가 무거운 웹브라우저의 실행이 없이도 구동될 수 있는 구성으로 웹 컨텐츠의 실행에 따른 시스템의 부하를 최소화 한다. That is, in the embodiment of the present invention, a component such as HTML / JavaScript (31), SVG (32), Flash Player (33), etc. can be driven without the execution of a heavy web browser in place of the web browser. Minimize the load on the system as it runs.

또한, 본 발명의 실시예에서는 UI 에이전트(21)는 플랫폼 어탭데이션 레이어(Platform Adaptation Layer; PAL)(35)를 더 구비하여 UI 에이전트(21)가 직접 Platform의 API를 호출하지 않고, PAL(35) 상에 구현된 API만을 사용하여 플랫폼 의존성을 최소화한다.In addition, in the embodiment of the present invention, the UI agent 21 further includes a platform adaptation layer (PAL) 35 so that the UI agent 21 does not directly call the API of the platform. Minimize platform dependencies using only the APIs implemented on

본 발명의 실시예의 UI에이전트(21)는 브라우저(38) 또는 컴포넌트 플레이어로부터 독립하여 렌더링이 수행되는 레이어인 렌더링 레이어(40)를 가정하며, 렌더링 레이어(40)는 복수개의 캔버스(41,42,43)로 구성되며, 모바일 웹 어플리케이션 프레임웍의 반환결과를 토대로 해당 캔버스에 웹 및 네이티브 어플리케이션에 지정된 컴포넌트 예컨대 웹 브라우저(38), 미디어플레이어, HTML/JavaScript(31), SVG(32), Flash Player(33) 등의 컴포넌트 또는 임의 플러그인 플레이어(39)를 각각 선택적으로 플러그인 한다.The UI agent 21 of the embodiment of the present invention assumes a rendering layer 40 which is a layer in which rendering is performed independently from the browser 38 or the component player, and the rendering layer 40 includes a plurality of canvases 41, 42, 43), based on the return result of the mobile web application framework, components assigned to web and native applications on the canvas such as web browser (38), media player, HTML / JavaScript (31), SVG (32), and Flash Player ( 33) selectively plug in a component such as 33) or an arbitrary plug-in player 39, respectively.

예컨대, 도 5b에 도시된 바와 같이 모바일 어플리케이션은 렌더링 레이어(40)에 XML을 이용하여 렌더링 되는데, 렌더링 레이어(40)는 캔버스 1, 2, 3(41,42,43)을 포함하고 있고, 캔버스 1(41)에는 네이티브 어플리케이션을 실행하는 플래쉬 플레이어가 렌더링되고, 캔버스 2(42)에는 웹 2.0 서비스를 위한 웹브라우저가 렌더링되며, 캔버스 3(43)에는 위젯에 대한 컴포넌트가 렌더링된다. For example, as shown in FIG. 5B, the mobile application is rendered using XML to the rendering layer 40, which includes canvases 1, 2, and 3 (41, 42, 43), and the canvas. A flash player executing a native application is rendered at 1 (41), a web browser for a web 2.0 service is rendered at canvas 2 (42), and a component for a widget is rendered at canvas 3 (43).

이와 같이 본 발명의 실시예는 렌더링 레이어(40)에 의하므로 단순한 웹 어플리케이션을 실행하는 경우에는 무거운 웹 브라우저를 구동할 필요가 없으며, 캔버스(41,42,43)를 생성하여 해당 컴포넌트의 렌더링을 수행하면 되므로 UI 에이전트(21)의 브라우저 종속성이 완화된다.As described above, since the embodiment of the present invention is based on the rendering layer 40, it is not necessary to run a heavy web browser when executing a simple web application, and the canvases 41, 42, and 43 are generated to render the components. Since the browser dependency of the UI agent 21 is alleviated.

즉, 본 발명의 실시예에서는 렌더링을 위한 각 캔버스(41,42,43)에 대응하는 프레임 버퍼를 구비하여 각 캔버스 단위로 렌더링을 수행한다. 따라서, 다수의 컴포넌트에 의하는 복잡한 어플리케이션을 실행하는 경우에도 각 캔버스 단위의 제어가 가능하여 제어의 편의를 도모할 수 있으며, 투명처리 또는 오버랩 등의 화면표현에 유리한 특징을 갖는다. 또한, 각 캔버스 단위 렌더링이 가능하므로 광고목적, 뉴스 등의 표현을 다양하게 수행할 수 있는 특징을 갖는다. That is, in the exemplary embodiment of the present invention, frame buffers corresponding to the canvases 41, 42, and 43 for rendering are provided to perform rendering in each canvas unit. Therefore, even when executing a complex application by a large number of components, it is possible to control each canvas unit to facilitate the control, and has an advantageous feature for screen expression such as transparent processing or overlap. In addition, since it is possible to render each canvas unit has a feature that can perform a variety of expressions, such as advertising purposes, news.

본 발명의 제 1 실시예의 모바일 하이브리드 플랫폼(50)은, 그 자체로 모바일 디바이스(90)에 탑재되는 것일 수 있으며, UI 에이전트(21)의 요청을 관리하는 웹 어플리케이션 매니저(51)와, 웹 어플리케이션 매니저(51)가 의뢰한 UI 에이전트(21)의 요청에 대한 결과를 반환하는 모바일 웹서버(52)와, 상기 웹 서버(52)의 명령에 따라 필요한 연산을 수행하여 상기 모바일 웹서버(52)로 반환하는 스크립트 엔진(70)과, 상기 모바일 단말의 제어 및 리소스의 활용을 가능하게 하는 확장모듈(63)을 더 포함한다.The mobile hybrid platform 50 of the first embodiment of the present invention may be mounted on the mobile device 90 by itself, the web application manager 51 managing the request of the UI agent 21, and the web application. The mobile web server 52 which returns a result of the request of the UI agent 21 requested by the manager 51 and the mobile web server 52 by performing a necessary operation according to the command of the web server 52. It further includes a script engine 70 to return to, and the expansion module 63 to enable the control and utilization of resources of the mobile terminal.

본 실시예의 웹 어플리케이션 매니저(51)는 UI 에이전트(21)의 요청을 수신하여 관리하며, UI에이전트(21)의 요청을 모바일 웹서버(52)에 문의하며 이에 대한 응답으로 모바일 웹서버(52)가 제공한 정보와 결과에 의한 어플리케이션의 컨텐트 타입에 따라 적합한 플레이어를 지정하여 UI 에이전트(21)로 전달한다. The web application manager 51 of the present embodiment receives and manages the request of the UI agent 21, inquires of the request of the UI agent 21 to the mobile web server 52, and responds to the mobile web server 52 in response thereto. The appropriate player is designated and delivered to the UI agent 21 according to the content type of the application based on the information and the result provided by the user.

본 실시예에서 모바일 웹 서버(52)는 소켓 컨넥션을 처리하는 컨넥션 매니저(53)와, HTTP 1.0/HTTP 1.1을 지원하는 HTTP 핸들러(54)와, 캐슁정책에 따라 결 과를 케슁하며 HTTP 1.1의 요청에 따른 결과를 압축하여 속도개선을 가능케 하는 Response 핸들러(55)와, 서버의 동작속도 개선을 위한 fastCGI 라이브러리(56)와, MIME Type을 세팅하고 DocRoot등의 설정파일을 읽고 관리하는 Config(57)를 포함한다.In this embodiment, the mobile web server 52 connects the connection manager 53 to handle the socket connection, the HTTP handler 54 to support HTTP 1.0 / HTTP 1.1, and the result according to the caching policy. Response handler (55) for speed improvement by compressing the result according to request, fastCGI library (56) for improving server operation speed, Config (57) for setting MIME type and reading and managing configuration files such as DocRoot. ).

본 실시예의 컨넥션 매니저(53)는 클라이언트의 소켓 컨넥션을 처리하며, 정의된 개수의 컨넥션만 동시처리를 하며, 속도를 위해 소켓 컨넥션 이외에 IPC를 지원한다.The connection manager 53 of the present embodiment processes the socket connection of the client, simultaneously processes only a defined number of connections, and supports IPC in addition to the socket connection for speed.

본 실시예의 HTTP 핸들러(54)는 HTTP/HTTPS 요청을 받아서 처리하고, 요청에 따라 스크립트 엔진(70)을 구동하거나 파일을 반환하며, 파일을 반환하는 경우에는 그 밈타입(MIME TYPE)을 함께 제공한다. 또한, 본 실시예의 Config(57)는 서버(52)가 동작 중일 때도 일부 세팅 변경이 가능한 런타임 세팅기능을 지원한다. The HTTP handler 54 of the present embodiment receives and processes an HTTP / HTTPS request, drives the script engine 70 or returns a file according to the request, and provides a mime type when the file is returned. do. In addition, the Config 57 of the present embodiment supports a runtime setting function that allows some setting changes even when the server 52 is in operation.

이외 본 실시예의 모바일 웹 서버(52)는 사용자의 파일 접근 권한을 제어하는 엑세스 컨트롤(58)과, HTTP의 세션 정보를 관리하는 세션 매니저(59), 엑세스 로그 또는 에러 로그 기록을 수행하는 Logger(60)와, 파일 시스템을 가상화하여 접근 권한 제어 등을 서버 내에서 처리함으로써 보안 강화를 가능케 하는 가상파일시스템(61)을 더 포함한다.In addition, the mobile web server 52 of the present embodiment includes an access control 58 for controlling file access authority of the user, a session manager 59 for managing session information of HTTP, and a Logger for performing access log or error logging. 60) and a virtual file system 61 that enables enhanced security by processing the access rights control and the like in the server by virtualizing the file system.

본 제 1 실시예에서 스크립트 엔진(70)은, FastCGI 핸들러(71), Extensible AIP(73)와, Configuration 모듈(72)과, 스크립트 파일을 컴파일하는 컴파일러(75)와, 캐슁수단(77), Executor(76) 및 엑세스 컨트롤 모듈(78)을 포함한다.In the first embodiment, the script engine 70 includes a FastCGI handler 71, an Extensible AIP 73, a Configuration module 72, a compiler 75 for compiling a script file, a caching means 77, An executor 76 and an access control module 78.

본 실시예의 FastCGI 핸들러(71)는 모바일 웹서버(52)로부터 요청 정보, 세션 정보 등을 받아서 해당 스크립트를 수행하기 위한 웹 서버(52)와의 메인 인터페이스 핸들러로 기능한다.The FastCGI handler 71 according to the present embodiment receives request information, session information, etc. from the mobile web server 52 and functions as a main interface handler with the web server 52 for executing a corresponding script.

본 실시예의 Extensible API(73)는 모바일 단말(90)의 하드웨어 및 OS의 기능을 지원하기 위해 네이티브 함수 및 기능 등과 연동하기 위한 확장모듈로서 본 실시예의 서버측 스크립트 언어인 PHP 확장 규격에 맞춰 연동되며, Configuration 모듈(72)은 설정파일을 처리하고 세팅하는 모듈이다.Extensible API 73 of the present embodiment is an extension module for interworking with native functions and functions to support hardware and OS functions of the mobile terminal 90, and is interlocked according to the PHP extension standard, which is a server-side scripting language of the present embodiment. Configuration module 72 is a module for processing and setting configuration files.

도 7b에 도시된 바와 같이 본 실시예의 컴파일러(75)는, 모바일 웹 서버(52)에서 요청된 PHP 스크립트 파일을 로드하여 컴파일하고 그 결과인 OP 코드(Operation Code)를 리턴하는 JIT 컴파일 모듈에 의할 수 있고, 본 실시예의 JIT 컴파일 모듈은 PHP 스크립트 파일을 컴파일하여 생성된 OP 코드를 이진코드(Machine Code)로 컴파일 또는 캐슁하여 실행속도를 증가시킨다. As shown in FIG. 7B, the compiler 75 of the present embodiment loads and compiles the PHP script file requested by the mobile web server 52, and returns a result of the operation code. The JIT compilation module of the present embodiment increases the execution speed by compiling or caching the OP code generated by compiling a PHP script file into binary code.

예컨대, JIT 컴파일 모듈이 없는 경우에는 PHP 스크립트 실행시 각각의 파일을 로드할 때마다 계속 반복하여야 하므로 PHP 등의 스크립트 언어 사용시 속도 저하의 주요인이 되고 있었으나, 본 실시예에서는 JIT 컴파일 및 케슁을 수행하므로 컴파일에 의한 오버헤드가 무시할 수준에 이르게 된다.For example, in the absence of a JIT compilation module, it is a major cause of the slowdown in using a scripting language such as PHP because it must be repeated every time each file is loaded when executing a PHP script. Compilation overhead leads to negligible levels.

도 7b에 도시된 바와 같이, 본 실시예에서 JIT 컴파일 모듈은 모바일 웹 서버(52)에서 요청된 스크립트 파일이 이미 사용된 파일인지 여부를 판단하고, 처음 사용파일인 경우에는 컴파일을 수행하며 이진코드에 의해 스크립트를 실행하기에 앞서서 컴파일된 OP코드의 케슁에 의한 OP트리 및 기능/클래스 테이블을 저장한다.As shown in FIG. 7B, in the present embodiment, the JIT compilation module determines whether the script file requested by the mobile web server 52 is a file that has already been used. Saves the OP tree and function / class tables by the compiled OP code's cache before executing the script.

한편, 모바일 웹 서버(52)에서 요청된 스크립트 파일이 기 사용된 파일인 경우에는 케슁된 OP 트리 및 기능/클래스 테이블을 검출하여 즉시 실행할 수 있도록 하기 때문에 최적의 속도 향상을 달성하는 것이 가능해진다.On the other hand, if the script file requested by the mobile web server 52 is a previously used file, it is possible to achieve optimal speed improvement because the cached OP tree and the function / class table can be detected and executed immediately.

도 6b에 도시된 본 발명의 제2 실시예의 모바일 하이브리드 플랫폼(150)은, 그 자체로 모바일 디바이스(90)에 탑재되는 것일 수 있으며, UI 에이전트(21)의 요청을 관리하는 웹 어플리케이션 매니저(151)와, 웹 어플리케이션 매니저(151)가 의뢰한 UI 에이전트(21)의 요청에 대한 결과를 반환하며 스크립트 언어 실행모듈을 내장한 모바일 웹서버(152)와, 모바일 단말의 제어 및 리소스의 활용을 가능하게 하는 확장모듈(163)을 더 포함한다. The mobile hybrid platform 150 of the second embodiment of the present invention shown in FIG. 6B may itself be mounted on the mobile device 90, and the web application manager 151 managing the request of the UI agent 21. And a mobile web server 152 that returns a result of the request of the UI agent 21 requested by the web application manager 151 and has a script language execution module, and controls the mobile terminal and utilizes resources. It further comprises an extension module (163).

제 2 실시예의 웹 어플리케이션 매니저(151)는 상기 제 1 실시예의 웹 어플리케이션 매니저(51)와 동일한 구성요소 및 동일한 기능을 수행하며, 상기 확장모듈(163)의 구성요소과 기능 역시 상기 제 1 실시예의 확장모듈(63)과 동일한 구성에 의하고 있다.The web application manager 151 of the second embodiment performs the same components and the same functions as the web application manager 51 of the first embodiment, and the components and functions of the expansion module 163 also extend the first embodiment. It is based on the same structure as the module 63.

본 제 2 실시예의 모바일 웹서버(152)는 스크립트 언어 실행모듈(170)과, 소켓 컨넥션을 처리하는 컨넥션 매니저(153)와, HTTP 1.0/HTTP 1.1을 지원하는 HTTP 핸들러(154)와, 캐슁정책에 따라 결과를 케슁하며 HTTP 1.1의 요청에 따른 결과를 압축하여 속도개선을 가능케 하는 Response 핸들러(155)와, MIME Type을 세팅하고 DocRoot등의 설정파일을 읽고 관리하는 Config(157)를 포함한다.The mobile web server 152 of the second embodiment includes a script language execution module 170, a connection manager 153 for processing socket connections, an HTTP handler 154 for supporting HTTP 1.0 / HTTP 1.1, and a caching policy. It includes a response handler 155 for caching the result according to the request of HTTP 1.1 and enabling the speed improvement by compressing the result according to the request of HTTP 1.1, and a Config 157 for setting the MIME Type and reading and managing a configuration file such as DocRoot.

제 2실시예의 컨넥션 매니저(153)는 클라이언트의 소켓 컨넥션을 처리하며, 정의된 개수의 컨넥션만 동시처리를 하며, 속도를 위해 소켓 컨넥션 이외에 IPC를 지원한다. The connection manager 153 of the second embodiment processes the socket connection of the client, simultaneously processes only a defined number of connections, and supports IPC in addition to the socket connection for speed.

본 실시예의 HTTP 핸들러(154)는 HTTP/HTTPS 요청을 받아서 처리하고, 요청에 따라 스크립트 언어 실행모듈(170)을 구동하거나 파일을 반환하며, 파일을 반환하는 경우에는 그 밈타입(MIME TYPE)을 함께 제공한다. 또한, 본 실시예의 Config(157)는 서버(152)가 동작 중일 때도 일부 세팅 변경이 가능한 런타임 세팅기능을 지원한다. The HTTP handler 154 of the present embodiment receives and processes an HTTP / HTTPS request, drives the script language execution module 170 or returns a file according to the request, and returns the file if the file is returned. Provide together. In addition, the Config 157 of the present embodiment supports a runtime setting function, in which some settings can be changed even when the server 152 is in operation.

이외 본 실시예의 모바일 웹 서버(152)는 사용자의 파일 접근 권한을 제어하는 엑세스 컨트롤(158)과, HTTP의 세션 정보를 관리하는 세션 매니저(159), 엑세스 로그 또는 에러 로그 기록을 수행하는 Logger(160)와, 파일 시스템을 가상화하여 접근 권한 제어 등을 서버 내에서 처리함으로써 보안 강화를 가능케 하는 가상파일시스템(161)을 더 포함한다.In addition, the mobile web server 152 of the present embodiment includes an access control 158 for controlling a file access right of the user, a session manager 159 for managing session information of HTTP, and a Logger for performing access log or error log recording ( 160, and a virtual file system 161 that virtualizes the file system to enable enhanced security by processing access rights and the like in the server.

본 제 2 실시예의 모바일 웹서버(152)는 스크립트언어 실행모듈(170)을 자체 내에 구비하여 스크립트 언어의 실행을 위한 대기시간을 최소화하며, 본 실시예의 스크립트 언어 실행모듈(170)은 스크립트 파일을 컴파일하는 컴파일러(175)와, 캐슁수단(177) 및 Excutor(176)을 포함한다.The mobile web server 152 of the second embodiment has a script language execution module 170 in itself to minimize the waiting time for the execution of the script language, and the script language execution module 170 of the present embodiment uses a script file. Compiler 175 to compile, caching means 177 and the Excutor (176).

본 실시예의 컴파일러(175)는, 모바일 웹 서버(152)에서 요청된 PHP 스크립트 파일을 로드하여 컴파일하고 그 결과인 OP 코드(Operation Code)를 리턴하는 JIT 컴파일 모듈에 의할 수 있고, 본 실시예의 JIT 컴파일 모듈은 PHP 스크립트 파 일을 컴파일하여 생성된 OP 코드를 이진코드(Machine Code)로 컴파일 또는 캐슁하여 실행속도를 증가시키는 것이 가능하다. The compiler 175 of the present embodiment may be a JIT compilation module that loads and compiles a PHP script file requested by the mobile web server 152 and returns an OP code (Operation Code) as a result. The JIT compilation module can increase the execution speed by compiling or caching the OP code generated by compiling a PHP script file into binary code.

예컨대, JIT 컴파일 모듈이 없는 경우에는 PHP 스크립트 실행시 각각의 파일을 로드할 때마다 계속 반복하여야 하므로 PHP 등의 스크립트 언어 사용시 속도 저하의 주요인이 되고 있었으나, 본 실시예에서는 JIT 컴파일 및 케슁을 수행하므로 컴파일에 의한 오버헤드가 무시할 수준에 이르게 된다.For example, in the absence of a JIT compilation module, it is a major cause of the slowdown in using a scripting language such as PHP because it must be repeated every time each file is loaded when executing a PHP script. Compilation overhead leads to negligible levels.

도 7b에 도시된 바와 같이, 본 실시예에서 JIT 컴파일 모듈은 컴파일이 요청된 스크립트 파일이 이미 사용된 파일인지 여부를 판단하고, 처음 사용파일인 경우에는 컴파일을 수행하며, 이진코드에 의해 스크립트를 실행하기에 앞서서 컴파일된 OP코드의 케슁에 의한 OP트리 및 기능/클래스 테이블을 저장하도록 구성할 수 있다.As shown in FIG. 7B, in the present embodiment, the JIT compilation module determines whether the script file for which compilation is requested is a file that has already been used, and if the file is used for the first time, compiles the script file. You can configure it to store OP trees and function / class tables by caching compiled OP code before executing.

한편, 컴파일이 요청된 스크립트 파일이 기 사용된 파일인 경우에는 케슁된 OP 트리 및 기능/클래스 테이블을 검출하여 즉시 실행할 수 있도록 하기 때문에 최적의 속도 향상을 달성하는 것이 가능해진다.On the other hand, if the script file that is requested to be compiled is a previously used file, optimal speed improvement can be achieved because the detected OP tree and the function / class table can be detected and executed immediately.

다음은 상기와 같은 구성의 본 발명의 모바일 웹 어플리케이션 프레임웍의 바람직한 제 1과 제2 실시예의 작용을 설명한다. The following describes the operation of the first and second preferred embodiments of the mobile web application framework of the present invention having the above configuration.

도 3a, 도 3b에 도시된 바와 같이 본 발명의 실시예의 모바일 단말(90)은 자체 내에 시스템의 특수성과 OS 환경에 대응하는 모바일 웹 어플리케이션 프레임웍을 탑재하고, 모바일 웹서버(52,152)에 대하여 UI 에이전트(21)를 모바일 웹 서 버(52,152)에 클라이언트로 동작하게 함으로써 전통적인 서버-클라이언트 구조를 도입하고 있다. As shown in Figs. 3A and 3B, the mobile terminal 90 of the embodiment of the present invention has a mobile web application framework corresponding to the specificity and OS environment of the system in itself, and the UI agent for the mobile web servers 52 and 152. By introducing 21 as a client to the mobile web servers 52 and 152, a traditional server-client architecture is introduced.

예컨대, 클라이언트 PC 단말의 외부에 서버를 구비하여 다수의 클라이언트 PC에 대하여 웹 서비스를 제공하는 전통적인 웹의 서버-클라이언트 구성은, 모바일환경의 시스템 특수성과 자원의 한계성 및 기존 모바일 웹 어플리케이션의 개발 패러다임 간의 상이로 인해 적용하기 곤란한 측면이 있다. 이를 극복하기 위하여 본 발명의 모바일 웹 어플리케이션 프레임웍은 해당 모바일 단말(90)에 최적화된 모바일 웹 서버(52,152)와 클라이언트로 동작하는 UI 에이전트(21)를 구비하여, 일반적인 웹 환경에 대한 인터페이스를 제공함으로써, 그 모바일 단말의 UI 및 타 단말이 일반적인 웹 환경의 구성요소로 작용할 수 있도록 하는 기반을 제공한다. For example, the traditional web server-client configuration, which provides a web service to a plurality of client PCs by providing a server outside the client PC terminal, is divided between a system specificity of a mobile environment, resource limitations, and a development paradigm of an existing mobile web application. There are aspects that are difficult to apply due to the difference. In order to overcome this problem, the mobile web application framework of the present invention includes mobile web servers 52 and 152 optimized for the mobile terminal 90 and a UI agent 21 acting as a client, thereby providing an interface to a general web environment. In addition, the mobile terminal provides a basis for allowing the UI and other terminals to function as components of a general web environment.

또한, 본 실시예의 모바일 웹 어플리케이션 프레임웍은 모바일 웹서버-UI 에이전트 구성을 전제로, 전통적인 웹 어플리케이션의 경우와 동일하게 어플리케이션 로직을 다른 구성요소(즉, 웹 표현 및 데이터저장시스템)로부터 분리구성하여 기존 웹 개발자의 익숙한 개발환경과 동일한 개발환경을 제공한다.In addition, the mobile web application framework of the present embodiment is based on the mobile web server-UI agent configuration, and separates the application logic from other components (that is, the web presentation and data storage system) in the same way as the conventional web application. It provides the same development environment as the web developer's familiar development environment.

즉, 본 발명의 실시예의 웹 어플리케이션 프레임웍은, 웹 어플리케이션의 웹 표현, 데이터베이스 및 어플리케이션 로직을 분리하여 유연성과 확장성을 지닌 3-Tier 구조의 애플리케이션을 구성할 수 있도록 함으로써, 어플리케이션의 각 구성요소 별로 개발과 수정 및 개작을 가능하게 하며, 주위 환경변화에 유연한 대응이 가능하고 어플리케이션의 확장이 용이하게 이루어질 수 있게 한다.That is, the web application framework of the embodiment of the present invention separates the web representation of the web application, the database, and the application logic so that a three-tier structured application can be configured with flexibility and extensibility, thereby for each component of the application. It enables development, modification and modification, and enables flexible response to changes in the surrounding environment and easy expansion of applications.

예컨대, 본 실시예의 모바일 웹 어플리케이션 프레임웍은 HTML, SVG, JavaScript/CSS, PHP 및 CGI에 의하며, 웹 표현은 HTML, SVG, JavaScript, CSS 및 Flash 등에 의하고, 웹 어플리케이션 로직을 위한 서버 측 스크립트 언어는 PHP 및 CGI에 의하도록 하여 상기 모바일 웹서버-UI에이전트 환경에서 기존의 웹 어플리케이션 개발방식 및 언어를 그대로 사용할 수 있고 웹 2.0의 다양한 자원 및 네이티브 어플리케이션의 코드 재사용을 가능하게 한다.For example, the mobile web application framework of the present embodiment is HTML, SVG, JavaScript / CSS, PHP, and CGI, the web representation is HTML, SVG, JavaScript, CSS, and Flash, and the server-side scripting language for web application logic is PHP. And CGI to use existing web application development methods and languages in the mobile web server-UI agent environment, and to enable code reuse of various resources and native applications of Web 2.0.

이에 의해, 본 실시예의 웹 어프리케이션 프레임웍은 모바일 단말(90)에게 Web 2.0 환경에 대한 인터페이스로 작용하여, 모바일 단말(90)의 시스템 특수성과 한계를 극복하며, 기존 웹 도구를 이용한 다양한 모바일 웹 어플리케이션 개발을 가능하게 하고, 모바일 단말(90)에 대해 Web 2.0의 환경과 소산에 대한 호환성을 제공한다. Accordingly, the web application framework of the present embodiment acts as an interface to the Web 2.0 environment for the mobile terminal 90, overcoming the system specificity and limitations of the mobile terminal 90, and various mobile web applications using existing web tools. Enable development and provide compatibility for the environment and dissipation of Web 2.0 for the mobile terminal 90.

본 발명의 권리범위는 상기 실시예에 한정되는 것이 아니라 특허청구범위에 기재된 사항에 의해 정해지며, 청구범위 기재사항과 균등범위에서 당업자가 행한 다양한 변형과 개작을 포함함은 자명하다.The scope of the present invention is not limited to the above embodiments, but is determined by the matters described in the claims, and it is obvious that the present invention includes various modifications and adaptations made by those skilled in the art in the claims and equivalents.

도 1은 종래의 모바일 웹 어플리케이션 프레임웍(Mobile Web Appication FrameWork)을 예시한 개요도.1 is a schematic diagram illustrating a conventional Mobile Web Appication FrameWork.

도 2는 본 발명의 실시예의 모바일 단말의 소프트웨어 구성을 예시한 개요도.2 is a schematic diagram illustrating a software configuration of a mobile terminal of an embodiment of the present invention.

도 3a 및 도 3b는 본 발명의 실시예의 모바일 웹 어플리케이션 프레임 웍을 탑재한 단말의 소프트웨어 구성를 예시한 개요도.3A and 3B are schematic diagrams illustrating a software configuration of a terminal equipped with a mobile web application framework according to an embodiment of the present invention.

도 4는 본 발명의 제 1 실시예의 모바일 웹 어플리케이션 프레임웍의 구성을 예시한 개요도. 4 is a schematic diagram illustrating a configuration of a mobile web application framework of a first embodiment of the present invention;

도 5a는 본 발명의 실시예의 모바일 웹 어플리케이션 프레임웍의 UI 에이전트의 구성을 예시한 개요도.5A is a schematic diagram illustrating a configuration of a UI agent of a mobile web application framework of an embodiment of the present invention.

도 5b는 본 발명의 실시예의 렌더링 레이어의 구성을 예시한 개요도이고, 도 5c는 UI 에이전트에서의 어플리케이션을 구동시키는 과정을 예시한 흐름도. 5B is a schematic diagram illustrating the configuration of a rendering layer in an embodiment of the present invention, and FIG. 5C is a flowchart illustrating a process of running an application in a UI agent.

도 6a는 본 발명의 제 1 실시예의 모바일 웹 서버의 구성을 예시한 개요도.Fig. 6A is a schematic diagram illustrating the configuration of a mobile web server of a first embodiment of the present invention.

도 6b는 본 발명의 제 2 실시예의 모바일 하이브리드 플랫폼의 구성을 예시한 개요도.6B is a schematic diagram illustrating a configuration of a mobile hybrid platform of a second embodiment of the present invention.

도 7a는 본 발명의 실시예의 스크립트 엔진의 구성을 예시한 개요도. 7A is a schematic diagram illustrating a configuration of a script engine of an embodiment of the present invention.

도 7b는 본 발명의 실시예의 스크립트 엔진에 구비되는 JIT 컴파일러의 동작과정을 예시한 흐름도.7B is a flowchart illustrating an operation process of the JIT compiler included in the script engine of the embodiment of the present invention.

Claims (23)

UI 에이전트와;A UI agent; 상기 UI 에이전트의 요청을 관리하며 요청에 대한 결과를 반환하며, 필요한 연산을 수행하기 위한 스크립트언어 실행모듈을 구비한 모바일 웹서버를 구비한 모바일 하이브리드 플랫폼을 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.A mobile web application comprising a mobile hybrid platform having a mobile web server having a script language execution module for managing a request of the UI agent and returning a result of the request and performing a required operation. Framework. 청구항 1에 있어서, 상기 스크립트언어 실행모듈은,The method according to claim 1, wherein the script language execution module, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와;A compiler that loads and compiles a PHP script file and returns the result as an OP code; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신과;A virtual machine executing the OP code returned by the compiler; 상기 컴파일러에 의해 리턴된 OP코드를 케슁하여 중복된 요청에 대해서 빠른 응답을 보장하는 케슁수단을 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.And a caching means for caching the OP code returned by the compiler to ensure fast response to duplicate requests. 청구항 1에 있어서, 상기 스크립트언어 실행모듈은,The method according to claim 1, wherein the script language execution module, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴 파일러와;A compiler that loads and compiles a PHP script file and returns the result as an OP code; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신을 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.Mobile web application framework, characterized in that it comprises a virtual machine for executing the OP code returned by the compiler. 청구항 1에 있어서, 상기 스크립트 언어 실행모듈은,The method of claim 1, wherein the script language execution module, 모바일 단말에 탑재되는 네이티브 어플리케이션 프레임웍의 네이티브 함수 및 기능과 연동하기 위한 확장 API(Extensible Application Programming Interface)를 포함하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.A mobile web application framework comprising an Extensible Application Programming Interface (API) for interworking with native functions and functions of a native application framework mounted on a mobile terminal. 청구항 1에 있어서, 상기 스크립트 언어 실행모듈은, The method of claim 1, wherein the script language execution module, PHP의 확장함수를 수용하기 위한 PHP 확장모듈을 더 구비하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.A mobile web application framework further comprising a PHP extension module for accommodating PHP extension functions. UI 에이전트와;A UI agent; 상기 UI 에이전트의 요청을 관리하며 요청에 대한 결과를 반환하는 모바일 웹서버 및 상기 모바일 웹서버의 명령에 따라 필요한 연산을 수행하여 상기 모바일 웹서버로 반환하는 스크립트 엔진을 포함한 모바일 하이브리드 플랫폼을 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.And a mobile hybrid platform including a mobile web server that manages the request of the UI agent and returns a result of the request, and a script engine that performs a required operation according to a command of the mobile web server and returns the result to the mobile web server. Mobile web application framework, characterized in that. 청구항 1 또는 6에 있어서, 상기 모바일 하이브리드 플랫폼의 구성언어는 HTML와 SVG 중 적어도 어느 하나와, JavaScript와, 서버측 스크립트 언어를 포함하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍. The mobile web application framework of claim 1 or 6, wherein the constituent language of the mobile hybrid platform comprises at least one of HTML and SVG, JavaScript, and a server-side scripting language. 청구항 1 또는 6에 있어서, 상기 서버측 스크립트 언어는 PHP 및 CGI에 의하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임 웍.7. The mobile web application framework of claim 1 or 6, wherein the server-side scripting language is by PHP and CGI. 청구항 1 또는 6에 있어서, 상기 모바일 웹 어플리케이션 프레임 웍에서 동작하는 웹 어플리케이션은, The method according to claim 1 or 6, wherein the web application running in the mobile web application framework, 웹 표현을 위한 구성과, 어플리케이션 로직을 위한 구성 및 데이터저장시스템으로 분리된 3-Tier 구조를 구비하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임 웍.A mobile web application framework comprising a 3-tier structure separated into a configuration for web presentation, a configuration for application logic, and a data storage system. 청구항 9에 있어서, 상기 웹 표현을 위한 구성은 HTML, SVG, CSS, JavaScript, Flash 중 적어도 어느 하나에 의해 구성되는 것을 특징으로 하는 웹 어플리케이션 프레임 웍.The web application framework of claim 9, wherein the configuration for the web presentation is configured by at least one of HTML, SVG, CSS, JavaScript, and Flash. 청구항 9에 있어서, 상기 어플리케이션 로직을 위한 구성은 PHP 및 CGI에 의하는 것을 특징으로 하는 웹 어플리케이션 프레임 웍.10. The web application framework of claim 9, wherein the configuration for the application logic is by PHP and CGI. 청구항 6에 있어서, 상기 스크립트 엔진은,The method of claim 6, wherein the script engine, 모바일 단말에 탑재되는 네이티브 어플리케이션 프레임웍의 네이티브 함수 및 기능과 연동하기 위한 확장 API(Extensible Application Programming Interface)를 포함하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.A mobile web application framework comprising an Extensible Application Programming Interface (API) for interworking with native functions and functions of a native application framework mounted on a mobile terminal. 청구항 6에 있어서, 상기 스크립트 엔진은, The method of claim 6, wherein the script engine, PHP의 확장함수 등을 수용하기 위한 PHP 확장모듈을 구비하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.A mobile web application framework comprising a PHP extension module for accommodating PHP extension functions. 청구항 6에 있어서, 상기 스크립트 엔진은, The method of claim 6, wherein the script engine, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와;A compiler that loads and compiles a PHP script file and returns the result as an OP code; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신과;A virtual machine executing the OP code returned by the compiler; 상기 가상머신의 API 함수에 대한 접근 및 실행권한을 제어하는 엑세스 컨트롤 모듈과;An access control module for controlling access and execution rights to the API functions of the virtual machine; 상기 컴파일러에 의해 리턴된 OP코드를 케싱하여 중복된 요청에 대해서 빠른 응답을 보장하는 케싱수단을 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.And a caching means for caching the OP code returned by the compiler to ensure a quick response to duplicate requests. 청구항 6에 있어서, 상기 스크립트 엔진은, The method of claim 6, wherein the script engine, PHP 스크립트 파일을 로드하여 컴파일하고 그 결과를 OP코드로 리턴하는 컴파일러와;A compiler that loads and compiles a PHP script file and returns the result as an OP code; 상기 컴파일러에 의해 리턴된 OP코드를 실행하는 가상머신과;A virtual machine executing the OP code returned by the compiler; 상기 가상머신의 API 함수에 대한 접근 및 실행권한을 제어하는 엑세스 컨트롤 모듈을 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.Mobile web application framework, characterized in that it comprises an access control module for controlling the access and execution rights to the API function of the virtual machine. 청구항 1 또는 6에 있어서, 상기 모바일 하이브리드 플랫폼은,The method according to claim 1 or 6, wherein the mobile hybrid platform, 상기 UI 에이전트의 요청을 모바일 하이브리드 플랫폼에 문의하고 그 결과물의 컨텐트 타입에 따라 적합한 플레이어를 지정하여 UI 에이전트로 전달하는 웹 어플리케이션 매니저를 더 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.And a web application manager for inquiring the request of the UI agent to the mobile hybrid platform and designating a suitable player according to the content type of the result of the UI agent. 청구항 1 또는 6에 있어서, 상기 모바일 하이브리드 플랫폼은, The method according to claim 1 or 6, wherein the mobile hybrid platform, 상기 모바일 단말의 제어 및 리소스의 활용을 가능하게 하는 확장모듈을 더 포함하여 구성되는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임웍.Mobile web application framework, characterized in that it further comprises an expansion module for enabling the control and utilization of resources of the mobile terminal. 청구항 17에 있어서, 상기 확장모듈은,The method of claim 17, wherein the expansion module, 오픈 API와, Common Resourse 및 플러그인 모듈 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임 웍.A mobile web application framework comprising an open API, at least one of a common resource and a plug-in module. 청구항 1 또는 6에 있어서, 상기 UI 에이전트는, The method according to claim 1 or 6, wherein the UI agent, 브라우저 또는 플레이어로부터 독립하여 렌더링이 수행되는 레이어인 렌더링 레이어를 제공하며, 상기 렌더링 레이어에 어플리케이션을 실행하기 위해 필요한 컴포넌트를 플러그인 하는 것을 특징으로 하는 모바일 웹 어플리케이션 프레임 웍.A mobile web application framework, which provides a rendering layer, which is a layer in which rendering is performed independently from a browser or a player, and plugs in components required for executing an application to the rendering layer. 청구항 19에 있어서, 상기 렌더링 레이어는 복수개의 캔버스로 구성되며, 상기 캔버스에 상기 웹 어플리케이션 매니저가 지정한 각 컴포넌트 대응시켜 렌더링하는 것을 특징으로 하는 모바일 웹어플리케이션 프레임웍.The mobile web application framework of claim 19, wherein the rendering layer comprises a plurality of canvases and renders the canvas by mapping each component designated by the web application manager to the canvas. 청구항 1 또는 6에 있어서, 상기 모바일 웹서버는,The method of claim 1 or 6, wherein the mobile web server, 상기 UI 에이전트와의 소켓 연결을 처리하는 컨넥션 메니저와;A connection manager for handling socket connections with the UI agent; 상기 UI 에이전트의 HTTP/HTTPS 요청을 받아서 처리하는 HTTP 핸들러와;An HTTP handler for receiving and processing an HTTP / HTTPS request from the UI agent; 상기 HTTP 핸들러가 수신한 요청에 대해 케슁정책에 따라 결과를 케슁하여 제공하는 Response 핸들러를 포함하여 구성되는 것을 특징으로 하는 웹어플리케이션 프레임웍.Web response framework comprising a response handler for the request received by the HTTP handler to provide a result of the request according to the policy policy. 청구항 1 내지 6, 12 내지 15 중 어느 하나의 청구항에 있어서의 웹 어플리케이션 프레임웍을 탑재한 것을 특징으로 하는 모바일 단말.A mobile terminal comprising the web application framework according to any one of claims 1 to 6 and 12 to 15. 청구항 1 내지 6, 12 내지 15 중 어느 하나의 청구항에 있어서의 웹 어플리 케이션 프레임웍을 컴퓨터 시스템상에서 구현하는 컴퓨터 프로그램을 내장한 것을 특징으로 하는 저장매체.A storage medium comprising a computer program for implementing a web application framework according to any one of claims 1 to 6 and 12 to a computer system.
KR1020090006888A 2009-01-29 2009-01-29 A mobile web application framework, mobile terminal, and, a storage medium KR20100087860A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090006888A KR20100087860A (en) 2009-01-29 2009-01-29 A mobile web application framework, mobile terminal, and, a storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090006888A KR20100087860A (en) 2009-01-29 2009-01-29 A mobile web application framework, mobile terminal, and, a storage medium

Publications (1)

Publication Number Publication Date
KR20100087860A true KR20100087860A (en) 2010-08-06

Family

ID=42754219

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090006888A KR20100087860A (en) 2009-01-29 2009-01-29 A mobile web application framework, mobile terminal, and, a storage medium

Country Status (1)

Country Link
KR (1) KR20100087860A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101389729B1 (en) * 2011-12-15 2014-04-28 주식회사 미니게이트 A mobile device having extended web-browser using virtual web-server and application execution method thereof
US8966508B2 (en) 2012-02-20 2015-02-24 Electronics And Telecommunications Research Institute Method for executing hybrid web application and apparatus therefor
CN104572114A (en) * 2015-01-23 2015-04-29 盟游(北京)科技有限公司 Binding device, application updating device and method and application
KR20150069793A (en) * 2013-12-16 2015-06-24 에릭슨엘지엔터프라이즈 주식회사 Method and apparatus for sharing application database
CN107766037A (en) * 2017-10-23 2018-03-06 齐琦 MVC frameworks based on PHP

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101389729B1 (en) * 2011-12-15 2014-04-28 주식회사 미니게이트 A mobile device having extended web-browser using virtual web-server and application execution method thereof
US8966508B2 (en) 2012-02-20 2015-02-24 Electronics And Telecommunications Research Institute Method for executing hybrid web application and apparatus therefor
KR20150069793A (en) * 2013-12-16 2015-06-24 에릭슨엘지엔터프라이즈 주식회사 Method and apparatus for sharing application database
CN104572114A (en) * 2015-01-23 2015-04-29 盟游(北京)科技有限公司 Binding device, application updating device and method and application
CN104572114B (en) * 2015-01-23 2017-11-28 盟游(北京)科技有限公司 A kind of binding device, using updating device and method
CN107766037A (en) * 2017-10-23 2018-03-06 齐琦 MVC frameworks based on PHP

Similar Documents

Publication Publication Date Title
US8745573B2 (en) Platform-independent application development framework
Taivalsaari et al. Web browser as an application platform
US9766867B2 (en) Systems and methods for improving performance of mobile applications
WO2017050094A1 (en) Method and apparatus for loading application program
US8615750B1 (en) Optimizing application compiling
US10209968B2 (en) Application compiling
US9069549B2 (en) Machine processor
JP2014523042A (en) Business model oriented software execution platform and its execution mode
WO2008091105A1 (en) Method for generating cross platform program and middleware platform layer thereof
WO2015014143A1 (en) Method and apparatus for cross-platform application conversion
US9189228B2 (en) Systems and methods for developing and testing electronic content using multiple devices
CN109656617A (en) A kind of front end Web Service dispositions method, storage medium, electronic equipment and system
CN103443763A (en) ISA bridging including support for call to overidding virtual functions
Gok et al. Building Hybrid Android Apps with Java and JavaScript: Applying Native Device APIs
KR20100087860A (en) A mobile web application framework, mobile terminal, and, a storage medium
CN112035112A (en) Application program development method, system, medium and electronic device
EP1949228B1 (en) Asynchronous just-in-time compilation
US20090049423A1 (en) Javascripttm programming extension
Wagner Professional flash mobile development: Creating android and iphone applications
CN112068879A (en) Method and device for constructing client application development framework based on configuration
US11758016B2 (en) Hosted application as web widget toolkit
Kok Hands-on Nuxt. js Web Development: Build universal and static-generated Vue. js applications using Nuxt. js
CN111971655A (en) Native runtime techniques for hypertext markup language graphical content
Haja et al. Location, proximity, affinity–the key factors in FaaS
CN112612531A (en) Application program starting method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application