KR20050056270A - 소프트웨어 애플리케이션을 생성하는 방법 - Google Patents

소프트웨어 애플리케이션을 생성하는 방법 Download PDF

Info

Publication number
KR20050056270A
KR20050056270A KR1020057007222A KR20057007222A KR20050056270A KR 20050056270 A KR20050056270 A KR 20050056270A KR 1020057007222 A KR1020057007222 A KR 1020057007222A KR 20057007222 A KR20057007222 A KR 20057007222A KR 20050056270 A KR20050056270 A KR 20050056270A
Authority
KR
South Korea
Prior art keywords
component
application
configuration data
components
software
Prior art date
Application number
KR1020057007222A
Other languages
English (en)
Inventor
마이클 제이. 플러머
Original Assignee
코닌클리케 필립스 일렉트로닉스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20050056270A publication Critical patent/KR20050056270A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 목표 디바이스 상에서의 실행을 위한 소프트웨어 애플리케이션을 통합하는 방법에 관한 것으로서, 상기 애플리케이션은 미리-콤파일된, 재-사용가능한 성분과 대응하는 구성 데이터를 포함한다. 구성 데이터(108)는 애플리케이션이 실행될 목표 디바이스에 사용가능하게 만들어진다. 애플리케이션을 포함하는 각각의 성분에 대해서, 연관된 구성 데이터는 결정되고(110), 성분의 경우는 예시되고(112), 구성 데이터에 의존하여 구성된다(116). 애플리케이션의 실행(120)은 성분의 구성된 경우의 상호작용에 의해서 적어도 부분적으로 결정된다.

Description

소프트웨어 애플리케이션을 생성하는 방법{CREATING SOFTWARE APPLICATIONS}
본 발명은 소프트웨어 개발에 관한 것이고, 특히, 소프트웨어보다는 애플리케이션에서의 전문가에 의한 소프트웨어 애플리케이션의 개발에 관한 것이다.
셋탑 박스(STB), TV, VCR, DVD, 개인용 비디오 레코더(PVR), 오디오 등과 같은, 가전 제품을 사는 소비자는 특징의 풍부한 세트를 바라게 되었다. 전형적으로, 소프트웨어는 적절한 가격에서 그러한 특징을 제공하기 위한 수단으로 사용된다. PC 사용자와는 달리, 가전 제품의 소비자들은 소프트웨어 버그나 크래쉬에 대해 참을성이 없고, 그러한 제품의 소프트웨어는 항상 튼튼하게 작동할 필요가 있다. 이것은 결국 소프트웨어 개발 비용을 증가시키는 더 많은 시험을 의미한다. 제조업자들은 투자에 대한 수익을 최대화하기 위해 수많은 제품 범위 또는 라인에 걸쳐 소프트웨어 코드를 재사용하는 경향이 있다. 더 짧은 제품 수명의 경향은 (단위 비용 감소의 수단으로서의)이러한 형태의 재사용을 덜 실용적으로 만든다. 추가로, STB와 같은 제품은 소비자들이 하나 이상의 서비스 제공자에 접속하게 하는 관문으로서 팔릴 수 있다. 각각의 서비스 제공자가 자신의 '기업 이미지 통합 전략(house style)' 또는 다른 '룩 앤 필(look and feel)'을 요구하는 경우에, 모든 서비스 제공자들에 대한 공통 소프트웨어를 사용하는 목표는 더욱 달성하기 어렵다.
이러한 문제를 해결하기 위한 하나의 접근 방식은, 예를 들어, 전반적인 애플리케이션의 더 상세한 특징을 다룰 수 있는 미리-작성된 낮은 레벨의 소프트웨어 모듈을 참조하는 코드를 작성함으로써 더 높은 단계의 애플리케이션에서 소프트웨어를 개발하는 것이다. 하나의 예는, 빌딩 자동화 시스템을 구축하기 위한 애플리케이션 프레임 워크로서 더 복잡한 시스템을 만들기 위해 함께 연결할 수 있는 표준 객체들의 라이브러리, 어셈블리, 및 더 작은 기능-특정 애플리케이션를 제공하는, 애플리케이션 프레임워크를 개시하는 골드만 등에 부여된, 미국 특히 6,028,998에서 개시되었다. 애플리케이션 프레임 워크는 경험있는 설계자의 지식과 최고의 경험을 넣어, 경험이 덜 쌓인 개발자가 시스템을 만들 수 있게 한다. 이 시스템의 단점은 표준 객체들을 함께 연결하기 위해 추가의 소프트웨어가 작성되어야 한다는 것이다. 그러한 소프트웨어를 포함하는 전반적인 프로그램은 튼튼함을 보장하기 위해 엄격한 시험을 요구하는데-시스템이 고유하게 복잡한 사실로 인해 그러한 요구 조건은 증가되어 잠재적으로 높은 시험 비용을 초래한다. 더 나아가, 후속적으로 행해진 약간의 변화는, 예를 들어, (표준 객체의 경우와 같은)또 다른 특징을 추가하는 것은 다시 한번 수행될 전체 애플리케이션의 시험을 요구할 것이다.
재-사용가능한 소프트웨어 성분의 예는, JavaTM 클래스를 재-사용가능한 소프트웨어 성분로서 사용하기에 더 쉽게 만드는, JavaBeansTM{미국, 산타 글라라 소재의 선 마이크로 시스템즈 사로부터의 객체 지향 프로그래밍(OOP) 인터페이스}이다. JavaTM는 휴대가능하고 설계 중립적이어서 임의의 판매자의 하드웨어에 다운로드되고 그 하드웨어에서 실행되도록 하기 때문에, 가전 제품 상에서 실행되도록 의도된 서비스의 제공자들에게 매력적이다. JavaBeansTM(또는 Beans)는, JavaTM 프로그래밍 언어를 사용하여 프로그램을 기록하고, 예를 들어, 빈스가 다른 빈스와 통신하도록 트리거하기 위한 이벤트 또는 사용자 인터페이스(UI) 특성과 같은 특성을 기술하기 위해 JavaBeansTM 선언문을 포함함으로써, 생성된다. 1997년 8월 자바월드의 "JavaBeans의 산책"에서 설명된 것처럼, 개발자가 애플리케이션을 생성하기 위해 빈스를 함께 연결할 때, 통합된 개발 환경(IDE)은 모든 빈스의 특성 및 그것의 현재 값들을 포함하는 특성 시트를 제공할 수 있다. (특성 시트는, 예를 들어, 메뉴를 사용하여 특성을 설정하고 및/또는 보는데 사용되는 대화 박스이다.) 개발자는 특성을 그래픽으로 설정하고, 이것을 IDE는, 빈스의 상태를 바꾸면서, 빈스 설정자 방법에 대한 요청으로 변환한다. 이것은 빈스를 특정 애플리케이션에 대해 맞춤화한다. 그래서, 애플리케이션을 만들기 위한 JavaBeansTM의 사용은 연결된 빈스가 적절하게 상호-동작하도록 보장하기 위해 IDE 시스템이 설계 시간에 코드를 생성하고 콤파일하도록 요구한다. 애플리케이션이 만족스럽게 기능한다고 가정하면, 최종화된 애플리케이션 프로그램의 시험은 (예를 들어, 버그나 프로그램 크래시에 대해 시험하기 위한)그럼에도 불구하고 여전히 요구된다. 추가로, JavaTM 프로그래머들이 비용이 많이 드는 애플리케이션 자체(즉, Beans를 함께 연결하기 위해)를 개발하는 것이 요구된다.
카네기 멜론 소프트웨어 엔지니어링 기구에 의해 출판된 인터넷 문서(http://www.sei.cmu.edu/str/descriptions)에서 설명된 것과 같이, 재-사용가능한 소프트웨어 성분은 몇 가지 잘-정의된 하부구조를 통해 통합되어야 한다. 이 하부구조는 별개의 성분로부터 시스템을 형성하는 결합을 제공한다. 객체 요청 브로커(ORB)는 객체들 사이의 통신과 데이터 교환을 관리하는 미들웨어 기술이다. 이것은 객체 통신 디테일이 개발자로부터 숨겨지고 ORB에서 분리되어, 잠재적으로 시스템을 더 유지가능하게 한다는 점에서 장점을 가진다. ORB 기술의 단점은 통신하는 것을 바라는 객체가 보이는(판독가능한) 데이터와 잘 정의된 애플리케이션 프로그래밍 인터페이스(APIs)를 가지는 것을 요구한다는 것이다. 그러한 데이터와 API를 정의하고 아마도 표준화할 필요성은 제품 개발의 속도를 늦출 수 있다. 더 나아가, ORB 코드 자체를 더한 ORB 호환가능한 객체의 코드 크기는 클 수 있고, 이것은 그러한 코드를 저장하고, 다운로드 및/또는 프로세스하는데 한정된 기능을 가지는 경향이 있는 가전 제품에 있어서 관심이 되는 성분이다.
가전 시장에서 운영하는 서비스 제공자는 그들의 브랜드를 만들고 유지하며, 경쟁에서 능동적일 필요가 있다-이것은 변화하는 시장 동향를 빠르게 해결하고 서비스 제공자의 룩 앤 필을 유지하는 애플리케이션을 개발할 필요를 형성한다. 더 나아가, 애플리케이션의 실효 수명이 짧을 것이다. 이러한 두 가지 요구 조건들은 애플리케이션들이 낮은 비용으로 빨리 개발되어야 한다는 것을 의미한다. 물론 그러한 애플리케이션들은 또한 사용될 때 튼튼해야 한다. 위에서 언급된 것을 포함해 몇 가지 종래 기술에 대해, 애플리케이션 개발은 애플리케이션의 튼튼함(robustness)을 보장하기 위해서(예를 들어, 버그나 크래쉬가 거의 없도록) 소프트웨어 전문가들(예를 들어, 프로그래머)에 의한 구현을 수반하는 애플리케이션 요구 조건 포착의 순차적인 업무를 포함한다. 그러한 방법들의 단점은 (예를 들어, 애플리케이션 전문가들과 프로그래머들의 필요한 협조, 시험 등에 기인하는)느린 개발 및/또는 나쁜 성능 그리고 (예를 들어, 프로그래머의 비용과 같은)비용을 포함할 수 있다. 추가의 단점은 명백하게 매우 비슷한 애플리케이션들은 튼튼함을 손상시키지 않으면서 쉽게 공통 소프트웨어 코드를 개발할 수 없다는 것이다.
본 발명의 목적은 두 개 이상의 재-사용가능한 소프트웨어 성분을 활용하여 소프트웨어-기반 애플리케이션을 생성하는 방법을 이용하여 이들 및 다른 문제들에 대한 해결책을 제공하는 것이다.
도 1은 본 발명의 하나의 양상을 구현하는 예시적인 방법의 순서도.
도 2는 구성 도구를 사용하여 개발된 단순한 애플리케이션의 개략도.
도 3은 애플리케이션을 생성하고 실행시키기 위한 전반적인 프로세스를 개략적으로 도시하는 도면.
도 4는 JavaTM-기반 애플리케이션의 구성의 하나의 예를 개략적으로 도시하는 도면.
본 발명에 따라서, 소프트웨어로 제어되는 장치 안에서 실행을 위한 애플리케이션을 통합하는 방법이 제공되는데, 상기 애플리케이션은 복수의 미리-콤파일된 재-사용가능한 성분을 포함하고, 상기 성분들 중 적어도 하나가 적어도 하나의 설정가능한 특성을 가지고, 상기 방법은
복수의 미리-콤파일된 성분에 연관된 구성 데이터에 접속하는 단계, 그리고 , 각각의 성분에 대해서,
상기 성분에 대응하는 구성 데이터를 결정하는 단계,
상기 성분의 경우를 생성하는 단계를 포함하고,
그리고, 상기 성분이 적어도 하나의 구성가능한 성분을 갖는 경우 애플리케이션의 실행이 성분들의 구성된 경우의 상호작용에 의해 적어도 부분적으로 결정되도록,
상기 구성 데이터에 의존하여 그 특성을 구성함으로써 성분의 경우를 구성하는 단계를 포함한다.
애플리케이션을 생성할 때, 소프트웨어 코드의 재-사용은 전반적인 비용을 줄이기 위한 잠재적인 수단으로 보여진다. 본 발명은 코드의 실행의 튼튼함을 감퇴시키지 않으면서 애플리케이션이 요구되는 결합에서 미리-작성되고 시험된 코드의 블록을 사용하도록 한다. 이런 식으로, 코드의 블록을 개발하고 시험하면서 증가된 노력과 비용은 하나 이상의 애플리케이션 안의 코드의 블록을 활용할 때 손실되지 않을 것이다. 이것은 예를 들어, 빈스를 함께 적절하게 링크시키기 위해(즉, 그 특성을 맞춤화하기 위해) 추가의 코드가 필요한, 자바빈스를 이용하여 만들어진 애플리케이션과 대조를 이룬다. 그러한 코드는 버그 및 크래쉬에 대해 전반적인 애플리케이션을 덜 튼튼하게 만드는 그리고/또는 프로그래밍의 당업자 이외에 의해 만들어지는 것을 방지하는 잠재력을 가진다.
애플리케이션 안에서의 사용을 용이하게 하기 위해, 소프트웨어 코드의 블록은 애플리케이션의 요구에 적절한 하나 이상의 방법으로 구성가능할 수 있는 하나 이상의 성능 또는 특성을 제공할 수 있다. 그러한 특성은, 초기화, 사용자 인터페이스(UI), 동작 및 (예를 들어, 다른 성분들 또는 인터페이스와의)통신을 포함하지만 이에 한정되지 않는, 코드의 동작의 기능상의 또는 다른 양상에 영향을 미칠 수 있다. 그러한 코드의 블록은 여기서 성분라고 명칭되었고 미리-만들어졌고(즉, 예를 들어, 코딩 및/또는 콤파일링에 의한 애플리케이션의 개발에 앞서 구성되었고), 설정가능하다. 본 발명의 문맥에서, 미리-만들어진 성분은 각각의 그러한 애플리케이션에 대해 먼저 재-설계될 필요없이 이것이 다양한 애플리케이션들에 통합될 수 있다는 점에서 재-사용가능하다. 본 발명의 특정 양상은 성분의 구성이 추가의 소프트웨어 코드(즉, 성분 안에 포함된 것에 추가된 코드)를 작성 또는 콤파일하지 않고 달성될 수 있다는 점이다. 이렇게 하기 위해서, 성분은 적어도 부분적으로 설정 자체를 수행하기 위해서 구성 데이터를 결정할 수 있다. 예를 들어, 애플리케이션을 포함하는 하나 이상의 성분에 의해 하나 이상의 파일 안의 구성 데이터에 액세스하기 위해 이것은 정렬될 수 있다. 대응하여, 하나의 성분에 연관된 구성 데이터는 식별되고, 성분의 한예가 생성될 수 있고, 그 후, 예를 들어, 성분 로딩에 의해 또는 데이터에 따라서 하나 이상의 구성 업무를 수행하기 위해 데이터에 동작하는 다른 임의의 방식으로 데이터에 따라 구성될 수 있다. 본 발명에 따라서, 애플리케이션은 두 개 이상의 그러한 구성된 성분들을 적절하게 결합함으로써 생성될 수 있고, 이러한 설정은 성분들이 애플리케이션의 요구 조건에 따라서 상호-동작하게 할 수 있다. 성분들은, 자바 아카이브(JAR) 파일 또는 집(ZIP) 파일을 포함하지만 이에 제한되지 않는, 아카이브 파일 안에 정렬될 수 있다. 그러면, 상기 아카이브 파일은 애플리케이션이 실행되게 될 소프트웨어로 제어되는 장치(예를 들어, 목표 플랫폼)에 대해 사용가능하게 될 수 있다.
본 발명의 방법은 임의의 적절한 프로그래밍 언어로 작성된 성분들로 사용될 수 있다. 바람직하게, 성분들은 JavaTM언어, 즉, 미리 작성된 JavaTM클래스로 작성된다. 적절하게 설정된 JavaTM 성분을 결합함으로써 생성된 결과로 나오는 JavaTM 애플리케이션은 애플릿, 엑스릿과 서브릿을 포함하지만 이에 제한되지 않는다.
본 발명의 추가의 양상에 따라서, 애플리케이션을 개발하는 방법이 제공되는데, 상기 애플리케이션은,
미리-콤파일된 재-사용가능한 성분들의 슈트에 접속하는 단계,
상기 성분들 중 적어도 하나가 구성가능한 특성을 가지는, 적어도 두 개의 성분들 사이의 상호작용을 선택하는 단계
선택된 상호작용에 근거하여 상기 또는 각각의 특성을 구성하는 단계,
구성된 특성에 근거하여 구성 데이터를 생성하는 단계를 포함하여, 구성 데이터에 의존하여 설정된 적어도 상기 두 개의 성분들의 경우가 상기 선택된 상호작용을 수행할 수 있게 된다.
애플리케이션은 하나 이상의 미리-콤파일된 성분들의 협동을 포함할 수 있다. 새로운 애플리케이션을 개발하기 위해, 개별적으로 그리고/또는 서로 상호작용에 의해 필수의 기능성을 제공하는 적절한 성분들이 선택된다. 이러한 선택된 성분들 중 적어도 하나는 구성가능한 특성을 포함하고, 이 구성은 예를 들어 다른 성분들과의 성분들의 상호 작용을 결정할 수 있다. 그러므로, 하나의 성분의 특성은 원하는 기능을 적절하게 제공하도록 구성될 수 있다. 결과적으로, 구성 데이터는 생성될 수 있고 원하는 기능성(예를 들어, 성분 상호작용)을 구현하기 위해 목표 플랫폼에 대해 성분의 경우를 설정하도록 사용가능하게 될 수 있다.
구성 데이터는 이것이 연관된 하나 이상의 성분에 의해 판독될 수 있도록 임의의 형태로 구성될 수 있다. 파일 구조는 어레이, 링크된 목록, 데이터 맵, XML 스크립트 또는 ASCII 텍스트를 포함하지만 이에 한정되지 않는다. 사용 도중, 미리-작성된 그리고 미리-콤파일된 성분의 설정된 경우를 포함하는 애플리케이션은, PC, MAC, 가전 제품(TV, VCR, DVD, STB, PVR, 등) 및 인터넷 장치에 적절한 목표 플랫폼 상에서 실행될 수 있다. 주어진 애플리케이션에 대해, 플랫폼은 로컬 저장 장치(예를 들어, ROM, RAM, 하드 디스크 드라이브-HDD), 레코더 캐리어(예를 들어, 플로피 디스크 드라이브-FDD, 광학 디스크)를 통해 그리고/또는, 예를 들어, 네트워크나 인터넷(예컨대 전화, 광대역, 케이블 등의 이더넷 또는 모뎀을 사용하여)으로부터 이들의 임의의 조합을 통해 원격 접속을 통한 미리-콤파일된 성분의 필수 세트나 구성 데이터에 접속할 수 있다. 애플리케이션에 연관된 구성 데이터는 애플리케이션을 구현하는데 활용된 성분들의 신원, 상기 성분을 구성하기 위한 데이터, 및 네비게이tus(navigational) 데이터의 임의의 조합을 포함할 수 있다. 구성 데이터에 따라서, 플랫폼 상에서 실행되는 소프트웨어는 애플리케이션을 실행하기 위해 실례를 들어 설명되고, 설정되고 실행될 적절한 성분을 마련할 수 있다.
본 발명에 따른 방법과 함께 사용될 성분을 개발하기 위해, 성분의 하나 이상의 구성가능한 특성들이 정의될 수 있고, 상기 특성은 성분에 의해 액세스될 수 있는 구성 데이터에 따라서 구성가능하도록 정의된다. 적절한 코딩 및 콤파일링에 의해, 성분은 구성 데이터에 접속하고 하나 이상의 그 구성가능한 특성을 설정하도록 정렬될 수 있다. 이런 식으로, 튼튼하게 작동하지만 기능적으로 유연한 성분이 구현될 수 있다. 그러한 성분들의 모음은 각각의 애플리케이션이 작성될 추가의 코드를 요구하지 않는 다양한 튼튼한 애플리케이션을 산출하기 위해 다양한 조합으로 적절하게 협동하도록 만들어 질 수 있다. 선택적으로, 성분에 대한 추가의 적절한 API를 정의함으로써, 판매자나 고급 사용자가 기능을 더 향상시키기 위해 추가의 성분을 애플리케이션에 추가하는 것이 가능하다.
본 발명의 방법의 한 양상에 따른 애플리케이션들을 개발하는데 임의의 적절한 도구가 사용될 수 있다. 더 나아가, 그러한 도구는 임의의 적절한 언어-즉, 애플리케이션 성분에 의해 사용되는 언어 또는 언어들에 한정되지 않는 언어를 사용할 수 있다. 예를 들어, 적절한 도구의 기능은,
미리-콤파일된 성분의 모음에 대한 참조를 포함하는 라이브러리,
사용자 인터페이스로서, 애플리케이션 개발자가,
라이브러리로부터 미리-콤파일된 성분을 선택하고,
선택된 성분들 사이의 가능한 상호작용이 제공되고,
이러한 제공된 것들로부터 (원하는 기능에 근거하여) 하나 이상의 상호작용들을 선택하고,
애플리케이션을 구축하고 그 기능성을 검토할 수 있게 하는, 사용자 인터페이스.
설정 프로그램으로서,
선택된 상호작용에 의존하여 선택된 성분의 특성 및 상호작용 동작을 구성하고,
구성된 특성에 의존하여 구성 데이터를 생성하도록 하는, 설정 프로그램을 포함할 수 있다.
위에서 설명된 것으로부터, 애플리케이션이 적절하게 결합된 현존하는 미리-콤파일된 소프트웨어 성분들을 포함하지만 추가의 소프트웨어 코딩 및/또는 콤파일링할 필요가 없기 때문에, 본 발명에 따른 방법은 애플리케이션은 소프트웨어 프로그래밍에 전문가가 아닌, 또는 심지어 아무런 프로그래밍 능력이 없는 개발자에 의해 생성되도록 한다. 이것은 몇 가지 장점을 가진다-애플리케이션 개발이 애플리케이션을 가장 잘 이해하는 전문가에 의해 수행될 수 있다. 그러한 전문가(예를 들어 그래픽 디자이너)는 또한 프로그래머보다는 덜 비용이 드는 경향이 있다. 애플리케이션의 기능상 단계에서 시험만이 요구될 수 있기 때문에, 소프트웨어 성분의 재-사용이 쉬워서, 애플리케이션이 더 빨리 만들어지도록 한다. 결과적으로, 애플리케이션들은, 특히, 소프트웨어 버그 및/또는 크래쉬의 확률을 증가시키지 않는 점에서 튼튼하다. 구성 성분 자체는 경험있는 소프트웨어 프로그래머에 의해 개발, 최적화, 그리고 시험될 수 있다. 이것은 차례로 애플리케이션이 전반적인 특정 프로그램 크기(예를 들어, 간결성) 및/또는 속도 양상을 달성하도록 하는데, 이들은 예견된 가전 및 비슷한 애플리케이션에서 중요하게 여겨진다-예를 들어, 낮은 속도의 네트워크 상에서 애플리케이션을 쉽게 전송하거나 크지 않은 저장 및 처리 능력을 갖는 목표 플랫폼에서 애플리케이션을 저장하고 실행시키는 능력은 높게 평가된다.
이제, 첨부된 도면을 참조로, 예시로서, 추가의 특징 및 장점이 설명될 것이다.
다음의 설명에서, '구성 데이터'라는 용어는 소프트웨어 성분을 확인하고, 또한 성분의 하나 이상의 특성의 설정을 결정할 수 있는 데이터를 포함한다.
도 1은 본 발명의 하나의 양상을 구현하는 예시적인 방법의 순서도를 도시한다. 상기 방법은 일반적으로 100에서 도시되었고, 소프트웨어로 제어되는 장치 안에서 실행을 위해 애플리케이션을 조절하는 프로세스를 설명한다. 상기 방법은 102에서 시작하고 구성 데이터는 104에서 액세스된다. 장치로부터, 액세스될 다양한 소스가 존재할 수 있고, 이들 데이터는 로컬 비-휘발성 저장 장치(예를 들어, ROM, HDD), 기록 캐리어(예를 들어, FDD, CD-ROM, Zip-드라이버, 메모리카드)나 네트워크나 인터넷 웹사이트에 위치한 데이터 파일을 포함하지만, 이에 한정되지는 않는다. 구성 데이터는 하나 이상의 애플리케이션과 데이터에 사용되는 성분의 특성을 구성하기 위해 이들 성분의 신원을 포함할 수 있다. 실제로, 구성 데이터는 애플리케이션에 의해 사용될 다른 자원(예를 들어, 비디오, 오디오, 그래픽, 텍스트 등)에 대한 참조를 또한 포함할 수 있는 하나 이상의 파일 안에 상주할 수 있다. 구성 데이터 파일은 , 예를 들어, 비슷한 기능들과 상호 작용성의 집합이 위치한 전체 애플리케이션에 대해 또는 이들의 부분이나 부분들에 대해 정의될 수 있다. 액세스된 구성 데이터(106)는 108에서 저장될 수 있다. 다음, 확인된 각각의 애플리케이션 성분에 대해, 구성이 110에서 결정되고, 성분의 경우가 성분 라이브러리(114)에 대한 참조에 의해 112에서 예시된다. 성분 라이브러리는 장치에 대해 국부적으로 및/또는 원거리에 위치한 하나 이상의 저장 장치를 포함할 수 있다. 예를 들어, 상기 라이브러리는 네트워크 상에 원거리에 저장된 다른 성분들과 함께 로컬 비-휘발성 저장 장치(ROM, HDD 등)에 저장된 (예를 들어, 많은 애플리케이션에 공통인)인기있는 성분을 포함할 수 있다. 성분들은 JAR이나 ZIP 파일에 한정되지 않고 포함하는, 하나 이상의 아카이브 파일 형태의 목표물에 의해 액세스될 수 있다. 성분들이나 아카이브 파일은 네트워크나 인터넷으로부터 다운로딩될 수 있거나, 그렇지 않으면, 위에서 언급된 구성 데이터에 대해 비슷한 방식으로 기록 캐리어와 같은 임의의 적절한 수단에 의해 전송된다. 그런 후 예시된 성분은 116에서 설정될 수 있다(애플리케이션의 특정 성분은 구성을 요구하거나 요구하지 않을 수 있다는 것을 주지해야 한다). 상기 방법은 애플리케이션에 의해 요구되는 모든 성분들이 예시되고 구성되는 것을 보장하기 위해 루프시킬 수 있다(118). 일단 이것이 달성되면, 애플리케이션은 120에서 실행하도록 준비된다-예를 들어, 애플리케이션의 구성 데이터는 애플리케이션이 실행될 때 어느 성분에 초기의 관심이 주어져야 하는지를 나타낼 수 있다.
도 2는 구성 도구를 사용하여 개발된 단순한 애플리케이션의 개략적인 도면이다. 애플리케이션 성분은 일반적으로 200에서 도시되었다. 구성 도구는 예를 들어 애플리케이션을 개발하기 위한 그래픽 디자이너에 의해 사용될 수 있다. 도구 그 자체는 애플리케이션에 의해 (즉, 애플리케이션에 의해 활용되는 성분에 의해) 사용되는 언어(들)만이 아닌, 임의의 적절한 프로그래밍 언어를 사용하여 설계될 수 있다는 것이 주지되어야 한다. 기능상, 상기 도구는 사용가능한 성분의 모음 또는 팔래트(202)를 포함하거나 그렇지 않으면 액세스할 수 있는데, 이들로부터 디자이너는 애플리케이션의 용도를 선택할 수 있다. 어떻게 구성 도구 프로세스가 동작할 지의 예는 미리-콤파일된 JavaTM 클래스(성분)에 근거한 MHP(멀티미디아 홈 플랫폼) 상호작용 TV 애플리케이션의 생성이다. 상기 애플리케이션은 광고 그래픽, 추가의 정보를 얻기 위해 이메일 주소를 입력하기 위한 텍스트 입력 수단과, 송신 및 취소 버튼을 포함한다. 디자이너는 그래픽 성분(204)을 로딩하고 위치시키며, 적절한 광고 그래픽 파일은 구성도구에 로드시키는데, 구성 도구를 사용할 수 있다(도 2에 미도시). 다음으로, 텍스트 입력 필드 성분(206)는 추가되고 크기, 폰트 등에 대해 구성된 특성을 가질 수 있다. 그러면, 디자이너는 송신 및 취소로 라벨붙여질 두 개의 버튼 성분(208, 216)를 추가할 수 있다. 송신 버튼(208)은 동작 목록 안의 "콜 백 채널"동작을 취함으로써 백 채널과의 통신을 처리하는 추가의 성분(210)와 상호작용할 수 있다. 백 채널 성분(210)는 백 채널(214)로 송신될 텍스트 입력 필드의 콘텐트(212)를 마련하는 동작 목록 안에 송신 텍스트 필드 동작을 가질 수 있다. 취소 버튼(216)은 애플리케이션을 빠져나가도록(218) 동작 목록 안에 출구 동작을 가질 수 있다. 도구는 성분들 사이의 정확한 상호작용을 시험하기 위해 애플리케이션을 시험하는(예를 들어, 시뮬레이션으로) 기능을 디자이너에게 제공할 수 있다. 일단 애플리케이션이 개발되면, 애플리케이션에 대응하는 구성 데이터(220)는 출력될 수 있고 (애플리케이션 코어, 그래픽, 텍스트 입력, 버튼 및 백 채널을 포함한) 애플리케이션에 의해 사용되는 적절한 성분은 JAR 또는 ZIP 파일(222)로 보관될 수 있다. 임의의 적절한 방식의 구성 데이터는, 예를 들어, 지역 저장 장치, 레코드 캐리어, 네트워크 또는 인터넷에 한정되지는 않지만 이들을 통해 목표 플랫폼에 대해 사용가능하게 될 수 있다. 비슷하게 성분들(예를 들어, JAR 또는 ZIP 파일)은 또한 하나 이상의 이러한(하지만 꼭 동일할 필요는 없는) 메카니즘을 통해 사용가능하게 될 수 있다. 구성 도구는 애플리케이션에 대한 몇 가지 구성 데이터 및/또는 JAR 또는 ZIP 파일을 생성할 수 있다. 이러한 파일들이 위에서 언급된 메카니즘의 임의의 조합으로 목표물에 대해 사용가능하게 될 수 있다는 것이 당업자에게 명백할 것이다.
본 발명의 양상을 구현하는 더 상세한 예는 아래에 설명되었다. 이 예는 몇 가지 서비스 제공자로부터 (예를 들어, 멀티미디아 홈 플랫폼, MHP와 같은) 디지털 텔레비전 서비스를 수신하는데 사용되는 가전 디바이스(예를 들어, STB, PVR 등)에 관한 것이다. 상기 디바이스 그 자체는 앞서 언급된 본 발명의 방법에 따라 생성된 적절한 자바 가상 머신(JVM)과 JavaTM 애플리케이션이 미리 로딩된 표준화된 제품이다. 실제로, JavaTM 애플리케이션은 가전 디바이스의 펌웨어의 일부로 통합될 수 있다. 자바TM 애플리케이션에 의해 사용되는 성분들은 위에서 언급된 것처럼 구성 도구를 사용하여 JAR 파일 안에서 어셈블되었을 수 있다.
각각의 서비스 제공자는 (예를 들어, 인-하우스 그래픽 디자이너들을 사용하여) 자체의 구성 데이터를 만들어서, JavaTM 애플리케이션이 실행할 때, 구성 데이터가 예를 들어 서비스 제공자의 요구 조건에 따른 자바TM 애플리케이션의 그래픽 사용자 인터페이스(GUI)의 네비게이션과 룩 앤 필을 마련하고 설정할 수 있다. 예를 들어, 하나의 제공자는 그들의 서비스를 광고하는 점멸하는 스크린과 함께 서비스를 시작하길 바랄 수 있고, 반면 또 다른 제공자는 전자 프로그램 가이드(EPG)로 직접 가길 원할 수 있고, 또 다른 제공자는 긴급 뉴스 정보와 함께 시작하길 바랄 수 있다. 도 3은 공통 자바TM 기반 애플리케이션을 위한 구성 데이터를 생성하기 위한 예시적인 프로세스의 개략적인 도면이다. 상기 프로세스는 일반적으로 300으로 도시되었고, 공통 애플리케이션(306)을 구성하기 위한 구성 데이터를 생성하도록 서비스 제공자에 의해 사용되는 구성 도구(302)를 포함한다. 비슷하게, 다른 서비스 제공자들은 공통 애플리케이션에 대한 구성 데이터를 생성한다. 서비스 제공자들에 대응하는 구성 데이터(304)의 세트는 공통 JavaTM 애플리케이션(306)을 구성하는데 사용가능하게 만들어진다. 특정 서비스 제공자에 대한 사용자 애플리케이션(308)을 구현하기 위해, 그 서비스 제공자에 대응하는 구성 데이터(304)는 애플리케이션(306)의 경우를 설정한다. 사용자가 맞춤화된 외관 및 감각 또는 각 제공자에게 특정한 설정된 애플리케이션의 다른 양상의 지연 또는 손실없이 서비스 제공자들 사이에서 끊김없이 스위치할 수 있도록, 가전 디바이스 상에서 동시에 하나 이상의 애플리케이션의 경우를 실행하는 것이 가능할 수 있다.
구성 데이터는 가전 디바이스에 먼저 연결이 되었을 때 다운로드될 수 있고 그런 후 비-휘발성 메모리(예를 들어, 플래쉬 메모리, HDD 등)에 저장될 수 있다. 하지만, 만약 서비스 제공자가 다른 사용자 애플리케이션을 제공하거나 몇 가지 데이터(예를 들어, EPG)를 업데이트하길 바라면, 새로운 버전의 구성 데이터가 다운로드되고 JavaTM 애플리케이션이 다시 시작될 수 있다(또는, 만약 구성 데이터가 페이지 당 하나의 파일에 근거하면, 적절한 객체만이 필요할 때 업데이트된다). 그래서, 다른 사용자 애플리케이션들(예를 들어, 디지털 텔레텍스트 서비스)이 실시간으로 변하는 반면, 몇몇 사용자 애플리케이션들은 비정기적으로 변할 수 있다. 그러한 사용자 애플리케이션에 사용되는 성분들은, 예를 들어, (전화 또는 케이블을 통한) 백 채널 연결, 텍스트 입력 장치, 비트맵 영상 등일 수 있거나, 이것들은 완전한 EPG와 같은 더 복잡한 것일 수 있다. 임의의 경우에, 그 외형 및 작동 방식은 실제 구성 데이터에 의존할 것이다.
도 4는 자바TM 기반 애플리케이션의 구성의 일례를 도시하는 개략적인 도면이다. 문맥은 목표 장치, 예를 들어 셋 탑 박스에 상주하는 애플리케이션의 구성이다. 구성 데이터(402)는 목표 장치에 대해 사용가능하게 만들어진다. JavaTM 애플리케이션은 하나 이상의 JAR 파일들(404) 안에 포함되고, (애플리케이션이 생성되었을 때) 구성 도구에 의해 선택된 성분들(410, 412)을 포함한다. 애플리케이션 로더 클래스(성분)(406)는 구성 데이터(402)를 판독하고 JAR 파일 또는 파일들 안에서 사용가능한 성분들과 대응해야 하는 사용자 애플리케이션에 대해 요구되는 성분들을 결정한다. 그런 후 로더는 구성 데이터의 분석을 시작하고(414) 분석 데이터를 JAR 파일의 먼저 요구된 성분(410)로 진행시킨다(414). 성분 파서(416)는 데이터를 통계적 방법으로 분석한다. 대응하는 데이터 세트를 찾으면, 상기 통계적 방법은 성분의 경우를 생성하고, 데이터에 따른 그 특성을 구성한다. 계속 수행되거나, 이 성분의 경우에 의한 동작(418)은 또한 구성 데이터에 따라 결정된다. 그런 후, 모든 요구되는 성분들이 예시되고 구성되고 동작이 결정될 때까지, 나머지 분석 데이터는 분석을 위해 나머지 성분들{이 예에서 단지 성분(412)}으로 진행된다(414). 성분(412)에 대해서 성분(410)과 비슷한 방식으로, 분석 데이터가 분석되고(424), 성분의 경우는 생성되고 계속 수행되거나 성분의 경우에 의한 동작(426)이 결정된다. 모든 예시된 성분들(420)의 목록(408)은 애플리케이션 로더(406)로 회수된다. 최종적으로, 상기 로더는 목표 플랫폼에 의해 사용되는 임의의 수단으로 애플리케이션 실행을 시작한다(422).
본 발명을 지원하는 성분은 다음의 성분들을 가질 수 있다:
그 자체의 새로운 경우를 생성하기 위한 방법,
연관된 토큰에만 동작하고 나머지를 다음 성분로 전달할 애플리케이션 로더에 의해 전달된 구성 데이터를 수신하기 위한 분석 방법,
분석된 데이터로부터 그 자신을 구성하고 자신에 의해 수행될 동작에 대한 파라미터들을 모으기 위한 각각의 경우에 대한 방법,
계속 수행되는 동작 또는 네비게이션의 방법들을 포함한 이 성분의 경우에 의한 동작들을 구현할 방법(들). 이러한 경우들의 전체 목록 및 연관된 방법들은 애플리케이션을 구성할 수 있다.
앞서 언급된 방법들 및 구현들은 예시로서만 제공되었고, 본 발명의 장점을 개발하도록 당업자에 의해 쉽게 확인될 수 있는 방법들 및 구현들의 범위의 선택을 제공한다.
위의 설명과 도 1을 참조로 목표 디바이스 상에서의 실행을 위한 소프트웨어 애플리케이션을 통합하는 방법이 개시되었다. 상기 애플리케이션은 미리-콤파일된, 재-사용가능한 성분들과 대응하는 구성 데이터의 세트를 포함한다. 구성 데이터(108)는 애플리케이션이 실행될 목표 디바이스에 대해 사용가능하게 되었다. 애플리케이션을 포함하는 각각의 성분에 대해, 연관된 구성 데이터는 결정되고(110), 성분의 경우는 예시되고(112) 구성 데이터에 의존해 설정된다(116). 애플리케이션의 실행(120)은 성분들의 구성된 경우의 상호작용에 의해 적어도 부분적으로 결정된다.
상술한 바와 같이 본 발명은 소프트웨어 개발에 관한 것이고, 특히, 소프트웨어보다는 애플리케이션에서의 전문가에 의한 소프트웨어 애플리케이션의 개발에 응용될 수 있다.

Claims (15)

  1. 소프트웨어로 제어되는 장치 안에서 실행을 위해 애플리케이션을 통합하는 방법으로서, 상기 애플리케이션은 복수의 미리-콤파일된 재-사용가능한 성분들을 포함하고, 상기 성분들 중 적어도 하나는 적어도 하나의 구성가능한 특성을 가지는, 애플리케이션을 통합하는 방법에 있어서,
    복수의 미리-콤파일된 성분들에 연관된 구성 데이터에 액세스하는 단계(104)로서, 각 성분에 대해,
    성분에 대응하는 구성 데이터를 결정하는 단계(110),
    성분의 경우를 생성하는 단계(112),
    상기 성분이 적어도 하나의 설정가능한 특성을 가질 때,
    구성 데이터에 의존하여 그 특성을 설정함으로써 성분의 경우를 설정하는 단계(116)를 포함하여, 애플리케이션의 실행(120)이 성분의 설정된 경우의 상호작용에 의해 적어도 부분적으로 결정되는, 액세스 단계(104)를 포함하는, 애플리케이션을 통합하는 방법.
  2. 제 1항에 있어서, 성분에 대응하는 구성 데이터는 성분에 의해 적어도 부분적으로 결정되는, 애플리케이션을 통합하는 방법.
  3. 제 1항 내지 제 2항에 있어서, 상기 성분은 저장 파일로서 장치에 대해 사용가능하게 되는, 애플리케이션을 통합하는 방법.
  4. 제 1항 내지 제 2항에 있어서, 상기 구성 데이터는 적어도 부분적으로 로컬 저장 장치로부터 액세스되는, 애플리케이션을 통합하는 방법.
  5. 제 1항 내지 제 2항에 있어서, 구성 데이터는 적어도 부분적으로 기록 캐리어로부터 액세스되는, 애플리케이션을 통합하는 방법.
  6. 제 1항 내지 제 2항에 있어서, 구성 데이터는 적어도 부분적으로 네트워크로부터 액세스되는, 애플리케이션을 통합하는 방법.
  7. 제 6항에 있어서, 상기 구성 데이터가 적어도 부분적으로 인터넷으로부터 접속되는, 애플리케이션을 통합하는 방법.
  8. 애플리케이션을 개발하는 방법으로서,
    미리-콤파일된 재-사용가능한 성분들의 모음에 액세스하는 단계,
    적어도 두 개의 성분들 사이의 상호작용을 선택하는 단계로서, 상기 성분들 중 적어도 하나는 설정가능한 특성을 갖는, 적어도 두 개의 성분들 사이의 상호작용을 선택하는 단계,
    상기 선택된 상호작용에 의존하여 각각의 특성을 구성하는 단계,
    상기 구성된 특성에 의존하여 구성 데이터를 생성하는 단계를 포함하여, 상기 구성 데이터에 의존하여 구성된, 상기 적어도 두 개의 성분의 경우가 상기 선택된 상호작용을 수행할 수 있게 되는, 애플리케이션을 개발하는 방법.
  9. 제 8항에 따른 방법에서 사용되는 미리-콤파일된 재-사용가능한 성분을 개발하는 방법으로서,
    성분들의 특성을 정의하는 단계로서, 상기 특성은 구성 데이터에 의존하여 구성가능한, 성분들의 특성을 정의하는 단계,
    상기 성분을 코딩하는 단계로서, 상기 코딩은 상기 구성 데이터에 접속하고 상기 구성 데이터에 의존하여 성분의 구성가능한 특성을 설정하도록 동작가능한, 성분을 코딩하는 단계,
    성분을 콤파일링하는 단계를 포함하는, 미리-콤파일된 재-사용가능한 성분을 개발하는 방법.
  10. 제 9항, 방법에 의해 생산된 미리-콤파일된 재-사용가능한 성분.
  11. 제 1항, 제 2항. 제 8항 또는 제 9항 중 어느 한 항에 따른 방법으로서, 성분이 미리-작성된 자바 클래스인, 방법.
  12. 제 1항, 제 2항, 제 8항 또는 제 9항 중 어느 한 항에 따른 방법을 수행하도록 동작가능한 소프트웨어를 포함하는 기록 캐리어.
  13. 제 1항, 제 2항, 제 8항 또는 제 9항 중 어느 한 항에 따른 방법의 단계를 수행하도록 구성된 소프트웨어 유틸리티.
  14. 데이터 프로세서를 포함하는 컴퓨터 장치로서, 상기 데이터 프로세서는 동작에서 제 13항에 따른 소프트웨어 유틸리티에 의해 감독되는, 데이터 프로세서를 포함하는 컴퓨터 장치.
  15. 실질적으로 명세서에서 설명되고 첨부된 도면을 참조한 것과 같은 소프트웨어로 제어되는 장치 내에서 실행을 위한 애플리케이션을 통합하는 방법.
KR1020057007222A 2002-10-29 2003-10-14 소프트웨어 애플리케이션을 생성하는 방법 KR20050056270A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0225097.5A GB0225097D0 (en) 2002-10-29 2002-10-29 Creating software applications
GB0225097.5 2002-10-29

Publications (1)

Publication Number Publication Date
KR20050056270A true KR20050056270A (ko) 2005-06-14

Family

ID=9946747

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057007222A KR20050056270A (ko) 2002-10-29 2003-10-14 소프트웨어 애플리케이션을 생성하는 방법

Country Status (8)

Country Link
US (1) US20060059458A1 (ko)
EP (1) EP1586030A2 (ko)
JP (1) JP2006518491A (ko)
KR (1) KR20050056270A (ko)
CN (1) CN1961287A (ko)
AU (1) AU2003267757A1 (ko)
GB (1) GB0225097D0 (ko)
WO (1) WO2004040442A2 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8091066B2 (en) * 2004-08-25 2012-01-03 International Business Machines Corporation Automated multi-platform build and test environment for software application development
KR100723913B1 (ko) 2005-05-30 2007-05-31 주식회사 에어코드 구조화된 데이터 방송 어플리케이션, 그 기록 매체, 및 그동작 방법
US8255901B2 (en) * 2005-12-16 2012-08-28 Sap Ag Methods and systems for configuring software applications
US7992128B2 (en) * 2006-01-27 2011-08-02 Sap Ag Computer software adaptation method and system
US20070180069A1 (en) * 2006-01-31 2007-08-02 Staples The Office Superstore, Llc Management of component configurations in a computer system
US8185888B2 (en) * 2007-06-05 2012-05-22 Microsoft Corporation Software execution with minimal impact deployment
CN101222371B (zh) * 2008-01-24 2012-08-22 中国海洋大学 客户端组件运行管理系统
US8140319B2 (en) 2008-02-05 2012-03-20 International Business Machines Corporation Method and system for predicting system performance and capacity using software module performance statistics
CN101599983B (zh) * 2008-06-06 2012-03-07 深圳市同洲电子股份有限公司 一种接收终端运行方法、装置及接收终端
US8667483B2 (en) * 2009-03-25 2014-03-04 Microsoft Corporation Device dependent on-demand compiling and deployment of mobile applications
US9195438B2 (en) * 2012-12-19 2015-11-24 Salesforce.Com, Inc. System, method and computer program product for creating an application within a system
CN103458121B (zh) * 2013-08-28 2016-07-06 四川长虹电器股份有限公司 实现Android版本与第三方功能兼容的系统和方法
WO2016153481A1 (en) * 2015-03-24 2016-09-29 Hewlett Packard Enterprise Development Lp Context-based feature management
US10003669B2 (en) * 2015-07-28 2018-06-19 DISH Technologies L.L.C. Methods and apparatus to create and transmit a condensed logging data file
US10592070B2 (en) 2015-10-12 2020-03-17 Microsoft Technology Licensing, Llc User interface directional navigation using focus maps
CN108287758A (zh) * 2017-01-09 2018-07-17 阿里巴巴集团控股有限公司 一种应用资源管理方法、使用方法及装置
CN106843985A (zh) * 2017-02-14 2017-06-13 郑州云海信息技术有限公司 一种部署应用的虚拟化方法及系统
CN110764778B (zh) * 2019-10-21 2024-02-06 深圳市珍爱捷云信息技术有限公司 应用构建中的预编译方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US20060059458A1 (en) 2006-03-16
JP2006518491A (ja) 2006-08-10
CN1961287A (zh) 2007-05-09
WO2004040442A3 (en) 2006-04-27
AU2003267757A1 (en) 2004-05-25
WO2004040442A2 (en) 2004-05-13
AU2003267757A8 (en) 2004-05-25
GB0225097D0 (en) 2002-12-11
EP1586030A2 (en) 2005-10-19

Similar Documents

Publication Publication Date Title
KR20050056270A (ko) 소프트웨어 애플리케이션을 생성하는 방법
US7146615B1 (en) System for fast development of interactive applications
MXPA02004356A (es) Desplegar objetos graficos.
WO2003081436A1 (fr) Navigateur et programme a contenu multimedia
CN112445545B (zh) 一种网页应用的启动方法及显示设备
WO2022247594A1 (zh) 一种页面呈现方法、装置、电子设备、计算机可读存储介质、及计算机程序产品
KR20050030619A (ko) Gui 어플리케이션 개발 지원 장치, gui 표시 장치및 방법과 컴퓨터 프로그램
CN114064024A (zh) 微应用的开发方法、装置、设备、存储介质及程序产品
US7543280B2 (en) Converting and executing applications
CN111796820A (zh) 基于集成化组件构建前端页面的方法、装置及电子设备
US6215488B1 (en) Method and system for designing a graphical user interface for an electronic consumer product
CN112612525A (zh) 显示设备及显示设备开机方法
CN114130017A (zh) 基于游戏引擎的界面部署方法、装置、设备及存储介质
WO2024066825A1 (zh) 页面项目开发方法、装置、设备、介质及产品
CN115113850A (zh) 一种跨平台应用的构建、运行方法、服务器、终端和系统
CN112487322B (zh) 一种第三方应用Loading页面的加载方法及显示设备
KR100409224B1 (ko) 데이터 방송용 컨텐츠 제작 시스템 및 그 제작 방법
CN112911359B (zh) 一种资源显示方法、显示设备及遥控器
US7441228B2 (en) Design-time representation for a first run-time environment with converting and executing applications for a second design-time environment
US20040139483A1 (en) System and method for authorizing data broadcasting contents
CN116340680A (zh) 一种显示设备及插件对象生命周期管理的控制方法
CN111479144A (zh) 显示设备及应用交互方法
US20230111113A1 (en) Page loading method and display apparatus
US20100262947A1 (en) Custom command line switch
CN117616392A (zh) 应用启动方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid