KR20130022493A - 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
- KR20130022493A KR20130022493A KR1020110084798A KR20110084798A KR20130022493A KR 20130022493 A KR20130022493 A KR 20130022493A KR 1020110084798 A KR1020110084798 A KR 1020110084798A KR 20110084798 A KR20110084798 A KR 20110084798A KR 20130022493 A KR20130022493 A KR 20130022493A
- Authority
- KR
- South Korea
- Prior art keywords
- javascript
- javascript library
- library
- web browser
- optimization
- 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.)
- Granted
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)를 수정하지 않으면서, 성능을 최적화할 수 있다.Disclosed are a method and apparatus for optimizing a JavaScript library in a mobile environment according to the present invention. A method for optimizing a JavaScript library in a mobile environment according to the present invention is a method of optimizing a JavaScript library in accordance with a web browser of a mobile terminal by using an existing JavaScript library. A predefined optimization in the JavaScript library reimplemented in the first optimization step and a first optimization step of removing portable code implemented to be applicable and re-implementing the JavaScript library for the web browser of the mobile terminal And a second optimization step of implementing the main functional modules to be performed on the web browser engine of the mobile terminal. Therefore, when using the method for optimizing the JavaScript library in the mobile environment according to the invention, by re-implementing for the mobile environment using the existing general-purpose JavaScript, do not modify the Application Programming Interface (API). 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 and developed as a standard for web browsers, and today it is a significant improvement over earlier versions. In practice, however, JavaScript alone is not used purely, but rather using JavaScript libraries that extend the functionality of JavaScript. These JavaScript libraries have the advantage of extending the capabilities that can only be achieved using JavaScript alone.
최근 모바일 웹 OS 환경에서의 자바 스크립트의 사용이 점차적으로 증가하고 있다. 종래의 자바 스크립트는 HTML문서내의 텍스트와 데이터를 조작하기 위하여 사용되었지만, 모바일 웹 OS 환경의 경우, 자바 스크립트는 단지 텍스트와 데이터의 조작만이 아닌 사용자 인터페이스의 조작을 위해서도 사용된다. 사용자 인터페이스는 HTML 또는 종래의 사용자 인터페이스 정의 언어를 사용하여 디스플레이될 수 있다.Recently, the use of JavaScript in the mobile web OS environment is gradually increasing. Conventional JavaScript has been used for manipulating text and data in HTML documents, but in the mobile web OS environment, JavaScript is used not only for manipulating text and data but also for manipulating user interfaces. The user interface can be displayed using HTML or a conventional user interface definition language.
그러나 모바일 환경에서는 성능이 주요한 요건이기 때문에, 자바 스크립트 라이브러리가 일반적인 웹 환경에서처럼 사용되지는 않는데, 즉, 라이브러리 그 자체로서 사용되는 것이 아니고, 확장된 자바 스크립트로서 구현된다. 그러나 이러한 방법은 상당히 복잡한 구현 과정이 요구되기도 하고, 현존하는 인기 있는 범용 자바 스크립트 라이브러리를 활용할 수 없는 문제가 있다.However, because performance is a major requirement in mobile environments, JavaScript libraries are not used as they are in the normal web environment, that is, they are not used as the library itself, but rather as extended JavaScript. However, this method requires a fairly complicated implementation process and can not take advantage of the existing popular general-purpose JavaScript library.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 성능저하를 유발하지 않고 기존의 자바 스크립트 라이브러리를 활용할 수 있는 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 방법을 제공하는데 있다.An object of the present invention for solving the above problems is to provide a method for optimizing the JavaScript library in a mobile environment that can utilize the existing JavaScript library without causing performance degradation.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 성능저하를 유발하지 않고 기존의 자바 스크립트 라이브러리를 활용할 수 있는 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 장치를 제공하는데 있다.Another object of the present invention for solving the above problems is to provide an apparatus for optimizing the JavaScript library in a mobile environment that can utilize the existing JavaScript library without causing performance degradation.
상기 목적을 달성하기 위한 본 발명은, 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 최적화하는 방법으로, 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화 단계 및 상기 제 1 최적화 단계에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 주요 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 구현하는 제2 최적화 단계를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법을 제공한다.The present invention for achieving the above object is a method for optimizing the JavaScript library to the web browser of the mobile terminal using the existing JavaScript library, in the existing JavaScript library, implemented to be applicable to various web browsers Removes the portable code, and re-implements the JavaScript library for the web browser of the mobile terminal, and the predefined main function modules in the JavaScript library re-implemented in the first optimization step. It provides a JavaScript library optimization method comprising a second optimization step to be implemented to be performed on the web browser engine of the mobile terminal.
여기서, 상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록, 어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 한다.Here, the existing JavaScript library is to be applied to a variety of different web browsers, when executing the JavaScript in any one web browser, to grasp the type of the one web browser, the identified web browser Characterized in that it comprises a portable code to enable the JavaScript library according to the type.
여기서, 상기 제1 최적화 단계의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징한다.Here, the re-implementation of the JavaScript library of the first optimization step is to remove the portable code from the existing JavaScript library, and the functional modules in the library from which the code has been removed without the portable code are included in the mobile terminal. The functional modules may be implemented by changing the function modules to operate in accordance with the characteristics of the web browser.
여기서, 상기 주요 기능 모듈은, 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 모듈인 것을 특징으로 한다.Here, the main functional module is a module that is repeatedly used for a predetermined number of times or more within a predetermined predetermined time.
여기서, 상기 제2 최적화 단계에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 한다.Here, in the second optimization step, the implementation on the web browser engine of the main function module is characterized in that it is implemented using a language of a lower level than JavaScript.
상기 목적을 달성하기 위한 본 발명은 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 최적화하는 장치로, 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화부 및 상기 제 1 최적화부에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 하위 레벨의 언어로 구현하는 제2 최적화부를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치를 제공한다.The present invention for achieving the above object is an apparatus for optimizing the JavaScript library to the web browser of the mobile terminal using the existing JavaScript library, in the existing JavaScript library, implemented to be applicable to various web browsers A number of times within a predetermined time period within a predetermined time period in the first optimization unit for removing portable code and reimplementing the JavaScript library for the web browser of the mobile terminal and the JavaScript library re-implemented in the first optimization unit. It provides a JavaScript library optimization device comprising a second optimizer for implementing a function module used repeatedly in a low-level language to be performed on the web browser engine of the mobile terminal.
여기서, 상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록, 어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 한다.Here, the existing JavaScript library is to be applied to a variety of different web browsers, when executing the JavaScript in any one web browser, to grasp the type of the one web browser, the identified web browser Characterized in that it comprises a portable code to enable the JavaScript library according to the type.
여기서, 상기 제1 최적화부의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징으로 한다.Here, the re-implementation of the JavaScript library of the first optimizer may remove the portable code from the existing JavaScript library, and function modules in the library from which the code is removed without the portable code may include the web of the mobile terminal. The functional modules may be implemented by changing the function modules to operate according to the characteristics of the browser.
여기서, 상기 제2 최적화부에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 한다.Here, the second optimization unit, characterized in that the implementation on the web browser engine of the main functional module is implemented using a language of a lower level than JavaScript.
상기와 같은 본 발명에 따른 모바일 환경에서의 자바 스크립트 라이브러리를 최적화하는 방법 및 장치를 이용할 경우에는 기존의 범용적인 자바 스크립트를 사용하여 모바일 환경에 맞게 재 구현함으로써, 어플리케이션 프로그래밍 인터페이스(API: application programming interface)를 수정하지 않으면서, 성능을 최적화할 수 있다. 또한 이러한 방법은 사용을 통해 검증된 범용의 인기 있는 웹 표준을 사용할 수 있는 장점이 있고, 개발자들은 이미 이 표준에 친숙하기 때문에 새로운 시스템에 적응해야 하는 시간을 절약할 수 있다.When using the method and apparatus for optimizing the JavaScript library in the mobile environment according to the present invention as described above, by re-implementing for a mobile environment using existing general-purpose JavaScript, an application programming interface (API) You can optimize performance without modifying). This approach also has the advantage of using a popular, universal Web standard that has been validated through its use, and saves the time that developers are already familiar with the standard and need to adapt to new systems.
도 1은 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계를 보여주는 시퀀스 챠트이다.
도 2는 종래의 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.
도 3은 본 발명의 일 실시예에 따른 모바일 환경에 최적화된 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.
도 4는 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 장치를 보여주는 블록도이다.1 is a sequence chart showing steps for optimizing a JavaScript library for a mobile environment according to an embodiment of the present invention.
2 is a conceptual diagram showing the 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 for 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 should be understood, however, that the invention is not intended to be limited to the particular 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.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. 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 herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination 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. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하 본 발명에 따른 사상이 개시된다.Hereinafter, the idea according to the present invention is disclosed.
본 발명의 사상은 완전히 새로운 사용자 인터페이스 언어를 개발하거나 자바 스크립트 라이브러리를 개발함으로써 기존의 자바 스크립트를 재 구현하는 방법에서 비롯된다. 이러한 방법은 현존하는 범용의 인기 있는 웹 표준을 사용할수도 있는 장점을 갖는데, 이러한 표준들은 이미 사용을 통해 증명되었고 또한 개발자들은 이미 이 표준에 친숙하기 때문에 새로운 시스템에 적응해야 하는 시간을 절약할 수 있다.The idea of the present invention stems from a method of reimplementing existing JavaScript by developing an entirely new user interface language or by developing a JavaScript library. This approach has the advantage of being able to use the existing popular and popular web standards, which have already been proven through their use and also save developers the time to adapt to new systems because they are already familiar with the standard. .
그러나, 자바 스크립트 및 범용의 인기 있는 자바 스크립트 라이브러리는 웹 개발을 위한 목적으로 개발되었기 때문에, 많은 서로 다른 웹 브라우저에서 동작한다. 이러한 기능성은 성능저하의 문제점이 있다. 이는 일반적인 웹 환경이라면 무시할 수 있는 정도의 수준이지만 모바일/임베디드 시스템 환경에서 사용될 때는 주요한 문제가 될 수 있다. However, since JavaScript and the popular JavaScript library of general purpose have been developed for web development purposes, it works in many different web browsers. This functionality has a problem of poor performance. 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 changing external parts of an existing JavaScript library, that is, for example, without modifying an application programming interface (API). Start the device. On the other hand, this optimized JavaScript library can work in a non-mobile environment.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
먼저 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계를 설명하고, 다음으로 종래의 자바 스크립트 라이브러리의 구성과 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 비교하여 설명하기로 한다.
First, the steps for optimizing the JavaScript library according to an embodiment of the present invention in a mobile environment will be described. Next, the structure of the conventional JavaScript library will be compared with the JavaScript library according to the embodiment of the present invention. Shall be.
도 1은 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계를 보여주는 시퀀스 챠트이다.1 is a sequence chart showing steps for optimizing a JavaScript library for a mobile environment according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 단계는 제1 최적화 단계(S110) 및 제 2최적화 단계(S120)을 포함하여 구성될 수 있다.Referring to FIG. 1, the step of optimizing the JavaScript library according to an embodiment of the present invention in 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)를 포함하여 구성될 수 있다.Referring to FIG. 1, the first optimization step S110 includes a portable code removal step S111 and a module modification step S113, and the second optimization step S120 includes a main function module extraction step S121. And an implementation step (S123) on the web browser engine.
이하, 도 1을 참조하여, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 각 단계를 좀 더 상세하게 설명하기로 한다.Hereinafter, referring to FIG. 1, each step for optimizing the JavaScript library according to an embodiment of the present invention in 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 an existing JavaScript library as a JavaScript library in a corresponding mobile terminal so as to meet characteristics of a web browser executed in a mobile terminal. The portable code removal step (S111) and the module modification step (S113) according to the browser are included.
이식성 코드 제거 단계(S111)는 기존의 자바 스크립트 라이브러리에 포함된 이식성 코드를 제거하는 단계이다. 일반적으로 상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에서도 별도의 작업이 없이 공통적으로 자바 스크립트 라이브러리를 적용할 수 있도록, 자동으로 플랫폼을 탐지하여 이에 따라 제어하는 이식성 코드를 포함한다. 예를 들면 개인용 컴퓨터의 경우 사용하는 운영체제도 컴퓨터마다 다양하고, 웹 브라우저도 사용자의 취향이나 운영체제의 종류에 따라 다를 수 있다. The portable code removal step (S111) is a step of removing the portable code included in the existing JavaScript library. In general, the existing JavaScript library includes portable code that automatically detects and controls the platform accordingly so that the JavaScript library can be applied in common without any additional work in various different web browsers. For example, in the case of a personal computer, the operating system used varies from computer to computer, and the web browser may vary according to the user's taste or the type of operating system.
따라서 표준을 따르는 범용적인 자바 스크립트 라이브러리라면, 다양한 플랫폼을 고려하여 해당 컴퓨터에서 사용하는 웹 브라우저의 종류를 판별하여 이에 맞도록 자바 스크립트 라이브러리내의 일부 모듈을 제어하는 이식성 코드를 포함하고 있다. 그러나 모바일 단말의 경우 이미 특정 웹 브라우저가 미리 장착되어 출시될 수 있기 때문에, 웹 브라우저의 종류에 따라 자바 스크립트 라이브러리를 적용시키는 과정은 불필요하고 부하를 발생시킬 수 있으므로, 이러한 부분을 제거하는 것이 자바 스크립트를 수행할 때 효율적일 수 있다.Therefore, a general-purpose JavaScript library that conforms to the standard includes portable code that determines various types of web browsers on the computer in consideration of various platforms and controls some modules in the JavaScript library accordingly. However, in the case of a mobile terminal, since a specific web browser may be released in advance, the process of applying the JavaScript library may be unnecessary and may cause a load depending on the type of the web browser. Can be efficient when performing
모듈 수정 단계(S113)는 위에서 제거된 이식성 코드 없이도 라이브러리내 기능 모듈들이 모바일 단말의 특정 웹 브라우저의 특성에 맞게 동작할 수 있도록 관련된 기능 모듈들을 변경하여 구현하는 것이다.Module modification step (S113) is to implement by changing the related functional modules so that the functional modules in the library can operate according to the characteristics of the specific web browser of the mobile terminal without the portable code removed above.
즉, 라이브러리내 어떤 기능 모듈들은 다양한 플랫폼을 고려하여 좀 더 많은 코드들이 포함되어 있을 수 있고, 따라서 이와 같은 부분들을 변경하여 오로지 모바일 단말의 웹 브라우저만을 고려하여 동작할 수 있도록 함으로써 불필요한 부하 없이 실행되도록 하는 것이다. 한편 이식성 코드는 단독의 기능 모듈이나 클래스로 구현되어 있을 수도 있고, 특정 기능 모듈내의 코드로 포함되어 있을 수 있다.
In other words, some functional modules in the library may contain more code in consideration of various platforms, and thus, these parts may be modified so that only the web browser of the mobile terminal can be operated to execute without unnecessary load. It is. On the other hand, the portable code may be implemented as a single function module or class, or may be included as 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 to be performed on the engine of the web browser, and 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 predetermined time or repeatedly used with a predetermined period among the function modules in the JavaScript.
웹 브라우저 엔진상에 구현 단계(S123)는 위에서 추출된 주요 모듈들을 모바일 단말의 웹 브라우저의 엔진상에서 수행되도록 엔진상에 구현하는 단계이다.Implementation step (S123) on the web browser engine is a step of implementing on the engine to perform the main modules extracted above on the engine of the web browser of the mobile terminal.
즉, 예를 들면, 자주 반복적으로 사용되는 라이브러리 어떤 기능 모듈이, 라이브러리내의 주기적으로 사용되면서 느린 어떤 기능 모듈 때문에 지연되는 병목 현상이 발생할 수 있다. 따라서, 자주 사용되는 주요한 모듈의 경우 웹 브라우저의 엔진상에 구현함으로써 자바 스크립트를 좀 더 빠르게 실행시킬 수 있다.
That is, for example, a bottleneck may occur where a library of function modules that are frequently used repeatedly is delayed due to a slow function module that is periodically used in the library. Therefore, the main modules that are frequently used can be implemented on the engine of the web browser to execute JavaScript faster.
이하, 본 발명의 일 실시예에 따른 모바일 환경에서의 자바 스크립트 라이브러리 구성을 종래의 자바 스크립트 라이브러리 구성과 비교하여 설명하기로 한다.
Hereinafter, a JavaScript library configuration in a mobile environment according to an embodiment of the present invention will be described in comparison with a conventional JavaScript library configuration.
도 2는 종래의 자바 스크립트 라이브러리의 구성을 보여주는 개념도이다.2 is a conceptual diagram showing the configuration of a conventional JavaScript library.
도 2를 참조하면 종래의 자바 스크립트 라이브러리는 자바 스크립트 레벨(21)로 구현되어 있다. 즉, 자바 스크립트 라이브러리(210)는 자바 스크립트 언어로 구현되어 있으며, 이는 단순히 자바 스크립트 클래스와 기능 모듈 (211,212,213,214)의 집합이다.Referring to FIG. 2, the conventional JavaScript library is implemented at the
한편 자바 스크립트 자체는 하위 레벨 언어(보통 C++)로 더 하위 레벨, 즉 웹 브라우저의 렌더링 엔진에 구현된다. 도2의 Body.getElementsById()(221)와 Document.createElement()(223)은 통상적으로 사용되는 자바 스크립트 기능 모듈들(functions) 이다. 이들(221,223)은, 또한, 좀 더 쉬운 사용을 위하여 상위 레벨의 자바 스크립트 라이브러리에 재 구현되는 순수 자바 스크립트 기능 모듈(javascript functions)이기도 하다.JavaScript itself, on the other hand, is a low-level language (usually C ++) that is implemented at a lower level, the rendering engine of the web browser. Body.getElementsById () 221 and Document.createElement () 223 of FIG. 2 are commonly used JavaScript function modules. These 221, 223 are also pure JavaScript functions that are reimplemented in a higher level JavaScript library for easier use.
앞서 설명한 것처럼, 라이브러리 내의 순수 자바스크립트 기능 모듈을 재 구현하는 이유는, 자바 스크립트의 구현을 용이하게 하기 위해서 이지만, 이러한 재 구현으로 인하여 원치 않는 부가적인 오버헤드가 발생하는 문제가 있다.
As mentioned above, the reason for reimplementing pure JavaScript function modules in a library is to facilitate the implementation of JavaScript, but this reimplementation introduces a problem of unwanted additional overhead.
따라서, 본 발명에서는 이러한 문제점을 해결하기 위하여 두 단계의 최적화 방안을 제안한다.Therefore, the present invention proposes a two-step optimization method to solve this problem.
도 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 mentioned earlier, the first step to optimization is optimization at the
웹 환경에서, 자바 스크립트는 다양한 서로 다른 웹 브라우저에서도 자연스럽게 수행된다. 한편, HTML과 자바 스크립트는 W3C(World Wide Web Consortium) 표준이 존재하지만, 다양한 웹 브라우저들이 세부적인 모든 사항에서 이 표준을 준수하는 것은 아니다. 하지만 적어도 범용적으로 사용되는 양질의 자바 스크립트 라이브러리는 플랫폼이 되는 웹 브라우저의 종류가 무엇인지 탐지하여 이에 따라 기능 모듈을 조정할 수 있다. 그러나, 이러한 범용성 내지 이식성이 모바일 환경에서는 심각한 오버헤드가 될 수 있다. In the web environment, JavaScript runs naturally in a variety of different web browsers. HTML and JavaScript, on the other hand, have the World Wide Web Consortium (W3C) standard, but various web browsers do not conform to it in every detail. However, at least the general-purpose, high-quality JavaScript libraries can detect what kind of web browser is the platform and adjust the function module accordingly. However, such versatility or portability can be a significant overhead in a mobile environment.
모바일 웹 환경, 즉 예를 들면, 모바일 단말에서의 웹 환경은 일반적인 컴퓨터에서의 웹 환경과 아래와 같은 두 가지 측면에서 다르다. The mobile web environment, that is, the web environment on a mobile terminal, for example, is different from the web environment on a typical computer in two aspects as follows.
첫째, 웹 서버와 클라이언트는 모두 하나의 모바일 단말 내에 위치하며, 둘째, 모바일 웹 OS에서 수행되는 하나의 웹 브라우저만 모바일 단말에 설치된다. 이러한 이유로, 성능에 안 좋은 영향을 주는, 다양한 웹 브라우저를 위한 이식성은 굳이 필요한 기능이 아니다. First, the web server and the client are both located in one mobile terminal. Second, only one web browser that is executed in the mobile web OS is installed in the mobile terminal. For this reason, portability for various web browsers, which adversely affects performance, is not a necessary feature.
따라서 도 3을 참조하면 본 발명에서 제안하는 플랫폼이 되는 웹 브라우저를 탐지하고 이에 따라 관련 모듈을 설정하는 이식성 코드와 이와 관련된 모듈을 변경함으로써 최적화하는 부분(311,313)이 나타나 있다. Therefore, referring to FIG. 3,
이때, 이식성 코드는 단독의 기능 모듈이나 클래스로 구현되어 있을 수도 있고, 특정 기능 모듈내의 코드로 포함되어 있을 수 있다. 한편 이러한 최적화 과정을 통해서 이식성 코드를 제거한다고 하더라도, 이렇게 첫 단계에서 최적화된 제1 라이브러리(310)는 일반 컴퓨터에서도 문제 없이 동작하고 디버깅될 수 있다. In this case, the portable code may be implemented as a single function module or class, or may be included as code in a specific function module. On the other hand, even if the portable code is removed through such an optimization process, the
두 번째 최적화 단계는 하위 레벨(32)에 대해서 수행된다. 위에 설명된 것처럼 자주 반복적으로 사용되는 주요한 기능 모듈을 자바 스크립트 레벨(31)이 아닌 하위 레벨(32)의 기능 모듈로, 즉 브라우저의 렌더링 엔진에 제2 라이브러리(320)로서 구현하는 것이다.The second optimization step is performed on the
도 3을 참조하면, Lib1.func3()(314)이 주요한 기능 모듈로 결정되어, 하위 레벨(32)의 웹 브라우저 엔지, 즉 제2 라이브러리(320)로 이동되어 C++를 사용하여 Lib1.func3()(324)로 재 구현되는 것을 알 수 있다.
Referring to FIG. 3, Lib1.func3 () 314 is determined to be the primary functional module, and is moved to a
이하 도 4는 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하는 장치에 대해서 설명하기로 한다.4 will be described with respect to the device for optimizing the JavaScript library in a mobile environment according to an embodiment of the present invention.
도 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 embodiment of the present invention in a mobile environment is a device that optimizes a JavaScript library according to a web browser of a mobile terminal using an existing JavaScript library. , The first optimizer S410 and the second optimizer S420.
또한 도 4을 참조하면, 제1 최적화부(S410)는 이식성 코드 제거부(411), 모듈 수정부(413)을 포함하여 구성되고, 제 2최적화부(420)는 주요 기능 모듈 추출부(S421)와 웹 브라우저 엔진상에 구현부(423)를 포함하여 구성될 수 있다.Also, referring to FIG. 4, the first optimizer S410 includes a portable
이하, 도 4를 참조하여, 본 발명의 일 실시예에 따른 자바 스크립트 라이브러리를 모바일 환경에 최적화하기 위한 장치를 좀 더 상세하게 설명하기로 한다.Hereinafter, an apparatus for optimizing the JavaScript library according to an embodiment of the present invention in a mobile environment will be described in more detail with reference to FIG. 4.
제1 최적화부(410)는 기존의 자바 스크립트 라이브러리를 이용하여 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리내의 기능모듈을 최적화 하는 부분으로 이식성 코드 제거부(411)와 모듈 수정부(413)로 구성된다.The
이식성 코드 제거부(411)는 제1 상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하는 부분이다.The portable
즉, 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록, 어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하고 있다. 따라서 하나의 이미 고정된 웹 브라우저를 갖는 모바일 단말의 경우 불필요한 코드 이므로 제거하는 부분이다.That is, the existing JavaScript library is to be applied to a variety of different web browsers, when executing the JavaScript in any one web browser, to identify the type of any one web browser, It contains portable code that allows you to use the JavaScript library at your own pace. Therefore, in the case of a mobile terminal having a single fixed web browser is unnecessary code is removed.
모듈 수정부(413)는 제거된 이식성 코드가 없이도 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 기능 모듈들을 변경하여 구현하는 부분이다. The
제2 최적화부(420)는 제 1 최적화부에서 재 구현된 자바 스크립트 라이브러리 내의 일부 모듈이 신속하게 수행될 수 있도록 웹 브라우저 엔진에 구현하는 부분으로, 주요 기능 모듈 추출부(S421)와 웹 브라우저 엔진상에 구현부(423)로 구성된다.The
주요 기능 모듈 추출부(S421)는 재 구현된 자바 스크립트 라이브러리에서, 자주 사용되는 주요 기능 모듈들을 추출하는 부분이다.The main function module extracting unit S421 is a part for extracting frequently used main function modules from the reimplemented 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 최적화 단계를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.By using the existing JavaScript library to optimize the JavaScript library for the web browser of the mobile terminal,
A first optimization step of removing the portable code implemented to be applicable to various web browsers in the existing JavaScript library and reimplementing the JavaScript library in accordance with the web browser of the mobile terminal; And
And a second optimization step of implementing the pre-defined main function modules in the JavaScript library re-implemented in the first optimization step to be performed on the web browser engine of the mobile terminal.
상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록,
어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.The method of claim 1,
The existing JavaScript library can be applied to a variety of different web browsers,
When the JavaScript is executed in any one of the web browsers, characterized in that it comprises a portable code for identifying the type of the one web browser and to use the JavaScript library according to the identified type of web browsers How to optimize your JavaScript library.
상기 제1 최적화 단계의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.The method of claim 2,
The re-implementation of the JavaScript library in the first optimization step may include removing the portable code from the existing JavaScript library, and the functional modules in the library from which the code is removed without the portable code may include the web browser of the mobile terminal. Javascript library optimization method characterized in that to implement by changing the function modules to operate according to the characteristics of.
상기 주요 기능 모듈은, 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 모듈인 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.The method of claim 1,
The main function module is a JavaScript library optimization method, characterized in that the module is repeatedly used more than a predetermined number of times within a predetermined predetermined time.
상기 제2 최적화 단계에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 방법.5. The method according to any one of claims 1 to 4,
In the second optimization step, the JavaScript library optimization method, characterized in that the implementation on the web browser engine of the main functional module is implemented using a lower level language than JavaScript.
상기 기존의 자바 스크립트 라이브러리에서, 다양한 웹 브라우저에 적용 가능하도록 구현된 이식성 코드(portable code)를 제거하고 상기 모바일 단말의 웹 브라우저에 맞추어 자바 스크립트 라이브러리를 재 구현하는 제1 최적화부; 및
상기 제 1 최적화부에서 재 구현된 자바 스크립트 라이브러리 내의 미리 정의된 일정 시간 이내에 일정 횟수 이상 반복적으로 사용되는 기능 모듈들을 상기 모바일 단말의 웹 브라우저 엔진상에서 수행되도록 하위 레벨의 언어로 구현하는 제2 최적화부를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.It is a device that optimizes JavaScript library for web browser of mobile terminal by using existing JavaScript library.
In the existing JavaScript library, a first optimization unit for removing the portable code (portable code) implemented to be applicable to various web browsers and re-implementing the JavaScript library to match the web browser of the mobile terminal; And
A second optimizer configured to implement function modules repeatedly used a predetermined number of times or more within a predetermined predetermined time in a JavaScript library re-implemented by the first optimizer in a lower level language so as to be performed on a web browser engine of the mobile terminal; JavaScript library optimization device comprising a.
상기 기존의 자바 스크립트 라이브러리는 서로 다른 다양한 종류의 웹 브라우저에 적용 가능하도록,
어느 하나의 웹 브라우저에서 자바 스크립트를 수행 시, 상기 어느 하나의 웹 브라우저의 종류를 파악하고, 상기 파악된 웹 브라우저의 종류에 맞추어 상기 자바 스크립트 라이브러리를 사용할 수 있도록 하는 이식성 코드를 포함하는 것을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.The method according to claim 6,
The existing JavaScript library can be applied to a variety of different web browsers,
When the JavaScript is executed in any one of the web browsers, characterized in that it comprises a portable code for identifying the type of the one web browser and to use the JavaScript library according to the identified type of web browsers JavaScript library optimization device.
상기 제1 최적화부의 상기 자바 스크립트 라이브러리의 재 구현은, 상기 기존의 자바 스크립트 라이브러리에서 상기 이식성 코드를 제거하고, 상기 이식성 코드가 없이도 상기 코드가 제거된 라이브러리 내 기능 모듈들이 상기 모바일 단말의 웹 브라우저의 특성에 맞게 동작할 수 있도록 상기 기능 모듈들을 변경하여 구현하는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.8. The method of claim 7,
The re-implementation of the JavaScript library of the first optimization unit may remove the portable code from the existing JavaScript library, and the functional modules in the library from which the code is removed without the portable code may be configured as a web browser of the mobile terminal. JavaScript library optimization device, characterized in that to implement by changing the functional modules to operate according to the characteristics.
상기 제2 최적화부에서, 상기 주요 기능 모듈의 웹 브라우저 엔진상의 구현은 자바 스크립트보다 하위 레벨의 언어를 사용하여 구현되는 것임을 특징으로 하는 자바 스크립트 라이브러리 최적화 장치.
The method according to any one of claims 6 to 8,
In the second optimization unit, the JavaScript library optimization device, characterized in that the implementation on the web browser engine of the main function module is implemented using a language of a lower level 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 true KR20130022493A (en) | 2013-03-07 |
| KR101695009B1 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) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20140137630A (en) * | 2013-05-23 | 2014-12-03 | 에스케이플래닛 주식회사 | Widget authoring system and method thereof |
| US10397300B2 (en) | 2014-05-26 | 2019-08-27 | Samsung Electronics Co., Ltd. | Method and of improving HTTP performance on communication network and apparatus adapted thereto |
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 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20140137630A (en) * | 2013-05-23 | 2014-12-03 | 에스케이플래닛 주식회사 | Widget authoring system and method thereof |
| US10397300B2 (en) | 2014-05-26 | 2019-08-27 | Samsung Electronics Co., Ltd. | Method and of improving HTTP performance on communication network and apparatus adapted thereto |
Also Published As
| Publication number | Publication date |
|---|---|
| KR101695009B1 (en) | 2017-01-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102150774B1 (en) | Method and apparatus for loading a terminal application | |
| CN107967139B (en) | Hot updating method and device for game | |
| US10061571B2 (en) | System and method for link time optimization | |
| US10191751B2 (en) | Information processing device for generating application programming interface information | |
| CN102662737A (en) | Calling method and device of extension program | |
| WO2017206476A1 (en) | Method, device and apparatus for detecting cpu occupation | |
| CN104052769A (en) | Method, apparatus and system for updating resources contained by mobile terminal application | |
| KR20050074766A (en) | System for improving transaction rate of java program and method thereof | |
| KR20130022493A (en) | Method for optimizing javascript library in mobile environment and apparatus for the same | |
| JP3757235B2 (en) | Native compilation method, native compilation preprocessing method, computer program, server, communication system, and mobile communication terminal device | |
| CN104598268A (en) | Application processing method and device | |
| CN110851297A (en) | Method, device, system and medium for processing interface jitter state | |
| US20110107311A1 (en) | Communicating with Locally Networked Device from Remotely Hosted Browser Based Tool | |
| CN103034481A (en) | Financial self-service terminal and interface realizing method thereof | |
| US9916391B2 (en) | Method, apparatus and terminal for webpage content browsing | |
| CN112612531A (en) | Application program starting method and device, electronic equipment and storage medium | |
| CN114968261B (en) | Application program compilation method and device | |
| CN107704279B (en) | Data loading method and device | |
| Rajapakse | Techniques for De-fragmenting Mobile Applications: A Taxonomy. | |
| EP3134815B1 (en) | Memory efficient thread-level speculation | |
| CN113836496A (en) | Code virtualization protection method, system, device and readable storage medium | |
| CN103257868B (en) | The method and apparatus of installation procedure | |
| US9606779B2 (en) | Data processing system and data simulation method in the system | |
| CN112148389A (en) | Applet generation method and related device | |
| CN106095445B (en) | Installation method, device and the terminal of driver |
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 |