KR101695009B1 - Method for optimizing javascript library in mobile environment and apparatus for the same - Google Patents
Method for optimizing javascript library in mobile environment and apparatus for the same Download PDFInfo
- Publication number
- KR101695009B1 KR101695009B1 KR1020110084798A KR20110084798A KR101695009B1 KR 101695009 B1 KR101695009 B1 KR 101695009B1 KR 1020110084798 A KR1020110084798 A KR 1020110084798A KR 20110084798 A KR20110084798 A KR 20110084798A KR 101695009 B1 KR101695009 B1 KR 101695009B1
- Authority
- KR
- South Korea
- Prior art keywords
- javascript
- javascript library
- library
- web browser
- mobile terminal
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
Abstract
본 발명에 따른 모바일 환경에서의 자바 스크립트 라이브러리 최적화 방법 및 장치가 개시된다. 본 발명에 따른 모바일 환경에서의 자바 스크립트 라이브러리 최적화 방법은 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 최적화하는 방법으로, 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화 단계 및 상기 제 1 최적화 단계에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 주요 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 구현하는 제2 최적화 단계를 포함하여 구성된다. 따라서, 발명에 따른 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 방법을 이용할 경우에는 기존의 범용적인 자바 스크립트를 사용하여 모바일 환경에 맞게 재 구현함으로써, 어플리케이션 프로그래밍 인터페이스(API: Application Programming Interface)를 수정하지 않으면서, 성능을 최적화할 수 있다.A method and apparatus for optimizing a JavaScript library in a mobile environment according to the present invention are disclosed. A method for optimizing a JavaScript library in a mobile environment according to the present invention is a method for optimizing a JavaScript library according to a web browser of a mobile terminal using an existing JavaScript library, A first optimization step of reconstructing a JavaScript library in accordance with a web browser of the mobile terminal by removing a portable code implemented so as to be adaptable to the web browser of the mobile terminal, And a second optimization step of implementing the main function modules to be performed on the web browser engine of the mobile terminal. Therefore, when the method of optimizing the JavaScript library in the mobile environment according to the present invention is used, the application programming interface (API) is modified by modifying the application programming interface Without performance, you can optimize performance.
Description
본 발명은 모바일 환경에서 자바 스크립트 라이브러리를 최적화하는 방법에 관한 것으로, 더욱 상세하게는 기존의 자바 스크립트 라이브러리를 이용하여 모바일 환경에 맞도록 자바 스크립트 라이브러리를 최적화하는 방법 및 장치에 관한 것이다.The present invention relates to a method for optimizing a JavaScript library in a mobile environment, and more particularly, to a method and apparatus for optimizing a JavaScript library for a mobile environment using an existing JavaScript library.
1995년에 넷스케이프(Netscape)를 통해 자바 스크립트(Javascript)가 소개된 이후로, 자바 스크립트는 웹 브라우저에 대한 표준으로 인정되어 발전되어 왔고, 오늘날에는 초기의 버전과 비교하여 상당히 많은 부분 개선되었다. 그러나, 사실상 자바 스크립트 자체만 순수하게 사용되는 경우는 없고, 자바 스크립트의 기능성을 확장시킨 자바 스크립트 라이브러리를 이용하여 사용된다. 이러한 자바 스크립트 라이브러리는 자바 스크립트만을 사용했을 때 발휘할 수 있는 기능을 훨씬 더 확장하는 장점이 있다.Since the introduction of JavaScript through Netscape in 1995, JavaScript has been recognized as a standard for Web browsers, and today has undergone a significant improvement over earlier versions. In fact, JavaScript itself is not used purely, but it is used by JavaScript library that extends JavaScript functionality. This JavaScript library has the advantage of extending the functionality that can only be achieved when using JavaScript only.
최근 모바일 웹 OS 환경에서의 자바 스크립트의 사용이 점차적으로 증가하고 있다. 종래의 자바 스크립트는 HTML문서내의 텍스트와 데이터를 조작하기 위하여 사용되었지만, 모바일 웹 OS 환경의 경우, 자바 스크립트는 단지 텍스트와 데이터의 조작만이 아닌 사용자 인터페이스의 조작을 위해서도 사용된다. 사용자 인터페이스는 HTML 또는 종래의 사용자 인터페이스 정의 언어를 사용하여 디스플레이될 수 있다.Recently, the use of JavaScript in the mobile web OS environment is gradually increasing. Conventional JavaScript was used to manipulate text and data within an HTML document, but in the case of a mobile Web OS environment, JavaScript is used not only for text and data manipulation but also for manipulation of the user interface. The user interface can be displayed using HTML or a conventional user interface definition language.
그러나 모바일 환경에서는 성능이 주요한 요건이기 때문에, 자바 스크립트 라이브러리가 일반적인 웹 환경에서처럼 사용되지는 않는데, 즉, 라이브러리 그 자체로서 사용되는 것이 아니고, 확장된 자바 스크립트로서 구현된다. 그러나 이러한 방법은 상당히 복잡한 구현 과정이 요구되기도 하고, 현존하는 인기 있는 범용 자바 스크립트 라이브러리를 활용할 수 없는 문제가 있다.However, because performance is a key requirement in mobile environments, the JavaScript library is not used as in a typical web environment, that is, it is not used as a library itself, but as an extended JavaScript. However, this approach requires a fairly complicated implementation process and can not take advantage of the existing popular general-purpose JavaScript libraries.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 성능저하를 유발하지 않고 기존의 자바 스크립트 라이브러리를 활용할 수 있는 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 방법을 제공하는데 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide a method for optimizing a JavaScript library in a mobile environment that can utilize an existing JavaScript library without causing performance degradation.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 성능저하를 유발하지 않고 기존의 자바 스크립트 라이브러리를 활용할 수 있는 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 장치를 제공하는데 있다.Another object of the present invention is to provide an apparatus for optimizing a JavaScript library in a mobile environment that can utilize an existing JavaScript library without causing performance degradation.
상기 목적을 달성하기 위한 본 발명은, 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 최적화하는 방법으로, 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화 단계 및 상기 제 1 최적화 단계에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 주요 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 구현하는 제2 최적화 단계를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법을 제공한다.According to an aspect of the present invention, there is provided a method of optimizing a JavaScript library according to a web browser of a mobile terminal using an existing JavaScript library, the method comprising: A first optimization step of reconstructing a JavaScript library in accordance with a web browser of the mobile terminal by removing a portable code that has been predefined in the JavaScript library re-implemented in the first optimization step, And a second optimization step of implementing the second optimization step to be performed on the web browser engine of the mobile terminal.
여기서, 상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록, 어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 한다.Here, the existing JavaScript library may be configured to recognize the type of any one of the web browsers when JavaScript is executed in any one of the web browsers so as to be applicable to various types of web browsers, The portable terminal includes a portable terminal, and a portable terminal.
여기서, 상기 제1 최적화 단계의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징한다.Here, the re-implementation of the JavaScript library in the first optimization step may include removing the portable code from the existing JavaScript library, and allowing the function modules in the library, in which the code is removed without the portable code, And modifying the functional modules so as to be able to operate according to the characteristics of the web browser.
여기서, 상기 주요 기능 모듈은, 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 모듈인 것을 특징으로 한다.Here, the main function module is a module repeatedly used more than a predetermined number of times within a predetermined defined time.
여기서, 상기 제2 최적화 단계에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 한다.Here, in the second optimization step, the implementation of the main function module on the web browser engine is implemented using a lower level language than JavaScript.
상기 목적을 달성하기 위한 본 발명은 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 최적화하는 장치로, 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화부 및 상기 제 1 최적화부에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 하위 레벨의 언어로 구현하는 제2 최적화부를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치를 제공한다.According to an aspect of the present invention, there is provided an apparatus for optimizing a JavaScript library in accordance with a web browser of a mobile terminal using an existing JavaScript library, A first optimization unit that removes a portable code and re-implements a JavaScript library in accordance with a web browser of the mobile terminal, and a second optimizer that re-implements a JavaScript library in a predetermined number of times And a second optimizer for implementing function modules repeatedly used in a lower level language so as to be executed on the web browser engine of the mobile terminal.
여기서, 상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록, 어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 한다.Here, the existing JavaScript library may be configured to recognize the type of any one of the web browsers when JavaScript is executed in any one of the web browsers so as to be applicable to various types of web browsers, The portable terminal includes a portable terminal, and a portable terminal.
여기서, 상기 제1 최적화부의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징으로 한다.Here, the re-implementation of the JavaScript library of the first optimizing unit may include removing the portable code from the existing JavaScript library, and allowing the function modules in the library, in which the code is removed without the portable code, The functional modules are changed and implemented so as to be able to operate in accordance with the characteristics of the browser.
여기서, 상기 제2 최적화부에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 한다.Here, in the second optimizing unit, the implementation of the main function module on the web browser engine is implemented using a lower level language than JavaScript.
상기와 같은 본 발명에 따른 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 방법 및 장치를 이용할 경우에는 기존의 범용적인 자바 스크립트를 사용하여 모바일 환경에 맞게 재 구현함으로써, 어플리케이션 프로그래밍 인터페이스(API: application programming interface)를 수정하지 않으면서, 성능을 최적화할 수 있다. 또한 이러한 방법은 사용을 통해 검증된 범용의 인기 있는 웹 표준을 사용할 수 있는 장점이 있고, 개발자들은 이미 이 표준에 친숙하기 때문에 새로운 시스템에 적응해야 하는 시간을 절약할 수 있다.When a method and an apparatus for optimizing a JavaScript library in a mobile environment according to the present invention are used, it is possible to re-implement an application programming interface (API) using an existing general- You can optimize performance, without modifying it. This approach also has the benefit of using popular, popular web standards that have been validated through use, and developers are already familiar with the standard, saving time to adapt to the new system.
도 1은 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계를 보여주는 시퀀스 챠트이다.
도 2는 종래의 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.
도 3은 본 발명의 일 실시예에 따른 모바일 환경에 최적화된 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.
도 4는 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 장치를 보여주는 블록도이다.FIG. 1 is a sequence chart showing steps for optimizing a JavaScript library according to an exemplary embodiment of the present invention to a mobile environment.
2 is a conceptual diagram showing a configuration of a conventional JavaScript library.
3 is a conceptual diagram illustrating a configuration of a JavaScript library optimized for a mobile environment according to an embodiment of the present invention.
4 is a block diagram illustrating an apparatus for optimizing a JavaScript library in a mobile environment according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.
이하 본 발명에 따른 사상이 개시된다.An idea according to the present invention will now be described.
본 발명의 사상은 완전히 새로운 사용자 인터페이스 언어를 개발하거나 자바 스크립트 라이브러리를 개발함으로써 기존의 자바 스크립트를 재 구현하는 방법에서 비롯된다. 이러한 방법은 현존하는 범용의 인기 있는 웹 표준을 사용할수도 있는 장점을 갖는데, 이러한 표준들은 이미 사용을 통해 증명되었고 또한 개발자들은 이미 이 표준에 친숙하기 때문에 새로운 시스템에 적응해야 하는 시간을 절약할 수 있다.The idea of the present invention arises from a method of re-implementing existing JavaScript by developing a completely new user interface language or developing a JavaScript library. This approach has the advantage of using existing popular universal web standards, which have already been proved through use and developers are already familiar with this standard, saving time to adapt to the new system .
그러나, 자바 스크립트 및 범용의 인기 있는 자바 스크립트 라이브러리는 웹 개발을 위한 목적으로 개발되었기 때문에, 많은 서로 다른 웹 브라우저에서 동작한다. 이러한 기능성은 성능저하의 문제점이 있다. 이는 일반적인 웹 환경이라면 무시할 수 있는 정도의 수준이지만 모바일/임베디드 시스템 환경에서 사용될 때는 주요한 문제가 될 수 있다. However, because the popular JavaScript libraries for JavaScript and general purpose are developed for web development purposes, they work on many different web browsers. This functionality has the problem of performance degradation. This is negligible for a typical Web environment, but can be a major problem when used in a mobile / embedded system environment.
따라서, 본 발명은 기존의 자바 스크립트 라이브러리에 대하여 외적인 부분에 대한 변경을 가하지 않으면서, 즉, 예를 들면, 어플리케이션 프로그래밍 인터페이스(API: Application Programming Interface)를 수정하지 않으면서, 성능을 최적화하는 방법 및 장치를 개시한다. 한편, 이와 같이 최적화된 자바 스크립트 라이브러리는 비-모바일 환경에서도 동작할 수 있다.
Accordingly, the present invention provides a method for optimizing performance without modifying an external part of an existing JavaScript library, that is, for example, without modifying an application programming interface (API) Device. On the other hand, this optimized JavaScript library can also work in non-mobile environments.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
먼저 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계를 설명하고, 다음으로 종래의 자바 스크립트 라이브러리의 구성과 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 비교하여 설명하기로 한다.
First, the steps for optimizing a JavaScript library according to an embodiment of the present invention to a mobile environment will be described. Next, a description will be given of a comparison between a configuration of a conventional JavaScript library and a JavaScript library according to an embodiment of the present invention .
도 1은 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계를 보여주는 시퀀스 챠트이다.FIG. 1 is a sequence chart showing steps for optimizing a JavaScript library according to an exemplary embodiment of the present invention to a mobile environment.
도 1을 참조하면, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계는 제1 최적화 단계(S110) 및 제 2최적화 단계(S120)을 포함하여 구성될 수 있다.Referring to FIG. 1, a step of optimizing a JavaScript library according to an embodiment of the present invention to a mobile environment may include a first optimization step (S110) and a second optimization step (S120).
또한 도 1을 참조하면, 제1 최적화 단계(S110)는 이식성 코드 제거 단계(S111), 모듈 수정 단계(S113)을 포함하여 구성되고, 제 2최적화 단계(S120)는 주요 기능 모듈 추출 단계(S121)와 웹 브라우저 엔진상에 구현 단계(S123)를 포함하여 구성될 수 있다.1, the first optimization step S110 includes a portable code removal step S111 and a module correction step S113. In the second optimization step S120, a main function module extraction step S121 And an implementation step S123 on the web browser engine.
이하, 도 1을 참조하여, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 각 단계를 좀 더 상세하게 설명하기로 한다.Hereinafter, with reference to FIG. 1, each step for optimizing a JavaScript library according to an embodiment of the present invention to a mobile environment will be described in more detail.
제1 최적화 단계(S110)는 모바일 단말에서 수행되는 웹 브라우저의 특성에 맞도록, 기존의 자바 스크립트 라이브러리내 기능 모듈들을 해당 모바일 단말내의 자바 스크립트 라이브러리로서 재 구현하여 최적화하는 단계로서, 세부 단계로서 웹 브라우저에 따른 이식성 코드 제거 단계(S111), 모듈 수정 단계(S113)을 포함한다.The first optimization step (S110) is a step of re-implementing and optimizing function modules in the existing JavaScript library as a JavaScript library in the corresponding mobile terminal, in accordance with the characteristics of the web browser executed in the mobile terminal, A removable code removal step (S111) and a module modification step (S113) according to the browser.
이식성 코드 제거 단계(S111)는 기존의 자바 스크립트 라이브러리에 포함된 이식성 코드를 제거하는 단계이다. 일반적으로 상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에서도 별도의 작업이 없이 공통적으로 자바 스크립트 라이브러리를 적용할 수 있도록, 자동으로 플랫폼을 탐지하여 이에 따라 제어하는 이식성 코드를 포함한다. 예를 들면 개인용 컴퓨터의 경우 사용하는 운영체제도 컴퓨터마다 다양하고, 웹 브라우저도 사용자의 취향이나 운영체제의 종류에 따라 다를 수 있다. The portability code removing step S111 is a step of removing the portable code included in the existing JavaScript library. Generally, the existing JavaScript library includes portability code for automatically detecting a platform and controlling the same so that a JavaScript library can be commonly applied to different types of web browsers without any additional work. For example, in the case of a personal computer, the operating system used varies from computer to computer, and the web browser may also be different depending on the user's taste or the type of operating system.
따라서 표준을 따르는 범용적인 자바 스크립트 라이브러리라면, 다양한 플랫폼을 고려하여 해당 컴퓨터에서 사용하는 웹 브라우저의 종류를 판별하여 이에 맞도록 자바 스크립트 라이브러리내의 일부 모듈을 제어하는 이식성 코드를 포함하고 있다. 그러나 모바일 단말의 경우 이미 특정 웹 브라우저가 미리 장착되어 출시될 수 있기 때문에, 웹 브라우저의 종류에 따라 자바 스크립트 라이브러리를 적용시키는 과정은 불필요하고 부하를 발생시킬 수 있으므로, 이러한 부분을 제거하는 것이 자바 스크립트를 수행할 때 효율적일 수 있다.Therefore, the general-purpose JavaScript library conforming to the standard includes portability code that judges the type of the web browser used in the computer considering various platforms, and controls some modules in the JavaScript library according to the standard. However, since the mobile terminal may already be equipped with a specific web browser, the process of applying the JavaScript library according to the type of the web browser is unnecessary and may cause a load. Therefore, It can be efficient.
모듈 수정 단계(S113)는 위에서 제거된 이식성 코드 없이도 라이브러리내 기능 모듈들이 모바일 단말의 특정 웹 브라우저의 특성에 맞게 동작할 수 있도록 관련된 기능 모듈들을 변경하여 구현하는 것이다.The module modifying step S113 is a modification of the related function modules so that the function modules in the library can operate according to the characteristics of the specific web browser of the mobile terminal without the portability code removed from above.
즉, 라이브러리내 어떤 기능 모듈들은 다양한 플랫폼을 고려하여 좀 더 많은 코드들이 포함되어 있을 수 있고, 따라서 이와 같은 부분들을 변경하여 오로지 모바일 단말의 웹 브라우저만을 고려하여 동작할 수 있도록 함으로써 불필요한 부하 없이 실행되도록 하는 것이다. 한편 이식성 코드는 단독의 기능 모듈이나 클래스로 구현되어 있을 수도 있고, 특정 기능 모듈내의 코드로 포함되어 있을 수 있다.
In other words, some function modules in the library may include more codes in consideration of various platforms, so that they can be changed to operate only with consideration of the web browser of the mobile terminal, so that they are executed without unnecessary load . On the other hand, the portability code may be implemented as a single function module or class, or may be included as a code in a specific function module.
제 2최적화 단계(S120)는 제 1 최적화 단계(S110)에서 재 구현된 자바 스크립트 라이브러리 내의 주요 모듈들을 웹 브라우저의 엔진상에서 수행되도록 구현하는 단계이며, 세부 단계로는 주요 기능 모듈 추출 단계(S121)와 웹 브라우저 엔진상에 구현 단계(S123)를 포함할 수 있다.The second optimization step S120 is a step of implementing the main modules in the JavaScript library re-implemented in the first optimization step S110 so as to be performed on the engine of the web browser. In detail, the main function module extraction step S121, And an implementation step S123 on the web browser engine.
주요 기능 모듈 추출 단계(S121)는 자바 스크립트내의 기능 모듈 중 미리 정의된 일정 시간 이내에 일정 횟수 이상 사용되거나, 일정한 주기를 가지고 반복적으로 사용되는 모듈을 추출하는 단계이다.The main function module extracting step S121 is a step of extracting a module that is used more than a predetermined number of times within a predetermined period of time or is repeatedly used with a predetermined period among the function modules in the JavaScript.
웹 브라우저 엔진상에 구현 단계(S123)는 위에서 추출된 주요 모듈들을 모바일 단말의 웹 브라우저의 엔진상에서 수행되도록 엔진상에 구현하는 단계이다.The implementation step S123 on the web browser engine is a step of implementing the main modules extracted on the engine so as to be executed on the engine of the web browser of the mobile terminal.
즉, 예를 들면, 자주 반복적으로 사용되는 라이브러리 어떤 기능 모듈이, 라이브러리내의 주기적으로 사용되면서 느린 어떤 기능 모듈 때문에 지연되는 병목 현상이 발생할 수 있다. 따라서, 자주 사용되는 주요한 모듈의 경우 웹 브라우저의 엔진상에 구현함으로써 자바 스크립트를 좀 더 빠르게 실행시킬 수 있다.
That is, for example, a library that is frequently and repeatedly used may be a bottleneck in which a certain functional module is delayed due to a certain functional module that is being used periodically in the library. Therefore, the major modules that are frequently used can be implemented on the engine of the web browser to run JavaScript more quickly.
이하, 본 발명의 일 실시예에 따른 모바일 환경에서의 자바 스크립트 라이브러리 구성을 종래의 자바 스크립트 라이브러리 구성과 비교하여 설명하기로 한다.
Hereinafter, a configuration of a JavaScript library in a mobile environment according to an embodiment of the present invention will be described in comparison with a configuration of a conventional JavaScript library.
도 2는 종래의 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.2 is a conceptual diagram showing a configuration of a conventional JavaScript library.
도 2를 참조하면 종래의 자바 스크립트 라이브러리는 자바 스크립트 레벨(21)로 구현되어 있다. 즉, 자바 스크립트 라이브러리(210)는 자바 스크립트 언어로 구현되어 있으며, 이는 단순히 자바 스크립트 클래스와 기능 모듈 (211,212,213,214)의 집합이다.Referring to FIG. 2, a conventional JavaScript library is implemented as a
한편 자바 스크립트 자체는 하위 레벨 언어(보통 C++)로 더 하위 레벨, 즉 웹 브라우저의 렌더링 엔진에 구현된다. 도2의 Body.getElementsById()(221)와 Document.createElement()(223)은 통상적으로 사용되는 자바 스크립트 기능 모듈들(functions) 이다. 이들(221,223)은, 또한, 좀 더 쉬운 사용을 위하여 상위 레벨의 자바 스크립트 라이브러리에 재 구현되는 순수 자바 스크립트 기능 모듈(javascript functions)이기도 하다.On the other hand, JavaScript itself is implemented in a lower level language (usually C ++), ie, in the rendering engine of the web browser. Body.getElementsById () 221 and Document.createElement () 223 in FIG. 2 are commonly used JavaScript function modules. These 221 and 223 are also pure JavaScript function modules re-implemented in a high-level JavaScript library for easier use.
앞서 설명한 것처럼, 라이브러리 내의 순수 자바스크립트 기능 모듈을 재 구현하는 이유는, 자바 스크립트의 구현을 용이하게 하기 위해서 이지만, 이러한 재 구현으로 인하여 원치 않는 부가적인 오버헤드가 발생하는 문제가 있다.
As described above, the reason for re-implementing the pure JavaScript function module in the library is to facilitate the implementation of JavaScript, but there is a problem that this re-implementation causes additional undesired overhead.
따라서, 본 발명에서는 이러한 문제점을 해결하기 위하여 두 단계의 최적화 방안을 제안한다.Therefore, in order to solve such a problem, the present invention proposes a two-stage optimization method.
도 3은 본 발명의 일 실시예에 따른 모바일 환경에 최적화된 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.3 is a conceptual diagram illustrating a configuration of a JavaScript library optimized for a mobile environment according to an embodiment of the present invention.
앞서 설명한 것처럼 최적화를 위한 첫 번째 단계는 자바 스크립트 레벨(31)에서의 최적화이다. As I mentioned earlier, the first step for optimization is optimization at the JavaScript level (31).
웹 환경에서, 자바 스크립트는 다양한 서로 다른 웹 브라우저에서도 자연스럽게 수행된다. 한편, HTML과 자바 스크립트는 W3C(World Wide Web Consortium) 표준이 존재하지만, 다양한 웹 브라우저들이 세부적인 모든 사항에서 이 표준을 준수하는 것은 아니다. 하지만 적어도 범용적으로 사용되는 양질의 자바 스크립트 라이브러리는 플랫폼이 되는 웹 브라우저의 종류가 무엇인지 탐지하여 이에 따라 기능 모듈을 조정할 수 있다. 그러나, 이러한 범용성 내지 이식성이 모바일 환경에서는 심각한 오버헤드가 될 수 있다. In the web environment, JavaScript is naturally performed in a variety of different web browsers. On the other hand, although HTML and JavaScript have a World Wide Web Consortium (W3C) standard, various web browsers do not comply with this standard in every detail. However, at least, a good quality JavaScript library used for general purpose can detect what type of web browser the platform is and adjust the function module accordingly. However, such versatility or portability can be a significant overhead in mobile environments.
모바일 웹 환경, 즉 예를 들면, 모바일 단말에서의 웹 환경은 일반적인 컴퓨터에서의 웹 환경과 아래와 같은 두 가지 측면에서 다르다. The mobile web environment, that is, the web environment in a mobile terminal, for example, differs from the web environment in a general computer in the following two aspects.
첫째, 웹 서버와 클라이언트는 모두 하나의 모바일 단말 내에 위치하며, 둘째, 모바일 웹 OS에서 수행되는 하나의 웹 브라우저만 모바일 단말에 설치된다. 이러한 이유로, 성능에 안 좋은 영향을 주는, 다양한 웹 브라우저를 위한 이식성은 굳이 필요한 기능이 아니다. First, both the web server and the client are located in one mobile terminal, and second, only one web browser executed in the mobile web OS is installed in the mobile terminal. For this reason, portability for various web browsers, which have a bad impact on performance, is not a necessary function.
따라서 도 3을 참조하면 본 발명에서 제안하는 플랫폼이 되는 웹 브라우저를 탐지하고 이에 따라 관련 모듈을 설정하는 이식성 코드와 이와 관련된 모듈을 변경함으로써 최적화하는 부분(311,313)이 나타나 있다. Referring to FIG. 3,
이때, 이식성 코드는 단독의 기능 모듈이나 클래스로 구현되어 있을 수도 있고, 특정 기능 모듈내의 코드로 포함되어 있을 수 있다. 한편 이러한 최적화 과정을 통해서 이식성 코드를 제거한다고 하더라도, 이렇게 첫 단계에서 최적화된 제1 라이브러리(310)는 일반 컴퓨터에서도 문제 없이 동작하고 디버깅될 수 있다. At this time, the portable code may be implemented as a single function module or a class, or may be included as a code in a specific function module. Meanwhile, even if the portable code is removed through this optimization process, the
두 번째 최적화 단계는 하위 레벨(32)에 대해서 수행된다. 위에 설명된 것처럼 자주 반복적으로 사용되는 주요한 기능 모듈을 자바 스크립트 레벨(31)이 아닌 하위 레벨(32)의 기능 모듈로, 즉 브라우저의 렌더링 엔진에 제2 라이브러리(320)로서 구현하는 것이다.The second optimization step is performed for the lower level (32). The main function module that is frequently and repeatedly used as described above is implemented as a function module in the
도 3을 참조하면, Lib1.func3()(314)이 주요한 기능 모듈로 결정되어, 하위 레벨(32)의 웹 브라우저 엔지, 즉 제2 라이브러리(320)로 이동되어 C++를 사용하여 Lib1.func3()(324)로 재 구현되는 것을 알 수 있다.
Referring to FIG. 3, Lib1.func3 () 314 is determined as a main functional module and is moved to the Web browser engine of the
이하 도 4는 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하는 장치에 대해서 설명하기로 한다.FIG. 4 is a block diagram illustrating an apparatus for optimizing a JavaScript library according to an exemplary embodiment of the present invention. Referring to FIG.
도 4는 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하는 장치를 보여주는 블록도이다.4 is a block diagram illustrating an apparatus for optimizing a JavaScript library in a mobile environment according to an embodiment of the present invention.
도 4를 참조하면, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 장치는, 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 최적화하는 장치로, 제1 최적화부(S410) 및 제 2 최적화부(S420)을 포함하여 구성될 수 있다.Referring to FIG. 4, an apparatus for optimizing a JavaScript library according to an exemplary embodiment of the present invention to a mobile environment is an apparatus for optimizing a JavaScript library according to a web browser of a mobile terminal using an existing JavaScript library , A first optimizing unit (S410), and a second optimizing unit (S420).
또한 도 4을 참조하면, 제1 최적화부(S410)는 이식성 코드 제거부(411), 모듈 수정부(413)을 포함하여 구성되고, 제 2최적화부(420)는 주요 기능 모듈 추출부(S421)와 웹 브라우저 엔진상에 구현부(423)를 포함하여 구성될 수 있다.4, the first optimizing unit S410 includes a portable
이하, 도 4를 참조하여, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 장치를 좀 더 상세하게 설명하기로 한다.Hereinafter, an apparatus for optimizing a JavaScript library according to an exemplary embodiment of the present invention to a mobile environment will be described in more detail with reference to FIG.
제1 최적화부(410)는 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리내의 기능모듈을 최적화 하는 부분으로 이식성 코드 제거부(411)와 모듈 수정부(413)로 구성된다.The first optimizing
이식성 코드 제거부(411)는 제1 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하는 부분이다.
즉, 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록, 어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하고 있다. 따라서 하나의 이미 고정된 웹 브라우저를 갖는 모바일 단말의 경우 불필요한 코드 이므로 제거하는 부분이다.That is, when executing JavaScript in any one of the web browsers so that the existing JavaScript library can be applied to different types of web browsers, it is possible to identify the type of any one of the web browsers, And includes portability code that enables the JavaScript library to be used according to the type. Therefore, in the case of a mobile terminal having one fixed web browser, it is unnecessary code and is a part to be removed.
모듈 수정부(413)는 제거된 이식성 코드가 없이도 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 기능 모듈들을 변경하여 구현하는 부분이다. The
제2 최적화부(420)는 제 1 최적화부에서 재 구현된 자바 스크립트 라이브러리 내의 일부 모듈이 신속하게 수행될 수 있도록 웹 브라우저 엔진에 구현하는 부분으로, 주요 기능 모듈 추출부(S421)와 웹 브라우저 엔진상에 구현부(423)로 구성된다.The second optimizing
주요 기능 모듈 추출부(S421)는 재 구현된 자바 스크립트 라이브러리에서, 자주 사용되는 주요 기능 모듈들을 추출하는 부분이다.The main function module extracting unit S421 extracts frequently used main function modules from the re-implemented JavaScript library.
웹 브라우저 엔진상에 구현부(423)는 추출된 주요 기능모듈을 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 하위 레벨의 언어, 예를 들면, C/C++로 구현하는 부분이다.
The
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that
Claims (9)
상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화 단계; 및
상기 제 1 최적화 단계에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 주요 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 구현하는 제2 최적화 단계를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.A method of optimizing a JavaScript library according to a web browser of a mobile terminal using an existing JavaScript library,
A first optimization step of eliminating portable codes implemented in various web browsers in the existing JavaScript library and re-implementing a JavaScript library in accordance with the web browser of the mobile terminal; And
And a second optimization step of implementing the predefined main function modules in the JavaScript library re-implemented in the first optimization step so as to be performed on the web browser engine of the mobile terminal.
상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록,
어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.The method according to claim 1,
The existing JavaScript library can be applied to various types of web browsers,
And a portability code for identifying one of the web browsers when the JavaScript is executed in one of the web browsers and using the JavaScript library according to the type of the identified web browser. How to optimize JavaScript library.
상기 제1 최적화 단계의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.3. The method of claim 2,
Wherein the re-implementation of the JavaScript library in the first optimization step comprises the steps of: removing the portable code from the existing JavaScript library; and allowing the function modules in the library, in which the code is removed without the portable code, Wherein the functional modules are modified and implemented so as to be able to operate according to the characteristics of the JavaScript library.
상기 주요 기능 모듈은, 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 모듈인 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.The method according to claim 1,
Wherein the main function module is a module that is used repeatedly more than a predetermined number of times within a predetermined period of time.
상기 제2 최적화 단계에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.5. The method according to any one of claims 1 to 4,
Wherein in the second optimization step, the implementation of the main function module on the web browser engine is implemented using a lower level language than the JavaScript.
상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화부; 및
상기 제 1 최적화부에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 주요 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 하위 레벨의 언어로 구현하는 제2 최적화부를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.It is a device that optimizes a JavaScript library according to a web browser of a mobile terminal using an existing JavaScript library,
A first optimizing unit which removes a portable code implemented in the existing JavaScript library so as to be applicable to various web browsers and re-implements a JavaScript library according to the web browser of the mobile terminal; And
A second optimization that realizes main function modules repeatedly used more than a predetermined number of times within a predetermined time within a JavaScript library re-implemented in the first optimization unit, in a low-level language so as to be performed on the web browser engine of the mobile terminal Wherein the JavaScript library optimization unit comprises:
상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록,
어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.The method according to claim 6,
The existing JavaScript library can be applied to various types of web browsers,
And a portability code for identifying one of the web browsers when the JavaScript is executed in one of the web browsers and using the JavaScript library according to the type of the identified web browser. A JavaScript library optimization device.
상기 제1 최적화부의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.8. The method of claim 7,
Wherein the re-implementation of the JavaScript library of the first optimizing unit comprises the steps of: removing the portable code from the existing JavaScript library; and allowing the function modules in the library, in which the code is removed without the portable code, Wherein the functional modules are modified and implemented so as to be able to operate according to the characteristics of the JavaScript library.
상기 제2 최적화부에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.
9. The method according to any one of claims 6 to 8,
Wherein in the second optimizing unit, the implementation of the main function module on the web browser engine is implemented using a lower level language than JavaScript.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110084798A KR101695009B1 (en) | 2011-08-24 | 2011-08-24 | Method for optimizing javascript library in mobile environment and apparatus for the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110084798A KR101695009B1 (en) | 2011-08-24 | 2011-08-24 | Method for optimizing javascript library in mobile environment and apparatus for the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130022493A KR20130022493A (en) | 2013-03-07 |
KR101695009B1 true KR101695009B1 (en) | 2017-01-10 |
Family
ID=48175129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110084798A Expired - Fee Related KR101695009B1 (en) | 2011-08-24 | 2011-08-24 | Method for optimizing javascript library in mobile environment and apparatus for the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101695009B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102067661B1 (en) * | 2013-05-23 | 2020-01-17 | 에스케이플래닛 주식회사 | Widget authoring system and method thereof |
KR102147246B1 (en) | 2014-05-26 | 2020-08-24 | 삼성전자 주식회사 | Method and apparatus to improve performance in communication network |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060026677A1 (en) | 2000-03-30 | 2006-02-02 | Edery Yigal M | Malicious mobile code runtime monitoring system and methods |
-
2011
- 2011-08-24 KR KR1020110084798A patent/KR101695009B1/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060026677A1 (en) | 2000-03-30 | 2006-02-02 | Edery Yigal M | Malicious mobile code runtime monitoring system and methods |
Also Published As
Publication number | Publication date |
---|---|
KR20130022493A (en) | 2013-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160378462A1 (en) | Method, Apparatus, and System for Implementing JAVA Application Installation by Means of Cloud Compilation | |
CN111459537B (en) | Redundant code removal method, device, equipment and computer-readable storage medium | |
US10061571B2 (en) | System and method for link time optimization | |
US20110145803A1 (en) | Extension mechanism | |
CN111427583A (en) | Component compiling method and device, electronic equipment and computer readable storage medium | |
CN103885814A (en) | Simulator device and method for operating ARM APKs on x86 framework | |
KR102492871B1 (en) | User terminal, server, and application executing method therof | |
CN110221848A (en) | APP method for updating pages, device, electronic equipment and storage medium | |
KR100654428B1 (en) | System and Method for Improving Processing Speed of Java Program | |
CN105808282A (en) | Method and device for updating webpage contents of application program | |
KR101695009B1 (en) | Method for optimizing javascript library in mobile environment and apparatus for the same | |
CN104052769A (en) | Method, apparatus and system for updating resources contained by mobile terminal application | |
KR101116939B1 (en) | Mobile terminal and method for operating web application the mobile terminal | |
CN104598268A (en) | Application processing method and device | |
CN103034481A (en) | Financial self-service terminal and interface realizing method thereof | |
KR20060029632A (en) | Methods and systems for displaying information, and apparatus | |
EP1598739A4 (en) | NATIVE COMPILATION METHOD, NATIVE COMPILATION PRETREATMENT METHOD, COMPUTER PROGRAM, AND SERVER | |
CN107515763A (en) | The processing method and server, terminal device of a kind of application program and its installation resource | |
CN106371873A (en) | Application starting request processing method and system and server | |
US20160098252A1 (en) | Application development environment for mobile device with gesture-based coding | |
CN112612531A (en) | Application program starting method and device, electronic equipment and storage medium | |
CN107704279B (en) | Data loading method and device | |
Rajapakse | Techniques for De-fragmenting Mobile Applications: A Taxonomy. | |
CN115756528A (en) | Static AMD website development service implementation method, system, equipment and medium | |
CN113836496A (en) | Code virtualization protection method, system, device and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
A201 | Request for examination | ||
PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
P22-X000 | Classification modified |
St.27 status event code: A-2-2-P10-P22-nap-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 |
|
P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
GRNT | Written decision to grant | ||
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 |
|
P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20200105 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20200105 |