KR101474115B1 - Method of managing application data flow using singleton pattern - Google Patents

Method of managing application data flow using singleton pattern Download PDF

Info

Publication number
KR101474115B1
KR101474115B1 KR20130031924A KR20130031924A KR101474115B1 KR 101474115 B1 KR101474115 B1 KR 101474115B1 KR 20130031924 A KR20130031924 A KR 20130031924A KR 20130031924 A KR20130031924 A KR 20130031924A KR 101474115 B1 KR101474115 B1 KR 101474115B1
Authority
KR
South Korea
Prior art keywords
data
instance
data storage
processing unit
storage command
Prior art date
Application number
KR20130031924A
Other languages
Korean (ko)
Other versions
KR20140117061A (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 한양대학교 에리카산학협력단
Priority to KR20130031924A priority Critical patent/KR101474115B1/en
Publication of KR20140117061A publication Critical patent/KR20140117061A/en
Application granted granted Critical
Publication of KR101474115B1 publication Critical patent/KR101474115B1/en

Links

Images

Classifications

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

Abstract

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법이 개시된다. 그 방법은 데이터베이스 클레스가 액티비티의 데이터 저장 명령을 수신하는 단계, 상기 데이터베이스 클레스에 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는지 판단하는 단계, 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는 경우, 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하는 단계 및 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재 하지 않는 경우, 상기 데이터 저장 명령을 수행하기 위한 새로운 인스턴스를 생성하고, 상기 새로운 인스턴스를 이용하여 데이터를 저장하는 단계를 포함한다.A method of managing an Android application data flow using a singleton pattern is disclosed. The method includes the steps of: receiving a data store instruction of an activity of a database class; determining whether an instance for executing the data store instruction exists in the database class; if there is an instance for performing the data store instruction, Storing data using an instance for executing the data storage command, and creating a new instance for executing the data storage command when the instance for performing the data storage command does not exist, And storing the data.

Description

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법{METHOD OF MANAGING APPLICATION DATA FLOW USING SINGLETON PATTERN}[0001] METHOD OF MANAGING APPLICATION DATA FLOW USING SINGLETON PATTERN [0002]

아래 실시예들은 안드로이드 플랫폼에 있어서 어플리케이션의 데이터 흐름 관리 방법에 관한 것이다.The following embodiments relate to a data flow management method for an application in an Android platform.

스마트폰이 대중화 되면서 자신만의 어플리케이션 개발에 관심을 가지는 사용자가 늘어나고 있다. 어플리케이션 개발을 하다 보면, 다수의 액티비티에서 공통적으로 사용하는 데이터를 하나의 액티비티에서 다른 액티비티로 전달해야 하는 경우가 발생한다. 이 경우, 안드로이드의 인텐트 클래스를 이용해 데이터를 전달하는 방법은 같은 데이터에 대해 반복적인 작업을 해주어야 하기 때문에 번거롭고 복잡하다.As smartphones become popular, more and more users are interested in developing their own applications. When developing an application, it is often necessary to transfer data that is common to many activities from one activity to another. In this case, the method of transmitting data using the intent class of Android is cumbersome and complicated because it has to perform repetitive work on the same data.

본 발명의 실시예들은 싱글톤 패턴을 이용하여 데이터를 클래스로 정의한다. 싱글톤 패턴이란, 어떤 클래스의 인스턴스는 오직 하나임을 보장하며, 다른 클래스들이 이 인스턴스에 접근할 수 있는 전역적인 접촉점을 제공하는 패턴이다. 싱글톤 패턴을 이용할 경우, 다수의 액티비티가 클레스로 정의된 데이터를 공유하기 때문에 효율적인 데이터 관리가 가능하다.Embodiments of the present invention define data as a class using a singleton pattern. A singleton pattern is a pattern that guarantees that only one instance of a class is unique and provides a global point of contact where other classes can access it. When using the singleton pattern, efficient data management is possible because a large number of activities share data defined as a class.

본 발명의 실시예에 따른 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 데이터베이스 클레스가 액티비티의 데이터 저장 명령을 수신하는 단계; 상기 데이터베이스 클레스에 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는지 판단하는 단계; 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는 경우, 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하는 단계; 및 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재 하지 않는 경우, 상기 데이터 저장 명령을 수행하기 위한 새로운 인스턴스를 생성하고, 상기 새로운 인스턴스를 이용하여 데이터를 저장하는 단계를 포함한다.A method of managing an Android application data flow using a singleton pattern according to an exemplary embodiment of the present invention includes: receiving a data store command of an activity of a database class; Determining whether an instance for executing the data storage command exists in the database class; Storing data by using an instance for executing the data storage command when there is an instance for performing the data storage command; And generating a new instance for executing the data save command when the instance for performing the data save command does not exist, and storing the data using the new instance.

상기 저장 명령을 수행하기 위한 인스턴스는 다른 클래스가 접근 할 수 있지만 상기 다른 클래스가 직접 생성할 수 없는 것일 수 있다.The instance for executing the save command may be accessed by another class but can not be directly generated by the other class.

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 복수의 스레드가 동시에 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하려고 하는 경우, 어느 하나의 스레드만이 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장할 수 있도록 처리하는 단계; 및 상기 어느 하나의 스레드가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장 한 후에 다른 하나의 스레드가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장할 수 있도록 처리하는 단계를 더 포함할 수 있다.A method for managing an Android application data flow using a singleton pattern includes the steps of: when a plurality of threads simultaneously attempt to store data using an instance for executing the data store command, Processing the data so that the data can be stored using the instance; And storing the data by using the instance for executing the data storage command, and then processing another thread to store the data by using the instance for executing the data storage command .

상기 데이터베이스 클레스에 데이터를 저장한 액티비티들로 구성된 어플리케이션의 종료 시, 상기 데이터베이스 클레스에 저장된 데이터를 제거하는 단계를 더 포함할 수 있다.The method may further include removing data stored in the database class at the end of an application configured with activities storing data in the database class.

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 상기 액티비티의 데이터 저장 명령 중 일부분을 인텐트 클래스 통해 수행하는 단계를 더 포함할 수 있다.The method of managing an Android application data flow using a singleton pattern may further include performing a part of data storage commands of the activity through an intent class.

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 사용자 인터페이스를 통해 상기 액티비티의 데이터 저장 명령의 수행 방식을 제어하는 단계를 더 포함할 수 있다.The method of managing an Android application data flow using a singleton pattern may further include controlling a method of executing a data store command of the activity through a user interface.

본 발명의 실시예에 따른 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 데이터베이스 클레스가 액티비티의 데이터 로드 명령을 수신하는 단계; 및 상기 데이터 로드 명령에 대응하는 데이터를 로드할 때 이용했던 인스턴스를 이용하여 데이터를 로드하는 단계를 포함한다.A method for managing an Android application data flow using a singleton pattern according to an exemplary embodiment of the present invention includes: receiving a data load command of an activity of a database class; And loading data using an instance used when loading data corresponding to the data load command.

상기 로드 명령을 수행하기 위한 인스턴스는 다른 클래스가 접근 할 수 있지만 상기 다른 클래스가 직접 생성할 수 없는 것일 수 있다.The instance for executing the load instruction may be accessed by another class but can not be directly generated by the other class.

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 복수의 스레드가 동시에 상기 데이터 로드 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 로드하려고 하는 경우, 어느 하나의 스레드만이 상기 데이터 로드 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 로드할 수 있도록 처리하는 단계; 및 상기 어느 하나의 스레드가 상기 데이터 로드 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 로드 한 후에 다른 하나의 스레드가 상기 데이터 로드 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 로드할 수 있도록 처리하는 단계를 더 포함할 수 있다.A method for managing an Android application data flow using a singleton pattern includes: when a plurality of threads simultaneously attempt to load data using an instance for executing the data load command, only one of the threads executes the data load command Processing the data so that the data can be loaded using the instance; And after one of the threads loads the data using the instance for executing the data load instruction, the other thread loads the data using the instance for executing the data load instruction As shown in FIG.

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 상기 액티비티의 데이터 로드 명령 중 일부분을 인텐트 클래스 통해 수행하는 단계를 더 포함할 수 있다.The method for managing the Android application data flow using the singleton pattern may further include performing a part of the data load instruction of the activity through the intent class.

싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 사용자 인터페이스를 통해 상기 액티비티의 데이터 로드 명령의 수행 방식을 제어하는 단계를 더 포함할 수 있다.The method of managing an Android application data flow using a singleton pattern may further include controlling a method of performing a data load instruction of the activity through a user interface.

본 발명의 실시예들은 싱글톤 패턴을 이용하여 데이터를 클래스로 정의한다. 싱글톤 패턴이란, 어떤 클래스의 인스턴스는 오직 하나임을 보장하며, 다른 클래스들이 이 인스턴스에 접근할 수 있는 전역적인 접촉점을 제공하는 패턴이다. 싱글톤 패턴을 이용할 경우, 다수의 액티비티가 클레스로 정의된 데이터를 공유하기 때문에 효율적인 데이터 관리가 가능하다.Embodiments of the present invention define data as a class using a singleton pattern. A singleton pattern is a pattern that guarantees that only one instance of a class is unique and provides a global point of contact where other classes can access it. When using the singleton pattern, efficient data management is possible because a large number of activities share data defined as a class.

도 1은 인텐트를 통한 액티비티간 데이터 전달 과정을 나타낸 도면이다.
도 2는 싱글톤 패턴을 UML로 나타낸 도면이다.
도 3은 안드로이드 어플리케이션 내에서 쓰일 데이터베이스를 싱글톤 패턴을 적용해 클래스로 생성하기 위한 소스 코드이다.
도 4는 Database에 데이터를 저장, 로드하기 위한 소스 코드이다.
도 5는 두 개 이상의 스레드가 동시에 생성 메소드를 사용하려고 하는 경우 하나의 스레드만이 인스턴스를 생성할 수 있게 하는 소스 코드이다.
도 6은 액티비티들이 싱글톤 패턴을 이용하여 데이터를 공유하는 것을 나타낸 도면이다.
도 7은 싱글톤 클래스 로드시 바로 객체가 생성되는 싱글톤 클래스의 소스 코드이다.
도 8은 싱글톤 클래스 로드시 객체를 생성하지 않고, 메소드 호출로 생성하는 싱글톤 클래스의 소스 코드이다.
도 9는 싱글톤 클래스 로드시 바로 객체가 생성되는 소스 코드와, 싱글톤 클래스 로드시 객체를 생성하지 않고, 메소드 호출로 생성하는 소스 코드의 장점을 조합한 싱글톤 클래스의 소스 코드이다.
도 10은 내부 클래스에서 객체가 생성되도록 한 싱글톤 클래스의 소스 코드이다.
도 11은 단일의 인스턴스를 유지하기 위한 판단 과정을 나타낸 플로우 차트이다.
도 12는 본 발명의 일실시예에 따른 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 시스템을 나타낸 블록도이다.
1 is a diagram illustrating a process of transferring data between activities via an intent.
2 is a diagram showing a singleton pattern in UML.
FIG. 3 is a source code for generating a class using a singleton pattern in a database to be used in an Android application.
4 is a source code for storing and loading data in a database.
Figure 5 is source code that allows only one thread to create an instance if more than one thread intends to use the create method at the same time.
6 is a diagram illustrating that activities share data using a singleton pattern.
7 is a source code of a singleton class in which an object is instantly generated when a singleton class is loaded.
8 is a source code of a singleton class which is generated by a method call without generating an object when the singleton class is loaded.
FIG. 9 is a source code of a singleton class that combines the advantages of the source code in which an object is directly generated when a singleton class is loaded, and the source code generated by a method call without creating an object in a singleton class load.
10 is a source code of a singleton class in which an object is generated in an inner class.
11 is a flowchart showing a judgment process for maintaining a single instance.
12 is a block diagram of a system for managing an Android application data flow using a singleton pattern according to an embodiment of the present invention.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

스마트폰이 대중화 되면서 어플리케이션의 수요와 공급이 증가하고 있고, 자신만의 어플리케이션 개발에 관심을 가지는 사용자 또한 늘어나고 있다. 특히 안드로이드 스마트폰의 경우 관련 정보가 방대하고 찾기 쉬우며 무료로 제공되기 때문에 많은 개발자들이 직접 어플리케이션을 제작하고 있다.As smartphones become popular, demand and supply of applications are increasing, and more users are interested in developing their own applications. Especially for Android smartphones, many developers are making their own applications because the information is vast, easy to find and free.

어플리케이션 개발을 하다 보면, 여러 액티비티에서 공통적으로 사용하는 데이터를 하나의 액티비티에서 다른 액티비티로 데이터를 전달해야 하는 경우가 발생한다. 개발 경험이 부족한 초보 개발자나 비전공자의 경우 이런 부분에 있어서 데이터 흐름을 관리하는데 불편함을 겪고 있다.When developing an application, it is often necessary to transfer data from one activity to another activity, which is common to many activities. Developers with little or no experience in development are experiencing inconvenience in managing data flow in these areas.

본 발명은 개발자들이 쉽게 데이터 흐름을 관리할 수 있도록, 디자인 패턴 중 하나인 싱글톤(Singleton) 패턴을 이용하여, 데이터를 하나의 클래스로 관리함으로써, 어느 액티비티에서도 데이터를 쉽게 생성 및 수정할 수 있는 데이터 관리 기법을 제시한다.The present invention manages data in a single class using a Singleton pattern, which is one of the design patterns, so that developers can easily manage data flow, so that data that can be easily generated and modified in any activity Management techniques are presented.

액티비티란 사용자가 이용하는 활성화된 화면을 말하고, 여러 개의 액티비티들은 어플리케이션을 형성한다. 안드로이드에서 액티비티들 사이의의 데이터 전달은 인텐트(Intent) 클래스를 통해 수행된다.An activity is an active screen used by a user, and several activities form an application. Data passing between activities on Android is performed through the Intent class.

도 1은 인텐트를 통한 액티비티간 데이터 전달 과정을 나타낸 도면이다.1 is a diagram illustrating a process of transferring data between activities via an intent.

도 1을 참조하면, 먼저 액티비티에서 서브 액티비티로 넘겨주는 인텐트를 생성(110)하고, startActivityForResult 메소드를 이용해 서브 액티비티를 호출(120)하면서 대응하는 파라미터를 포함하는 인텐트를 전달한다. 그리고 서브 액티비티에서 그 인텐트를 호출(130)해 데이터를 저장한 뒤 setResult 메소드를 이용해 인텐트를 리턴(140)한다. 그리고 onActivityResult 메소드를 이용해 인텐트를 통해 데이터를 받은 뒤 액티비티를 수행(150)한다.Referring to FIG. 1, an intent for passing an activity from a activity to a sub-activity is generated (110), and a sub-activity is called (120) using a startActivityForResult method to deliver an intent including a corresponding parameter. Then, the subentity calls the intent 130 to store the data, and then returns the intent 140 using the setResult method. After receiving the data through the intent using the onActivityResult method, the activity is performed (150).

싱글톤 패턴이란, 어떤 클래스의 인스턴스는 오직 하나임을 보장하며, 이 인스턴스에 접근할 수 있는 전역적인 접촉점을 제공하는 패턴이다.A singleton pattern is a pattern that guarantees that only one instance of a class is unique and provides a global point of contact that can access this instance.

도 2는 싱글톤 패턴을 UML로 나타낸 도면이다.2 is a diagram showing a singleton pattern in UML.

도 2를 참조하면, 먼저 private static으로 Singleton 인스턴스를 선언해 외부에서 접근할 수 없고 static에 올려진 인스턴스는 중복해서 생성되지 않는다는 특징을 이용한다. 그리고 나서 private로 생성자를 선언해 다른 클래스에서 new를 이용해 인스턴스를 생성할 수 없게 만든다. 하지만 이렇게 하게 되면 자기 자신도 사용할 수 없게 되므로, public static으로 모든 곳에서 접근할 수 있고, instance가 null인 경우 새로운 인스턴스를, null이 아닌 경우 기존의 생성되었던 인스턴스를 반환하는 getInstance() 메소드를 생성한다.Referring to FIG. 2, a Singleton instance is first declared as a private static, so that it can not be accessed from the outside, and instances added to the static are not duplicated. Then declare the constructor private, making it impossible to create an instance using new in another class. However, if you do this, you will not be able to use it yourself, so you will create a getInstance () method that will be public static and accessible from anywhere, returning a new instance if the instance is null and an existing instance if it is not null. do.

여러 액티비티에서 공통적으로 사용하는 데이터의 흐름을 관리할 경우 안드로이드의 인텐트 클래스를 이용해 데이터를 전달하는 방법은 같은 데이터에 대해 반복적인 작업을 계속 해주어야 하기 때문에 다소 번거롭고 복잡한 절차를 가진다. 싱글톤 패턴을 이용해 클래스로 데이터를 정의하게 되면 어떤 액티비티 클래스에서 호출 하더라도 같은 데이터를 가져올 수 있고 수정이 가능하다.When managing the flow of data that is commonly used by multiple activities, passing data using the Android intent class has a somewhat cumbersome and complicated procedure because it must continue to iterate over the same data. Defining data in a class using a singleton pattern allows the same data to be retrieved and modified in any activity class.

싱글톤 패턴을 적용했을 때 얻어지는 장점은 다음과 같다. 먼저 static이기 때문에 스택 영역에 할당되어 프로그램 종료 시 알아서 제거되고, 해당 인스턴스가 선언되지 않아도 이미 static으로 메모리가 할당되어있어 접근이 가능하다.The advantages obtained by applying the singleton pattern are as follows. Since it is static first, it is allocated to the stack area, it is removed at the end of the program, and even if the instance is not declared, the memory is already allocated to the static memory.

도 3은 안드로이드 어플리케이션 내에서 쓰일 데이터베이스를 싱글톤 패턴을 적용해 클래스로 생성하기 위한 소스 코드이다.FIG. 3 is a source code for generating a class using a singleton pattern in a database to be used in an Android application.

도 3을 참조하면, 안드로이드 어플리케이션 내에서 쓰일 데이터베이스를 싱글톤 패턴을 적용해 클래스로 생성한 부분이다. private static으로 Database 클래스의 인스턴스를 생성하였고, 생성자를 private로 선언하여 다른 클래스에서 직접 인스턴스를 생성할 수 없게 하였다. 그리고 생성자 내부에는 이 클래스가 호출되었을 때 동작해야 할 메소드들이 들어있다. 그리고 이 클래스의 인스턴스를 생성하기 위한 전역 메소드가 있어서 인스턴스가 없으면 생성자를 호출해주고 있다면 기존의 인스턴스를 리턴 해주게 된다.Referring to FIG. 3, a database used in an Android application is generated as a class by applying a singleton pattern. I created an instance of the Database class private static and declared the constructor private so that I could not instantiate it directly from another class. The constructor contains the methods that should be run when this class is called. And if you have a global method to create an instance of this class, and you do not have an instance, then if you call the constructor, it will return the existing instance.

도 4는 Database에 데이터를 저장, 로드하기 위한 소스 코드이다.4 is a source code for storing and loading data in a database.

도 4를 참조하면, 다른 클래스에서 Database에 있는 데이터를 생성하고 생성된 데이터를 또 다른 클래스에서 사용할 수 있다. LoadingActivity라는 클래스는 실질적으로 프로그램을 로드하면서 데이터베이스를 생성한다(410). PredictiveMessageApp이라는 클래스에서는 생성된 데이터베이스를 이용해 데이터를 받아온다(420).Referring to FIG. 4, data in a database may be generated in another class, and the generated data may be used in another class. A class called LoadingActivity actually creates a database while loading the program (410). A class called PredictiveMessageApp receives data using the generated database (420).

매번 인텐트를 생성해 액티비티간의 데이터를 넘겨주는 것과 달리, 한 클래스를 생성해 모든 부분에서 사용할 수 있으므로 더 간단하고 편리하다.It is simpler and more convenient to create a class and use it in all parts, as opposed to creating an intent each time to pass data between activities.

반면에 전역적으로 여러 군데를 참조하여 싱글톤 패턴을 많이 사용하게 되면 전역변수가 증가하는 것과 같이 프로그램의 복잡도가 증가하게 된다. 두 스레드가 동시에 접근하게 되면 객체를 두 개 생성하며, 그 중 하나는 버려지기 때문에, 다중 스레드 환경에는 적합하지 않다.On the other hand, if we use a lot of singleton patterns referring to several places globally, the program complexity increases as the global variable increases. When two threads access simultaneously, they create two objects, one of which is discarded, which is not suitable for multithreaded environments.

각각의 액티비티에서 생성되는 데이터를 전달해야 할 경우에는 싱글톤 패턴을 적용하는 것이 메모리나 프로그램 복잡도 측면에서 불리하다. 싱글톤 패턴을 적용했을 때의 장단점과 어떤 상황에서 적용하는 것이 적절한지 파악하여, 싱글톤 패턴을 이용한 데이터 관리 방법을 앞서 언급한 intent를 이용한 데이터 관리 방법과 혼용하여 사용할 수 있다. 싱글톤 패턴을 이용한 데이터 관리와 intent를 이용한 데이터 관리를 혼용하는 경우, 미리 설정된 조건에 따라 어떤 방법을 이용할지 판단하거나, 사용자 인터페이스를 통해 어떤 방법을 이용할지 사용자가 직접 설정할 수 있다.Applying a singleton pattern is disadvantageous in terms of memory and program complexity when data generated from each activity needs to be delivered. It can be used in combination with the data management method using the above-mentioned intent by grasping the advantages and disadvantages of the application of the singleton pattern and the application in a certain situation. When the data management using the singleton pattern is mixed with the data management using the intent, it is possible to determine which method to use according to preset conditions, or to directly set a method to use the user interface through the user interface.

도 5는 두 개 이상의 스레드가 동시에 생성 메소드를 사용하려고 하는 경우 하나의 스레드만이 인스턴스를 생성할 수 있게 하는 소스 코드이다.Figure 5 is source code that allows only one thread to create an instance if more than one thread intends to use the create method at the same time.

도 5를 참조하면, 스레드 환경에서 사용할 경우, 동기화가 필요하기 때문에, synchorinized를 이용해 객체를 얻어올 수 있는 메소드를 선언한다.Referring to FIG. 5, in case of using in a thread environment, since synchronization is required, a method which can acquire an object using synchorinized is declared.

도 6은 액티비티들이 싱글톤 패턴을 이용하여 데이터를 공유하는 것을 나타낸 도면이다.6 is a diagram illustrating that activities share data using a singleton pattern.

도 6을 참조하면, MainActivity(610)와 SubActivity들(620)이 각각 Singleton(630)에 데이터를 저장, 로드함으로써, 데이터를 공유하는 것을 알 수 있다.Referring to FIG. 6, it can be seen that the MainActivity 610 and the SubActivity 620 share data by storing and loading data in the Singleton 630, respectively.

도 7은 싱글톤 클래스 로드시 바로 객체가 생성되는 싱글톤 클래스의 소스 코드이다.7 is a source code of a singleton class in which an object is instantly generated when a singleton class is loaded.

도 7을 참조하면, 액티비티가 싱글톤 클래스를 로드하면 바로 객체가 생성되도록 코딩했다.Referring to FIG. 7, when an activity loads a singleton class, the object is immediately generated.

도 8은 싱글톤 클래스 로드시 객체를 생성하지 않고, 메소드 호출로 생성하는 싱글톤 클래스의 소스 코드이다.8 is a source code of a singleton class which is generated by a method call without generating an object when the singleton class is loaded.

도 8을 참조하면, 액티비티가 싱글톤 클래스를 로드해도 바로 객체가 생성되지 않고, 매소드를 호출하면 객체가 생성되도록 코딩했다.Referring to FIG. 8, an object is not generated immediately when an activity loads a singleton class, but is coded so that an object is generated when a method is called.

도 9는 싱글톤 클래스 로드시 바로 객체가 생성되는 소스 코드와, 싱글톤 클래스 로드시 객체를 생성하지 않고, 메소드 호출로 생성하는 소스 코드의 장점을 조합한 싱글톤 클래스의 소스 코드이다.FIG. 9 is a source code of a singleton class that combines the advantages of the source code in which an object is directly generated when a singleton class is loaded, and the source code generated by a method call without creating an object in a singleton class load.

도 9를 참조하면 싱글톤 클래스 로드시 바로 객체가 생성되는 소스 코드와 싱글톤 클래스 로드시 객체를 생성하지 않고, 메소드 호출로 생성하는 소스 코드를 조합하여 코딩했다.Referring to FIG. 9, the source code in which an object is directly generated during singleton class loading and the source code generated by a method call without coding an object in singleton class loading are combined and coded.

도 10은 내부 클래스에서 객체가 생성되도록 한 싱글톤 클래스의 소스 코드이다.10 is a source code of a singleton class in which an object is generated in an inner class.

도 10을 참조하면, Singleton 클래스 내부에 SingletonHolder 클래스를 선언하여, 내부 클래스에서 객체를 생성하도록 코딩했다.Referring to FIG. 10, a SingletonHolder class is declared in the Singleton class and the object class is generated in the inner class.

도 11은 단일의 인스턴스를 유지하기 위한 판단 과정을 나타낸 플로우 차트이다.11 is a flowchart showing a judgment process for maintaining a single instance.

도 11을 참조하면, 본 발명의 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 데이터베이스 클래스가 데이터 저장 명령을 수신한다(1110).Referring to FIG. 11, a method for managing an Android application data flow using a singleton pattern according to the present invention receives a data store command (1110).

데이터베이스 클래스가 데이터 저장 명령을 수신하는 단계(1110)는 액티비티가 데이터를 저장하기 위해 전송한 명령을 데이터베이스 클래스가 수신하는 단계이다. 싱글톤 클래스 로드 시 바로 인스턴스가 생성되거나, 싱글톤 클래스가 로드 되어도 바로 인스턴스가 생성되지 않고 별도의 호출로 생성될 수 있다.The step 1110 of receiving the data store command by the database class is a step in which the database class receives the command transmitted by the activity to store the data. When a singleton class is loaded, an instance is instantly created, or even if a singleton class is loaded, the instance is not created immediately but can be generated as a separate call.

본 발명의 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 데이터를 저장하기 위한 인스턴스가 존재하는지 판단한다(1120).The Android application data flow management method using the singleton pattern of the present invention determines whether there is an instance for storing data (1120).

데이터를 저장하기 위한 인스턴스가 존재하는지 판단하는 단계(1120)는 싱글톤 클래스 로드 시, 또는 별도의 호출에 의하여 데이터베이스 클래스의 인스턴스가 생성되었는지 판단하는 단계일 수 있다. 인스턴스가 null에 해당하는지 판단하여 본 판단 과정을 수행 할 수 있다.Step 1120 of determining whether there is an instance for storing data may be a step of determining whether an instance of the database class has been created at the time of singleton class loading or by a separate call. It is possible to judge whether the instance corresponds to null and to perform this judgment process.

싱글톤 클래스의 인스턴스는 다른 클래스에서 접근 가능하지만, 다른 클래스를 통해 직접 생성될 수는 없는 인스턴스이다.An instance of a singleton class is an instance that can be accessed by another class, but not directly through another class.

본 발명의 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 인스턴스가 존재하는 것으로 판단된 경우, 인스턴스를 이용하여 데이터를 저장한다(1130).In the method of managing an Android application data flow using a singleton pattern according to the present invention, when it is determined that an instance exists, data is stored using an instance (1130).

인스턴스가 존재하는 것으로 판단된 경우, 인스턴스를 이용하여 데이터를 저장하는 단계(1130)는 기존에 생성된 인스턴스를 이용하여 데이터를 저장하는 단계일 수 있다. 싱글톤 클래스 로드 시, 또는 별도의 호출에 의하여 데이터베이스 클래스의 인스턴스가 이미 생성된 경우, 본 인스턴스를 이용하여 데이터를 저장한다.If it is determined that the instance exists, the step 1130 of storing the data using the instance may be a step of storing the data using the previously created instance. When an instance of a database class is already created at load time of a singleton class or by a separate call, this instance is used to store data.

본 발명의 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법은 인스턴스가 존재하지 않는 것으로 판단된 경우, 새로운 인스턴스를 생성한 뒤(1140), 인스턴스를 이용하여 데이터를 저장한다(1130).In the method of managing an Android application data flow using a singleton pattern according to the present invention, if it is determined that an instance does not exist, a new instance is created (1140), and data is stored using the instance (1130).

인스턴스가 존재하지 않는 것으로 판단된 경우, 새로운 인스턴스를 생성한 뒤(1140), 인스턴스를 이용하여 데이터를 저장하는 단계(1130)는 새로운 인스턴스를 생성하여 데이터를 저장하는 단계일 수 있다. 싱글톤 클래스 로드 시, 또는 별도의 호출에 의하여 데이터베이스 클래스의 인스턴스가 생성되지 않은 경우에, 새로운 인스턴스를 생성하고, 본 인스턴스를 이용하여 데이터를 저장한다.If it is determined that the instance does not exist, a step 1130 of creating a new instance (1140) and storing the data using the instance may be a step of creating a new instance and storing the data. When an instance of a database class is not created at singleton class loading or by a separate call, a new instance is created and data is stored using this instance.

액티비티가 데이터를 로드 하는 경우에는, 데이터를 저장할 때 이용된 인스턴스를 이용하여 데이터 로드에 이용할 수 있다. 상기 방법에 의하여 단일의 인스턴스 유지가 실현될 수 있다. 데이터 로드 시 인스턴스를 이용한 데이터 관리 방법은 데이터 저장 시 데이터 관리 방법이 적용될 수 있으므로 보다 상세한 설명은 생략한다.When an activity loads data, it can be used to load data using the instance used to store the data. A single instance retention can be realized by this method. The data management method using the instance at the time of data loading can be applied to the data management method at the time of storing the data, so that a detailed description will be omitted.

도 12는 본 발명의 일실시예에 따른 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 시스템을 나타낸 블록도이다.12 is a block diagram of a system for managing an Android application data flow using a singleton pattern according to an embodiment of the present invention.

도 12를 참조하면, 시스템은 안드로이드 단말기(1200)를 통해 실시되며, 안드로이드 단말기(1200)는 표시부(1210), 처리부(1220), 입력부(1230), 저장부(1240), 통신부(1250)를 포함한다. 12, the system is implemented through an Android terminal 1200. The Android terminal 1200 includes a display unit 1210, a processing unit 1220, an input unit 1230, a storage unit 1240, and a communication unit 1250 .

표시부(1210)는 다양한 종류, 사이즈를 갖는 디스플레이 패널을 포함할 수 있으며, 안드로이드 단말기(1200)에서 사용자를 위한 유저 인터페이스를 제공한다. 표시부(910)에는 어플리케이션 데이터 흐름 관리를 위해 필요한 정보들이 다양한 환경으로 제공될 수 있다.The display unit 1210 may include a display panel having various types and sizes, and provides a user interface for the user at the Android terminal 1200. [ In the display unit 910, information necessary for application data flow management can be provided in various environments.

처리부(1220)는 본 발명의 실시를 위해 필요한 연산을 처리하는 다양한 프로세서가 포함할 수 있다. 처리부(920)는 어플리케이션 데이터 흐름 관리를 위해 필요한 연산이나 데이터를 처리한다.The processing unit 1220 may include various processors that process the operations required for the practice of the present invention. The processing unit 920 processes operations and data necessary for application data flow management.

입력부(1230)는 어플리케이션의 사용자가 데이터를 입력하거나 유저 인터페이스를 제어하기 위한 다양한 장치가 포함할 수 있다. 키보드, 마우스, 터치 패드, 디지털 펜 등의 입력장치가 포함될 수 있다.The input unit 1230 may include various devices for the user of the application to input data or to control the user interface. An input device such as a keyboard, a mouse, a touch pad, and a digital pen may be included.

저장부(1240)는 하드 디스크와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체 및 롬(ROM), 램(RAM), 플래시 메모리 등의 저장 장치가 포함될 수 있다. 안드로이드 플랫폼의 각종 클래스, 메소드, 어플리케이션 등이 저장된다.The storage unit 1240 may include a magnetic recording medium such as a hard disk, an optical recording medium such as a CD-ROM and a DVD, and a storage such as a ROM, a RAM, and a flash memory. Various classes, methods, and applications of the Android platform are stored.

통신부(1250)는 컴퓨터 또는 스마트 기기간의 통신을 위한 LAN/WAN, 유무선, RFID, NFC 등을 포함하며, 데이터의 송수신이나 업데이트 등을 수행할 수 있다.The communication unit 1250 includes LAN / WAN, wired / wireless, RFID, NFC, and the like for communication between a computer and a smart device, and can perform data transmission, reception, and update.

도 1 내지 도 11를 통해 설명된 내용은 도 12에 도시된 각 유닛에 그대로 적용될 수 있으므로, 도 15에 대한 보다 상세한 설명은 생략한다.The contents described with reference to Figs. 1 to 11 can be directly applied to each unit shown in Fig. 12, so that a detailed description of Fig. 15 is omitted.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (11)

처리부에서 실행되는 데이터베이스 클레스가 액티비티의 데이터 저장 명령을 수신하는 단계;
상기 처리부가 상기 데이터베이스 클레스에 상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는지 판단하는 단계;
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하는 단계; 및
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재 하지 않는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 새로운 인스턴스를 생성하고, 상기 새로운 인스턴스를 이용하여 데이터를 저장하는 단계를 포함하고,
상기 데이터 저장 명령을 수행하기 위한 인스턴스는 다른 클래스가 접근 할 수 있지만 상기 다른 클래스가 직접 생성할 수 없는 것인 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
Receiving a data storage instruction of an activity of a database class executed in the processing unit;
Determining whether an instance for executing the data storage command exists in the database class;
Storing the data using the instance for performing the data storage command when the processing unit has an instance for performing the data storage command; And
Generating a new instance for executing the data storage command and storing data using the new instance when the processing unit does not exist;
Wherein the instance for performing the data save command is accessible by another class but is not directly generated by the other class.
제 1 항에 있어서,
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하는 단계는
복수의 스레드가 동시에 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하려고 하는 경우, 상기 처리부가 어느 하나의 스레드만이 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장할 수 있도록 처리하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
The method according to claim 1,
Wherein the step of storing the data using the instance for performing the data storage command includes the steps of:
In a case where a plurality of threads simultaneously attempt to store data using an instance for executing the data storage command, the processing unit may allow only one thread to store data using an instance for executing the data storage command A method for managing an Android application data flow using a singleton pattern processing.
제2항에 있어서,
상기 처리부가 상기 어느 하나의 스레드가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장 한 후에 다른 하나의 스레드가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장할 수 있도록 처리하는 단계를 더 포함하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
3. The method of claim 2,
Wherein the processing unit stores data by using one of the threads for executing the data storage command and then processes the data so that another thread can store data using the instance for executing the data storage command Wherein the method further comprises the steps of:
제1항에 있어서,
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하는 단계; 및
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재 하지 않는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 새로운 인스턴스를 생성하고, 상기 새로운 인스턴스를 이용하여 데이터를 저장하는 단계 이후에,
상기 데이터베이스 클레스에 데이터를 저장한 액티비티들로 구성된 어플리케이션의 종료 시, 상기 처리부가 상기 데이터베이스 클레스에 저장된 데이터를 제거하는 단계를 더 포함하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
The method according to claim 1,
Storing the data using the instance for performing the data storage command when the processing unit has an instance for performing the data storage command; And
Wherein when the processing unit does not have an instance for executing the data storage command, the processing unit creates a new instance for executing the data storage command, and stores the data using the new instance,
Further comprising the step of, when the application configured with the activities storing data in the database class is terminated, the processing unit removing data stored in the database class.
제1항에 있어서,
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재하는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하는 단계; 및
상기 데이터 저장 명령을 수행하기 위한 인스턴스가 존재 하지 않는 경우, 상기 처리부가 상기 데이터 저장 명령을 수행하기 위한 새로운 인스턴스를 생성하고, 상기 새로운 인스턴스를 이용하여 데이터를 저장하는 단계는
상기 처리부가 상기 액티비티의 데이터 저장 명령 중 일부분을 인텐트 클래스 통해 수행하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
The method according to claim 1,
Storing the data using the instance for performing the data storage command when the processing unit has an instance for performing the data storage command; And
Wherein the processing unit generates a new instance for executing the data storage command when the instance for performing the data storage command does not exist and storing the data using the new instance
And the processing unit performs a part of data storage commands of the activity through an intent class.
제5항에 있어서,
상기 처리부는 사용자 인터페이스를 통해 상기 액티비티의 데이터 저장 명령의 수행 방식을 제어하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
6. The method of claim 5,
Wherein the processing unit controls a method of executing a data storage command of the activity through a user interface.
처리부에서 실행되는 데이터베이스 클레스가 액티비티의 데이터 로드 명령을 수신하는 단계; 및
상기 처리부가 상기 데이터 로드 명령에 대응하는 데이터를 저장할 때 이용했던 인스턴스를 이용하여 데이터를 로드하는 단계를 포함하고,
상기 데이터 로드 명령을 수행하기 위한 인스턴스는 다른 클래스가 접근 할 수 있지만 상기 다른 클래스가 직접 생성할 수 없는 것인 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
Receiving a data load instruction of an activity of a database class executed in the processing unit; And
And loading the data using the instance that the processing unit used when storing the data corresponding to the data load command,
Wherein the instance for performing the data load command is accessible by another class but is not directly generated by the other class.
제 7 항에 있어서,
상기 처리부가 상기 데이터 로드 명령에 대응하는 데이터를 저장할 때 이용했던 인스턴스를 이용하여 데이터를 로드하는 단계는
복수의 스레드가 동시에 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장하려고 하는 경우, 상기 처리부가 어느 하나의 스레드만이 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장할 수 있도록 처리하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
8. The method of claim 7,
Wherein the step of loading data by using the instance used when the processing unit stores the data corresponding to the data load command
In a case where a plurality of threads simultaneously attempt to store data using an instance for executing the data storage command, the processing unit may allow only one thread to store data using an instance for executing the data storage command A method for managing an Android application data flow using a singleton pattern processing.
제8항에 있어서,
상기 처리부가 상기 어느 하나의 스레드가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장 한 후에 다른 하나의 스레드가 상기 데이터 저장 명령을 수행하기 위한 인스턴스를 이용하여 데이터를 저장할 수 있도록 처리하는 단계를 더 포함하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
9. The method of claim 8,
Wherein the processing unit stores data by using one of the threads for executing the data storage command and then processes the data so that another thread can store data using the instance for executing the data storage command Wherein the method further comprises the steps of:
제7항에 있어서,
상기 처리부가 상기 데이터 로드 명령에 대응하는 데이터를 저장할 때 이용했던 인스턴스를 이용하여 데이터를 로드하는 단계는
상기 처리부가 상기 액티비티의 데이터 저장 명령 중 일부분을 인텐트 클래스 통해 수행하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
8. The method of claim 7,
Wherein the step of loading data by using the instance used when the processing unit stores the data corresponding to the data load command
And the processing unit performs a part of data storage commands of the activity through an intent class.
제10항에 있어서,
상기 처리부는 사용자 인터페이스를 통해 상기 액티비티의 데이터 저장 명령의 수행 방식을 제어하는 싱글톤 패턴을 이용한 안드로이드 어플리케이션 데이터 흐름 관리 방법.
11. The method of claim 10,
Wherein the processing unit controls a method of executing a data storage command of the activity through a user interface.
KR20130031924A 2013-03-26 2013-03-26 Method of managing application data flow using singleton pattern KR101474115B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130031924A KR101474115B1 (en) 2013-03-26 2013-03-26 Method of managing application data flow using singleton pattern

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130031924A KR101474115B1 (en) 2013-03-26 2013-03-26 Method of managing application data flow using singleton pattern

Publications (2)

Publication Number Publication Date
KR20140117061A KR20140117061A (en) 2014-10-07
KR101474115B1 true KR101474115B1 (en) 2015-01-02

Family

ID=51990528

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130031924A KR101474115B1 (en) 2013-03-26 2013-03-26 Method of managing application data flow using singleton pattern

Country Status (1)

Country Link
KR (1) KR101474115B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3374867B1 (en) * 2016-03-25 2024-01-31 Google LLC Navigation application programming interface

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
android - Call Activity Method From Fragment - Stack Overflow 웹문서(http://stackoverflow.com/questions/12070215/call-activity-method-from-fragment, 2012.08.12) *
android - Call Activity Method From Fragment - Stack Overflow 웹문서(http://stackoverflow.com/questions/12070215/call-activity-method-from-fragment, 2012.08.12)*
미친 듯이 즐겨보자 ... 디자인 패턴 - Singleton Pattern 웹문서(http://outliers.tistory.com/entry/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4Design-Pattern-Singleton-Pattern, 2011.09.27.) *
미친 듯이 즐겨보자 … 디자인 패턴 - Singleton Pattern 웹문서(http://outliers.tistory.com/entry/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4Design-Pattern-Singleton-Pattern, 2011.09.27.)*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3374867B1 (en) * 2016-03-25 2024-01-31 Google LLC Navigation application programming interface

Also Published As

Publication number Publication date
KR20140117061A (en) 2014-10-07

Similar Documents

Publication Publication Date Title
US11861375B2 (en) Configuration for application using microservices
KR102333341B1 (en) Exception handling in microprocessor systems
US10592218B2 (en) Dynamic data and compute resource elasticity
US20120324454A1 (en) Control Flow Graph Driven Operating System
US9658890B2 (en) Runtime agnostic representation of user code for execution with selected execution runtime
US10585653B2 (en) Declarative programming model with a native programming language
US20140325432A1 (en) Second screen view with multitasking
US20110126210A1 (en) Responsive user interface with background application logic
US20190347190A1 (en) Code usage map
US10853049B2 (en) Methods for enabling a computer to migrate microservices and to perform microservice templating
US7567257B2 (en) Partition-based undo of partitioned object graph
US9501537B2 (en) Parallel display of multiple query results
CN105183547A (en) Task scheduling method and device of user interface
CN102027460A (en) Dynamic declarative application description
CN108431768A (en) Using the controlled deployment of feature
Min et al. A UML metamodel for smart device application modeling based on Windows Phone 7 platform
US20110167405A1 (en) Application building system, method and computer-readable medium
US9553761B2 (en) Dynamic server to server configuration and initialization
US10002401B2 (en) Method and apparatus for efficient processing of graphics commands
US8433830B2 (en) Systems and methods for using a shared buffer construct in performance of concurrent data-driven tasks
AU2015288125B2 (en) Control in initiating atomic tasks on a server platform
KR101474115B1 (en) Method of managing application data flow using singleton pattern
CN113313353A (en) Continuous delivery pipeline management method and device
WO2013165460A1 (en) Control flow graph driven operating system
CN109462663A (en) A kind of method, voice interactive system and storage medium that limitation system resource occupies

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
LAPS Lapse due to unpaid annual fee