KR20130020135A - 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법 - Google Patents

통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법 Download PDF

Info

Publication number
KR20130020135A
KR20130020135A KR1020110082558A KR20110082558A KR20130020135A KR 20130020135 A KR20130020135 A KR 20130020135A KR 1020110082558 A KR1020110082558 A KR 1020110082558A KR 20110082558 A KR20110082558 A KR 20110082558A KR 20130020135 A KR20130020135 A KR 20130020135A
Authority
KR
South Korea
Prior art keywords
file
code
information
unit
server
Prior art date
Application number
KR1020110082558A
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 인크로스 주식회사
Priority to KR1020110082558A priority Critical patent/KR20130020135A/ko
Publication of KR20130020135A publication Critical patent/KR20130020135A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • 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/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 통합 개발 환경에서 코드 동시 개발자 리스트를 제공하는 시스템 및 방법에 관한 것으로, 실시간으로 코드 작업 정보를 공유할 수 있는 기술을 개시한다. 본 발명에 따르면 코드 파일 충돌로 인한 시간 낭비를 줄일 수 있고, 코드 개발시 원활한 의사 소통이 가능하여 코드 작성을 효율적으로 할 수 있으므로 개발 시간을 단축할 수 있는 효과가 있다.

Description

통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법{System And Method Of Providing The Developer List Of Developing Code Simultaneously In An Integrated Development Environment}
본 발명은 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법에 관한 것이다.
최근에 다양한 스마트 디바이스의 보급으로 대용량의 코드 개발이 급증하고 있다. 코드 크기가 증가할수록 많은 개발자들이 같은 코드를 가지고 개발하게 되며 다양한 방법의 코드 공유 방법이 제안되고 실제로 사용되고 있다. 대표적인 예로, SVN을 들 수 있다. 현재 SVN을 내포한 통합 개발 환경(Integrated Development Envrionment, IDE)이 보편적으로 사용되고 있다.
통합 개발 환경은 단일 사용자 인터페이스로부터 실행되는 컴퓨터 프로그램 세트이며, 컴퓨터 프로그램의 편집, 컴파일 및 디버깅이 공통 메뉴로부터 개발되는 것을 허용한다. 이에, 통합 개발 환경에 의해 사용자는 분산 시스템 형태로 컴퓨터 프로그램을 개발할 수 있다.
그러나, SVN을 내포한 종래의 통합 개발 환경을 사용할 때, 여러명의 개발자들이 동시에 동일한 파일의 코드를 수정할 경우 누가 현재 코드를 수정하고 있는지 알 수 있는 방법이 없다. 따라서, 동시에 작업 중인 코드 충돌에 대해서는 확인할 방법이 없었다.
따라서, 실시간으로 현재 같은 코드에서 작업을 수행하는 개발자의 리스트 및 위치를 확인할 방법 및 시스템이 필요하게 되었다.
본 발명은 상술한 문제점을 해결하기 위해 창출된 것으로, 통합 개발 환경에서 실시간으로 현재 같은 코드에서 동시에 작업하고 있는 개발자의 리스트를 제공하는 시스템 및 방법을 제공하는데 그 목적이 있다.
이러한 목적을 달성하기 위한 본 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템은 복수의 사용자가 코드 파일을 공유하는 코드 파일 공유 서버; 상기 코드 파일 공유 서버와 네트워크로 연결되는 클라이언트 서버; 및 상기 클라이언트 서버로부터 상기 코드 파일에 대한 작업 정보를 전송받는 실시간 파일 관리 서버; 를 포함하고, 상기 클라이언트 서버는 상기 코드 파일 공유 서버로부터 상기 코드 파일을 다운로드 하는 다운로드부; 상기 다운로드부에서 다운로드한 상기 코드 파일을 저장하는 저장부; 통합 개발 환경을 실행시키는 실행부; 및 상기 통합 개발 환경에서 수정 작업한 상기 코드 파일에 대한 작업 정보를 상기 실시간 파일 관리 서버로 전송하는 파일 정보 전송부; 를 포함한다.
또한, 상기 실시간 파일 관리 서버는 상기 복수의 사용자에게 상기 코드 파일에 대한 작업 정보를 제공하는 파일 정보 제공부; 를 포함한다.
또한, 상기 파일 정보 제공부는 상기 코드 파일에 대한 정보에 현재 사용중인 사용자의 정보 및 수정 중인 라인을 표시한다.
이러한 목적을 달성하기 위한 본 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 방법은 클라이언트 서버가 공유 파일 서버로부터 코드 파일을 다운로드 받는 제1단계; 상기 클라이언트 서버가 상기 제1단계에서 다운로드 받은 상기 코드 파일을 저장부에 저장하는 제2단계; 상기 클라이언트 서버가 통합 개발 환경을 실행하는 제3단계; 상기 통합 개발 환경의 에디터에서 상기 코드 파일에 대한 코드 수정 작업이 이루어지는 제4단계; 상기 제4단계에서 수정 작업이 이루어지는 상기 코드 파일에 대한 작업 정보를 상기 클라이언트 서버가 실시간 파일 관리 서버로 전송하는 제5단계; 및 상기 제5단계에서 수신한 상기 작업 정보를 파일 정보 제공부가 복수의 사용자에게 제공하는 제6단계; 를 포함한다.
또한, 상기 제6단계에서 제공된 상기 작업 정보는 현재 사용중인 사용자의 정보 및 수정 중인 라인을 표시한다.
이상에서 설명한 바와 같이 본 발명에 의하면 다음과 같은 효과가 있다.
첫째, 코드 파일 충돌로 인한 시간 낭비를 줄일 수 있다.
둘째, 코드 개발시 원활한 의사 소통이 가능하다.
셋째, 코드 작성을 효율적으로 할 수 있다.
넷째, 개발 시간을 단축할 수 있다.
도 1은 본 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템의 블록도이다.
도 2는 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 방법을 순차적으로 나타낸 순서도이다.
본 발명의 바람직한 실시예에 대하여 첨부된 도면을 참조하여 더 구체적으로 설명하되, 이미 주지되어진 기술적 부분에 대해서는 설명의 간결함을 위해 생략하거나 압축하기로 한다.
<구성에 대한 설명>
도 1은 본 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템(10)의 블록도이다.
도 1을 참조하면, 본 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템(10)은 코드 파일 공유 서버(100), 클라이언트 서버(200) 및 실시간 파일 관리 서버(300)를 포함하여 구성된다.
코드 파일 공유 서버(100)는 복수의 개발자간에 코드 파일을 공유할 수 있게 하는 역할을 한다. CVS, SVN 등이 코드 파일 공유 서버(100)의 역할을 할 수 있다.
클라이언트 서버(200)는 코드 파일 공유 서버(100) 및 실시간 파일 관리 서버(300)와 네트워크로 연결되어 있고, 다운로드부(210), 저장부(220), 실행부(230) 및 파일 정보 전송부(240) 등을 포함하여 구성된다. 다운로드부(210)는 코드 파일 공유 서버(100)로부터 코드 파일을 다운로드하고 저장부(220)는 다운로드부(210)에서 다운로드한 코드 파일을 저장한다. 저장부(220)는 프로그램 코드의 실제 실행시에 채용되는 로컬 메모리, 벌크 저장 장치 및 캐시 메모리일 수 있으며, 그 중 캐시 메모리는 실행시 코드를 벌크 저장 장치로부터 검색해야 하는 횟수를 단축시키기 위하여 적어도 일부 프로그램 코드의 임시 저장 장치를 제공한다. 실행부(230)는 통합 개발 환경(Integrated Development Envrionment, IDE)을 실행시킨다.
통합 개발 환경은 디버거(debugger), 컴파일러(compiler) 및 에디터(editor) 등을 포함하여 이루어진다.
디버거는 사용자가 작성한 프로그램을 실행하면서 버그를 검출하는 기능을 제공한다. 컴파일러는 컴퓨터 프로그래밍에서 고수준의 언어로 작성된 원시부호를 컴퓨터가 실행할 수 있는 기계 부호로 번역하여 변환해주는 역할을 한다. 에디터는 코드 파일을 수정 및 편집할 수 있는 기능을 제공한다.
통합 개발 환경의 각 구성요소는 소프트웨어, 하드웨어, 또는 소프트웨어 또는 하드웨어의 조합으로 구현될 수 있다. 통합 개발 환경 그 자체는 분산 시스템 형태로 실행될 수 있기 때문에, 그러한 분산 시스템 형태의 운영체제에 대하여 실행될 수 있다. 분산 시스템의 일예로, 데스크탑이나 노트북 컴퓨터, 스마트폰, 태블릿PC 등의 컴퓨팅 장치일 수 있다.
파일 정보 전송부(240)는 통합 개발 환경에서 작업 중인 코드 파일의 작업 정보를 실시간 파일 관리 서버(300)로 전송하는 역할을 한다.
실시간 파일 관리 서버(300)는 클라이언트 서버(200)와 네트워크로 연결되어 있고, 클라이언트 서버(200)로부터 작업 중인 코드 파일의 작업 정보를 전송받아 복수의 개발자가 공유할 수 있도록 제공하는 역할을 수행한다. 실시간 파일 관리 서버(300)는 파일 정보 제공부(310) 및 파일 정보 수신부(320) 등을 포함하여 구성된다.
파일 정보 제공부(310)는 파일 정보 부분에 현재 사용중인 사용자의 정보, 예를 들어 사용자의 수, 사용자 ID 등을 표시하고 수정 중인 라인을 표시하여 복수의 개발자가 현재 사용중인 코드 파일과 작업을 수행하는 사용자를 파악할 수 있게한다. 파일 정보 제공부(310)는 도 3을 참조하면, 일종의 뷰(view)와 같은 형태로 정보를 제공할 수 있다.
파일 정보 수신부(320)는 클라이언트 서버(200)의 파일 정보 전송부(240)로부터 현재 작업 중인 파일의 작업 정보를 수신하고, 파일 정보 제공부(310)와 연동되어 있다.
<방법에 대한 설명>
도 2는 본 발명의 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 방법을 순차적으로 나타낸 순서도이다. 도 2를 참조하여 본 발명의 실시예에 따른 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 방법에 대해 보다 구체적으로 설명한다.
1. 코드 파일 다운로드(S201)
클라이언트 서버(200)의 다운로드부(210)가 공유 파일 서버(100)로부터 코드 파일을 다운로드 받는다.
2. 코드 파일 저장(S202)
클라이언트 서버(200)가 (S201)단계에서 다운로드 받은 코드 파일을 저장부(220)에 저장한다. 저장부(220)는 프로그램 코드의 실제 실행시에 채용되는 로컬 메모리, 벌크 저장 장치 및 캐시 메모리일 수 있다.
3. 통합 개발 환경 실행(S203)
클라이언트 서버(200)의 실행부(230)가 통합 개발 환경을 실행시킨다.
4. 코드 수정 작업 시행(S204)
개발자가 통합 개발 환경에서 제공하는 에디터를 이용하여 코드 파일에 대한 코드 수정 작업을 수행한다.
5. 코드 파일 작업 정보 전송(S205)
(S204)단계에서 수행되는 코드 파일에 대한 작업 정보를 실시간으로 파일 정보 전송부(240)가 실시간 파일 관리 서버(300)로 전송한다. 실시간 파일 관리 서버(300)의 파일 정보 수신부(320)에서 코드 파일에 대한 작업 정보를 수신한다.
6. 코드 파일 작업 정보 제공(S206)
실시간 파일 관리 서버(300)의 파일 정보 제공부(310)가 파일 정보 수신부(320)에서 수신한 코드 파일에 대한 작업 정보를 복수의 개발자에게 제공한다. 도 3을 참조하면, 복수의 개발자에게 제공하는 코드 파일에 대한 작업 정보는 뷰(view) 형태로 제공되며, 파일명, 현재 사용중인 사용자의 정보 (사용자 수, 사용자 ID 등) 및 수정 중인 라인 정보 등이 제공된다.
위에서 설명한 바와 같이 본 발명에 대한 구체적인 설명은 첨부된 도면을 참조한 실시예에 의해서 이루어졌지만, 상술한 실시예는 본 발명의 바람직한 예를 들어 설명하였을 뿐이기 때문에, 본 발명이 상기의 실시예에만 국한되는 것으로 이해되어져서는 아니 되며, 본 발명의 권리범위는 후술하는 청구범위 및 그 등가개념으로 이해되어져야 할 것이다.
10: 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템
100: 코드 파일 공유 서버
200: 클라이언트 서버
210: 다운로드부, 220: 저장부,
230: 실행부, 240: 파일 정보 전송부
300: 실시간 파일 관리 서버
310: 파일 정보 제공부, 320: 파일 정보 수신부

Claims (5)

  1. 복수의 사용자가 코드 파일을 공유하는 코드 파일 공유 서버;
    상기 코드 파일 공유 서버와 네트워크로 연결되는 클라이언트 서버; 및
    상기 클라이언트 서버로부터 상기 코드 파일에 대한 작업 정보를 전송받은 후 접속된 복수의 사용자에게 실시간으로 상기 작업 정보를 제공하는 실시간 파일 관리 서버; 를 포함하고,
    상기 클라이언트 서버는,
    상기 코드 파일 공유 서버로부터 상기 코드 파일을 다운로드 하는 다운로드부;
    상기 다운로드부에서 다운로드한 상기 코드 파일을 저장하는 저장부;
    상기 저장부에 저장된 상기 코드 파일을 수정하기 위하여 통합 개발 환경을 실행시키는 실행부; 및
    상기 실행부를 통해 실행된 상기 통합 개발 환경에서 수정 작업한 상기 코드 파일에 대한 작업 정보를 상기 실시간 파일 관리 서버로 전송하는 파일 정보 전송부; 를 포함하는 것을 특징으로 하는 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템.
  2. 제1항에 있어서,
    상기 실시간 파일 관리 서버는,
    상기 복수의 사용자에게 상기 코드 파일에 대한 작업 정보를 제공하는 파일 정보 제공부; 를 포함하는 것을 특징으로 하는 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템.
  3. 제2항에 있어서,
    상기 파일 정보 제공부는 상기 코드 파일에 대한 정보에 현재 사용중인 사용자의 정보 및 수정 중인 라인의 정보를 제공하는 것을 특징으로 하는 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템.
  4. 클라이언트 서버가 공유 파일 서버로부터 코드 파일을 다운로드 받는 제1단계;
    상기 클라이언트 서버가 상기 제1단계에서 다운로드 받은 상기 코드 파일을 저장부에 저장하는 제2단계;
    상기 클라이언트 서버가 통합 개발 환경을 실행하는 제3단계;
    상기 통합 개발 환경의 에디터에서 상기 코드 파일에 대한 코드 수정 작업이 이루어지는 제4단계;
    상기 제4단계에서 수정 작업이 이루어지는 상기 코드 파일에 대한 작업 정보를 상기 클라이언트 서버가 실시간 파일 관리 서버로 전송하는 제5단계; 및
    상기 제5단계에서 수신한 상기 작업 정보를 파일 정보 제공부가 복수의 사용자에게 제공하는 제6단계; 를 포함하는 것을 특징으로 하는 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 방법.
  5. 제3항에 있어서,
    상기 제6단계에서 제공된 상기 작업 정보는 현재 사용중인 사용자의 정보 및 수정 중인 라인의 정보를 제공하는 것을 특징으로 하는 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 방법.



KR1020110082558A 2011-08-19 2011-08-19 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법 KR20130020135A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110082558A KR20130020135A (ko) 2011-08-19 2011-08-19 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110082558A KR20130020135A (ko) 2011-08-19 2011-08-19 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20130020135A true KR20130020135A (ko) 2013-02-27

Family

ID=47898129

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110082558A KR20130020135A (ko) 2011-08-19 2011-08-19 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR20130020135A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101525510B1 (ko) * 2013-03-07 2015-06-03 에스피테크놀러지 주식회사 저작도구와 통합개발환경의 연동을 위한 장치와 그 제어 방법
KR20180115972A (ko) * 2017-04-14 2018-10-24 정성채 모바일 앱 공유 개발 장치 및 그 방법
CN112802374A (zh) * 2020-12-31 2021-05-14 慧科教育科技集团有限公司 一种跟随编程***及方法
WO2023249156A1 (ko) * 2022-06-24 2023-12-28 쿠팡 주식회사 코드 정보 제공을 위한 전자 장치 및 그 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101525510B1 (ko) * 2013-03-07 2015-06-03 에스피테크놀러지 주식회사 저작도구와 통합개발환경의 연동을 위한 장치와 그 제어 방법
KR20180115972A (ko) * 2017-04-14 2018-10-24 정성채 모바일 앱 공유 개발 장치 및 그 방법
CN112802374A (zh) * 2020-12-31 2021-05-14 慧科教育科技集团有限公司 一种跟随编程***及方法
WO2023249156A1 (ko) * 2022-06-24 2023-12-28 쿠팡 주식회사 코드 정보 제공을 위한 전자 장치 및 그 방법

Similar Documents

Publication Publication Date Title
CN108027722B (zh) 在编译和部署中动态更新应用
KR102059705B1 (ko) 적응식 이식가능 라이브러리
EP3035191B1 (en) Identifying source code used to build executable files
Hellman Android programming: Pushing the limits
US10540262B2 (en) Using edit and continue to dynamically set and unset optimizations in source code while debugging
US10331425B2 (en) Automated source code adaption to inject features between platform versions
CN106325970A (zh) 编译方法和编译***
US20110126179A1 (en) Method and System for Dynamic Patching Software Using Source Code
CN107577609B (zh) 一种基于主机端动态链接的嵌入式***动态模块调试***
CN101957766B (zh) 一种字节码织入方法、装置及***
WO2017087801A1 (en) Dynamic update of an application in compilation and deployment
EP3311265B1 (en) A computing platform and method thereof for searching, executing, and evaluating computational algorithms
Tang et al. Xdebloat: Towards automated feature-oriented app debloating
KR20130020135A (ko) 통합 개발 환경에서의 코드 동시 개발자 리스트 제공 시스템 및 방법
Bouraqadi et al. Test-driven development for generated portable Javascript apps
US10698666B2 (en) Automatically building software projects
Bilgin Mastering Cross-Platform Development with Xamarin
US9135001B2 (en) Dynamically configuring an integrated development environment
CN110334031B (zh) 内存分配代码检测方法、装置、计算机设备及存储介质
CN111880804A (zh) 应用程序代码的处理方法及装置
US20110321009A1 (en) Implementing encryption via aspect oriented programming
Lui et al. A generalized approach to real-time, non-intrusive instrumentation and monitoring of standards-based distributed middleware
Romero-Ventura et al. Polyglot programming with graalvm applied to bioinformatics for dna sequence analysis
CN101593257B (zh) 基于.Net虚拟机的软件保护***和方法
CN106095667B (zh) 一种快速定位Android敏感功能对应的驱动文件位置的方法

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
NORF Unpaid initial registration fee