KR20210037628A - 코드 재사용 처리 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램 - Google Patents

코드 재사용 처리 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20210037628A
KR20210037628A KR1020210034297A KR20210034297A KR20210037628A KR 20210037628 A KR20210037628 A KR 20210037628A KR 1020210034297 A KR1020210034297 A KR 1020210034297A KR 20210034297 A KR20210034297 A KR 20210034297A KR 20210037628 A KR20210037628 A KR 20210037628A
Authority
KR
South Korea
Prior art keywords
code
reuse
lines
library
reference information
Prior art date
Application number
KR1020210034297A
Other languages
English (en)
Other versions
KR102505002B1 (ko
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 KR20210037628A publication Critical patent/KR20210037628A/ko
Application granted granted Critical
Publication of KR102505002B1 publication Critical patent/KR102505002B1/ko

Links

Images

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
    • 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/35Creation or generation of source code model driven
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

본 발명은 컴퓨터 기술 분야 중의 소프트웨어 개발 기술에 관한, 코드 재사용 처리 방법, 장치 및 전자 기기를 공개한다. 구체적인 구현 수단은 하기와 같다. 타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하고, 타깃 요청에 응답하여, 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하며, 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 제1 코드 라이브러리는 재사용 코드 라이브러리를 제외한 코드 라이브러리이고, 제1 코드 라인수, 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하며, 참조 정보는 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타내고, 클라이언트에 참조 정보를 출력한다. 이렇게, 타깃 단위가 타깃 시간 길이 내에서 코드 재사용을 진행하여 절약 가능한 인력을 확정할 수 있어, 타깃 단위가 코드 재사용을 추진하는데 참조를 제공하고, 코드 재사용의 보급률을 향상시킨다.

Description

코드 재사용 처리 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램{CODE REUSE PROCESSING METHOD, DEVICE, ELECTRONIC EQUIPMENT, COMPUTER READABLE STORAGE MEDIUM AND COMPUTER PROGRAM}
본 발명은 컴퓨터 기술 분야 중의 소프트웨어 개발 기술에 관한 것으로, 특히 코드 재사용 처리 방법, 장치 및 전자 기기에 관한 것이다.
코드는 프로그래머가 개발 도구가 지원하는 언어를 사용하여 작성한 소스 파일이고, 문자, 심볼 또는 신호 코드 엘리먼트로, 이산 형식으로 정보를 표시하는 명확한 규칙 체계이며, 단말기 및 데스크톱 컴퓨터 등 전자 기기의 기능은 모두 코드에 의존하여 구현되어야 한다. 여기서, 코드 재사용는 소프트웨어 개발의 중요한 코드 작성 수단으로, 프로그래머의 중복 작업량을 줄이고, 소프트웨어 개발 효율을 향상시킬 수 있다. 그러나, 현재 많은 개인이나 기업 및 비영리 기업은 코드 재사용의 장점을 인식하지 못해 코드 재사용을 사용하지 않으며, 이는 코드 재사용의 보급에 불리하여, 코드 재사용의 보급률이 낮은 문제가 발생된다.
본 발명은 코드 재사용 처리방법, 장치 및 전자 기기를 제공하여, 현재 코드 재사용의 보급률이 낮은 문제를 해결한다.
제1 측면에 따르면, 본 발명은, 전자 기기에 응용되고,
타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하는 단계;
상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하는 단계 - 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리임 - ;
상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계 - 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타냄 - ; 및
상기 클라이언트에 상기 참조 정보를 출력하는 단계를 포함하는 코드 재사용 처리 방법을 제공한다.
제2 측면에 따르면, 본 발명은, 전자 기기에 응용되고,
타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하는 요청 수신 모듈;
상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하는 제1 확정 모듈 - 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리임 - ;
상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 제2 확정 모듈 - 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타냄 - ; 및
상기 클라이언트에 상기 참조 정보를 출력하는 출력 모듈; 을 포함하는 코드 재사용 처리 장치를 더 제공한다.
제3 측면에 따르면, 본 발명은, 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서와 통신 연결하는 메모리를 포함하고, 상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되며, 상기 명령이 상기 적어도 하나의 프로세서에 의해 실행되어, 상기 적어도 하나의 프로세서가 상기 제1 측면에 따른 방법을 수행할 수 있도록 하는 전자 기기를 더 제공한다.
본 발명의 제4 측면은, 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체로서, 상기 컴퓨터 명령은 상기 컴퓨터가 상기 제1 측면에 따른 방법을 수행하도록 하는, 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체를 제공한다.
본 개시에서, 타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하고, 상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하며, 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리이고, 상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하며, 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타내고, 상기 클라이언트에 상기 참조 정보를 출력한다. 이렇게, 전자 기기에 의해 타깃 단위가 타깃 시간 길이 내에서 코드 재사용을 진행하여 절약 가능한 인력을 확정하여, 타깃 단위가 코드 재사용을 추진하는데 직관적으로 참조를 제공할 수 있고, 코드 재사용의 보급률을 향상시킬 수 있다.
본 부분에서 설명되는 내용은 본 발명의 실시예의 핵심적이거나 중요한 특징을 식별하기 위한 것이 아니며, 본 발명의 범위를 제한하려는 의도도 아님을 이해해야 한다. 본 발명의 기타 특징은 하기의 명세서에 의해 쉽게 이해될 것이다.
도면은 본 수단에 대한 이해를 돕기 위한 것이고, 본 발명을 한정하기 위함이 아니다. 여기서:
도 1은 본 발명의 제1 실시예에 따른 모식도 중 하나이다.
도 2는 본 발명의 제2 실시예에 따른 모식도 1이다.
도 3은 본 발명의 제2 실시예에 따른 모식도 2이다.
도 4는 본 발명의 제2 실시예에 따른 모식도 3이다.
도 5는 본 발명의 실시예의 코드 재사용 처리 방법을 구현하는 전자 기기의 블록도이다.
아래 도면과 결부시켜 본 발명의 예시적 실시예를 설명하고, 여기에는 이해를 돕기 위한 본 발명의 실시예의 다양한 세부사항들이 포함되지만, 이들은 단지 예시적인 것으로 이해해야 한다. 따라서, 본 기술분야의 통상의 기술자는 본 발명의 범위 및 정신을 벗어나지 않는 전제 하에 여기서 설명된 실시예에 대해 다양한 변형 및 수정을 진행할 수 있음을 이해해야 한다. 마찬가지로, 명확 및 간략을 위해, 아래의 설명에서 공지 기능 및 구조에 대한 설명을 생략한다.
도 1을 참조하면, 본 발명의 실시예에서 제공하는 코드 재사용 처리 방법은 전자 기기에 응용될 수 있고, 도 1에 도시된 바와 같이, 상기 코드 재사용 처리 방법은 하기와 같은 단계를 포함한다.
단계 101: 타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신한다.
본 개시에서, 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 알아야 할 경우, 클라이언트에서 클라이언트가 전자 기기에 타깃 요청을 송신하도록 지시하는 조작을 입력할 수 있고, 클라이언트는 상기 조작에 응답하여 전자 기기에 상기 타깃 요청을 송신한다.
여기서, 타깃 유닛은 코드를 작성하는 적어도 하나의 인원을 포함하는 유닛일 수 있고, 예를 들어 상기 타깃 유닛은 기업 등일 수 있다.
이 밖에, 상기 타깃 요청은 전자 기기가 타깃 유닛이 코드 재사용을 진행하여 절약 가능한 인력을 나타내는 참조 정보를 제공하도록 지시한다.
단계 102: 상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정한다.
여기서, 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리이다.
본 개시에서, 상기 전자 기기는 상기 타깃 요청이 수신된 후, 상기 타깃 요청에 응답하여, 타깃 유닛이 타깃 단위 시간 내에 제출한 1인당 코드 라인수를 획득할 수 있고, 타깃 유닛의 재사용 코드 라이브러리를 획득할 수 있다.
여기서, 상기 제1 코드 라인수를 획득하는 단계는, 전자 기기가 타깃 유닛이 일정한 시간대에 완성하고 제출한 코드 라인수 및 제출 인원수를 획득하고, 상기 시간대의 시간 길이, 제출된 코드 라인수 및 제출 인원수에 기반하여, 상기 제1 코드 라인수를 연산하여 얻는 것일 수 있다.
예를 들어, 상기 타깃 단위 시간이 1일인 경우, 만약 전자 기기가 기업 클라이언트의 코드 제출 도구 Git의 제출 기록에 따라 기록하고, 기업의 20명의 엔지니어가 50일 내에 제출한 코드 라인수가 20000라인임을 획득하면, 상기 제1 코드 라인수는 200라인이고, 즉 상기 기업의 하루 1인당 코드 라인수는 =20000/(50×20)=200라인이다.
또는, 상기 제1 코드 라인수를 획득하는 단계는, 전자 기기가 복수 개의 타깃 단위 시간 내에 제출한 코드 라인수 및 제출 인원수를 획득하여, 복수 개의 타깃 단위 시간 내의 1인당 코드 라인수를 얻고, 복수 개의 타깃 단위 시간 내의 1인당 코드 라인수의 평균값을 상기 제1 코드 라인수로 확정하는 것일 수도 있다.
예를 들어, 상기 타깃 단위 시간이 1일인 경우, 전자 기기가 기업이 5일 연속 매일 제출한 1인당 코드 라인수가 각각 300, 250, 200, 300 및 200임을 확정하면, 상기 제1 코드 라인수는 Cd=(300+250+200+300+200)/5=250라인이다.
본 개시에서,상기 타깃 유닛의 재사용 코드 라이브러리를 확정하는 단계는, 전자 기기가 기업의 코드 라이브러리에서 제출된 코드를 저장하는 하나의 코드 라이브러리를 재사용 코드 라이브러리로 확정하는 것일 수 있고, 상기 재사용 코드 라이브러리는 기타 코드 라이브러리(즉 제1 코드 라이브러리)에 의해 의존되어 사용되는 코드 라이브러리이며, 즉 상기 재사용 코드 라이브러리 중의 일부 또는 전부 코드는 기타 코드 라이브러리에 의해 재사용된다.
여기서, 상기 제1 코드 라이브러리는 상기 타깃 유닛의 코드 라이브러리일 수 있고, 상기 타깃 유닛을 제외한 기타 유닛의 코드 라이브러리일 수도 있으며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리 사용에 의존하고, 예를 들어, 기업의 Java 코드 라이브러리가 maven등을 통해 관리에 의존하는 코드 라이브러리이면, 전자 기기는 상기 Java 코드 라이브러리를 상기 재사용 코드 라이브러리로 확정할 수 있다.
설명해야 할 것은, 타깃 유닛에 복수 개의 의존되어 사용되는 코드 라이브러리가 존재하는 경우, 전자 기기는 기설정된 규칙에 따라, 상기 복수 개의 의존되어 사용되는 코드 라이브러리에서 하나의 코드 라이브러리를 상기 재사용 코드 라이브러리로 확정할 수 있고, 예를 들어, 랜덤으로 하나의 의존되어 사용되는 코드 라이브러리를 선택하여 상기 재사용 코드 라이브러리로 할 수 있다.
일부 실시 형태에서, 상기 재사용 코드 라이브러리가 상기 제1 코드 라이브러리에 의해 의존되어 사용된 횟수는 기설정된 횟수보다 많거나 같기에, 재사용 코드 라이브러리를 선택하는 조건이 더욱 엄격하도록 함으로써, 타깃 유닛이 코드 재사용을 진행하여 절약 가능한 인력을 제공하는 참조값을 향상시킬 수 있어 더욱 참조성이 있다.
예를 들어, 상기 기설정된 횟수가 3회라고 가정하면, 기업의 코드 라이브러리 A1이 코드 라이브러리 B1, C1 및 D1에 의해 의존되어 사용되고(즉 A1이 의존되어 사용된 횟수가 3회임), 코드 라이브러리 A2가 코드 라이브러리 B2 및 D2에 의해 의존되어 사용된다면(즉 A2가 의존되어 사용된 횟수가 2회임), 전자 기기는 코드 라이브러리 A1을 상기 재사용 코드 라이브러리로 확정한다.
단계 103: 상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정한다.
여기서, 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타낸다.
본 개시에서, 전자 기기가 상기 제1 코드 라인수를 획득하고 재사용 코드 라이브러리를 확정한 후, 전자 기기는 제1 코드 라인수, 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타내는 참조 정보를 확정할 수 있다.
여기서, 재사용 코드 라이브러리에서 일반적으로 각 라인의 코드마다 모두 재사용되지 않기에, 상기 기설정된 재사용 비율을 설정하여 재사용 코드 라이브러리 중 재사용된 코드의 비율을 나타낼 수 있고, 상기 기설정된 재사용 비율은 경험에 의해 획득되는 상수일 수 있으며, 예를 들어, 파레토 원칙(즉 20%의 일부가 80%의 국면을 확정)을 참조하여 상기 기설정된 재사용 비율을 0.2로 설정할 수 있다.
이 밖에, 상기 재사용 코드 라이브러리의 코드 라인수는 재사용 코드 라이브러리의 실제 코드 라인수일 수 있고, 상기 타깃 시간 길이는 상기 타깃 시간 단위를 시간 단위로 사용한 시간 길이이다.
예를 들어, 상기 참조 정보는 재사용 코드 라이브러리의 실제 코드 라인수와 상기 기설정된 재사용 비율의 곱과, 상기 제1 코드 라인수와 상기 타깃 시간 길이의 곱 사이의 비율일 수 있다.
일부 실시 형태에서, 상기 단계 103은,
상기 재사용 코드 라이브러리의 최고 한계 코드 라인수 및 실제 코드 라인수를 획득하는 단계, 여기서, 상기 최고 한계 코드 라인수는 상기 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수에 의해 확정되고;
상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 단계를 포함할 수 있다.
여기서, 전자 기기는 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여 상기 참조 정보를 확정함으로써, 확정된 참조 정보가 더욱 정확하고 참조성을 갖도록 한다.
본 실시 형태에서, 재사용 코드 라이브러리 중의 코드는 일반 적으로 코드 작성자가 작성한 코드를 포함할 뿐만아니라, 도구에 의해 자동으로 생성된 코드도 포함하므로, 최고 한계 코드 라인수를 설정하여 재사용 코드 라이브러리 중 코드 작성자가 실제 작성한 코드의 라인수를 나타낼 수 있고, 상기 최고 한계 코드 라인수는 상기 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수에 의해 확정된다.
여기서, 상기 코드 제출 인원수 및 상기 코드 제출 횟수는, 타깃 유닛의 코드 제출 도구의 기록에 따라, 전자 기기가 확정한, 일정 시간 길이 내에 상기 재사용 코드 라이브러리로 코드를 제출한 제출 인원수와 제출 횟수일 수 있다.
이 밖에, 상기 전자 기기는 상기 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수에 기반하여, 상기 최고 한계 코드 라인수를 확정할 수 있고, 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수의 곱을 상기 최고 한계 코드 라인수로 할 수 있으며, 즉 최고 한계 코드 라인수=제1 코드 라인수*제출 인원수*코드 제출 횟수이다.
예를 들어, 전자 기기에 의해 재사용 코드 라이브러리가 구축된 후 코드의 제출 인원수가 5명이고, 코드 제출 횟수가 50회라고 획득된 경우, 상기 제1 코드 라인수가 200라인이면, 상기 재사용 코드 라이브러리의 최고 한계 코드 라인수는 50000라인이다.
설명해야 할 것은, 상기 코드 제출 횟수는 획득한 재사용 코드 라이브러리의 코드를 제출한 실제 횟수일 수 있고, 예를 들어, 2명의 코드인원이 3일 연속으로 상기 재사용 코드 라이브러리에 코드를 총 8회(예컨대 한 명이 매일 1회 제출하고; 다른 한명이 어느 날 1회 제출하고, 나머지 2일동안 매일 2회 제출함) 제출하면, 상기 코드 제출 횟수는 10회라고 확정된다.
또는, 일부 실시 형태에서, 상기 단위 시간 내에 타깃 인원이 상기 재사용 코드 라이브러리에 코드를 제출한 횟수가 여러 번인 경우, 상기 타깃 인원이 코드를 제출한 횟수는 1회이다.
여기서, 코드 작성자가 단위 시간 내에 재사용 코드 라이브러리로 코드를 여러 번 반복하여 제출할 수 있는데, 전자 기기는 이 경우 상기 타깃 인원이 코드를 1회만 제출한다고 판정하므로, 확정된 참조 정보가 더욱 정확하고 참조성을 갖도록 할 수 있다.
예를 들어, 만약 2명의 코드인원이 3일 연속으로 상기 재사용 코드 라이브러리로 코드를 총 8회(예컨대 한 명이 매일 1회 제출하고; 다른 한명이 어느 날 1회 제출하고, 나머지 2일동안 매일 2회 제출함) 제출하면, 전자 기기는 2명의 코드인원이 재사용 코드 라이브러리로 코드를 매일 평균 1회 제출한다고 확정하며, 즉 상기 코드 제출 횟수는 6회이다.
이 밖에, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 것은 기설정된 규칙을 사용할 수 있고, 제1 코드 라인수, 최고 한계 코드 라인수, 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여 참조 정보를 확정한다. 예를 들어, 상기 최고 한계 코드 라인수와 실제 코드 라인수의 평균값을 상기 단계 103 중의 재사용 코드 라이브러리의 코드 라인수로 확정할 수 있다.
일부 실시 형태에서, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 단계는,
상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 많거나 같은 경우, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 단계를 포함한다.
또는, 다른 일부 실시 형태에서, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 단계는,
상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 적은 경우, 상기 제1 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 단계를 포함한다.
여기서, 전자 기기는 재사용 코드 라이브러리에서, 최고 한계 코드 라인수와 실제 코드 라인수의 비교 결과에 따라, 최고 한계 코드 라인수 또는 실제 코드 라인수를 선택 사용하여 참조 정보를 확정할 수 있어, 참조 정보의 확정 방식이 융통성있고 정확하도록 한다.
구체적으로, 상기 타깃 단위 시간이 일(day)이라고 가정하면, 전자 기기는 하기 공식 (1)에 의하여 상기 참조 정보를 확정할 수 있다.
Figure pat00001
(1)
여기서, H는 상기 참조 정보를 나타내고,
λ는 상기 기설정된 재사용 비율을 나타내며,
Cr는 상기 재사용 코드 라이브러리의 코드 라인수를 나타내고, 즉 재사용 코드 라이브러리의 실제 코드 라인수가 최고 한계 코드 라인수보다 많거나 같을 경우, Cr는 최고 한계 코드 라인수이며; 재사용 코드 라이브러리의 실제 코드 라인수가 최고 한계 코드 라인수보다 작을 경우, Cr는 실제 코드 라인수이다.
Cd는 기업의 하루 1인당 코드 라인수를 나타내고,
D는 일 수를 나타내며(즉 타깃 시간 길이), 예를 들어, 기업이 1년동안 절약한 인력을 연산하고자 하면, D는 365이다.
일부 실시 형태에서, 상기 제1 코드 라인수 및 상기 재사용 코드 라이브러리의 코드 라인수에 기반하여, 참조 정보를 확정하는 단계 이전에,
상기 재사용 코드 라이브러리가 의존되어 사용된 횟수를 획득하는 단계를 더 포함하고,
상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계는,
상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수, 상기 재사용 코드 라이브러리가 의존되어 사용된 횟수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계를 포함한다.
여기서, 상기 참조 정보를 확정하는 과정에 재사용 코드 라이브러리가 의존되어 사용되는 횟수를 고려함으로써, 확정된 참조 정보가 더욱 정확하고 참조성을 갖도록 할 수 있다.
구체적으로, 상기 타깃 단위 시간이 일이라고 가정하면, 전자 기기는 하기 공식 (2)에 의하여 상기 참조 정보를 확정할 수 있다.
Figure pat00002
(2)
여기서, ΔE는 상기 재사용 코드 라이브러리가 의존되어 사용되는 횟수를 나타낸다.
예를 들어, 상기 재사용 코드 라이브러리 A에 10만 라인의 코드(즉 실제 코드 라인수)가 존재하고, 그 최고 한계 코드 라인수는 5만 라인이며, 상수 λ(즉 기설정된 재사용 비율)의 값이 0.2이고, 엔지니어의 하루 1인당 코드 라인수가 200라인이며, 1년 개발 일자가 365일(즉 타깃 시간 길이 D)이고, 재사용 코드 라이브러리 A가 의존되어 사용되는 횟수가 2회라고 가정하면, 기업이 연간 절약하는 인력(즉 인년)은:
Figure pat00003
이다.
즉, 기업의 엔지니어 1인당 연간 100만 위안의 비용이라고 가정하면, 코드 재사용을 거쳐 상기 회사는 연간 0.27×100만=27만 위안을 절감할 수 있다.
본 개시에서, 타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하고, 상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하며, 여기서, 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리이고, 상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하며, 여기서, 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타내고, 상기 클라이언트에 상기 참조 정보를 출력한다. 이렇게, 전자 기기에 의해 타깃 단위가 타깃 시간 길이 내에서 코드 재사용을 진행하여 절약 가능한 인력을 확정하여, 타깃 단위가 코드 재사용을 추진하는데 직관적으로 참조를 제공할 수 있고, 코드 재사용의 보급률을 향상시킬 수 있다.
도 2를 참조하면, 본 발명의 실시예는 전자 기기에 응용되는 코드 재사용 처리 장치를 제공하고, 도 2에 도시된 바와 같이, 코드 재사용 처리 장치(200)는,
타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하는 요청 수신 모듈(201);
상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하는 제1 확정 모듈(202), 여기서, 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리이고;
상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 제2 확정 모듈(203), 여기서, 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타내며; 및
상기 클라이언트에 상기 참조 정보를 출력하는 출력 모듈(204)을 포함한다.
선택 가능하게, 도 3에 도시된 바와 같이, 상기 제2 확정 모듈(203)은,
상기 재사용 코드 라이브러리의 최고 한계 코드 라인수 및 실제 코드 라인수를 획득하는 코드 라인수 획득 유닛(2031), 여기서, 상기 최고 한계 코드 라인수는 상기 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수에 의해 확정되고; 및
상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정하는 참조값 확정 유닛(2032)을 포함한다.
선택 가능하게, 상기 참조값 확정 유닛(2032)은 구체적으로,
상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 많거나 같은 경우, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정한다.
선택 가능하게, 상기 참조값 확정 유닛(2032)은 구체적으로,
상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 적은 경우, 상기 제1 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 상기 참조 정보를 확정한다.
선택 가능하게, 상기 단위 시간 내에 타깃 인원이 상기 재사용 코드 라이브러리에 코드를 제출한 횟수가 여러 번인 경우, 상기 타깃 인원이 코드를 제출한 횟수는 1회이다.
선택 가능하게, 도 4에 도시된 바와 같이, 상기 장치(200)는,
상기 재사용 코드 라이브러리가 의존되어 사용된 횟수를 획득하는 의존 횟수 획득 모듈(205)을 더 포함하고,
상기 제2 확정 모듈(203)은 구체적으로,
상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수, 상기 재사용 코드 라이브러리가 의존되어 사용된 횟수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정한다.
선택 가능하게, 상기 재사용 코드 라이브러리가 상기 제1 코드 라이브러리에 의해 의존되어 사용된 횟수는 기설정된 횟수보다 많거나 같다.
설명해야 할 것은, 코드 재사용 처리 장치(200)는 본 발명의 도 1의 방법 실시예 중 전자 기기가 구현하는 각 과정을 구현할 수 있고, 동일한 유익한 효과를 달성할 수 있으므로, 중복 설명을 피면하기 위해, 여기서 더이상 설명하지 않는다.
본 발명의 실시예에 따르면, 본 발명은 전자 기기와 판독 가능 저장 매체를 더 제공한다.
도 5에 도시된 바와 같이, 본 발명의 실시예에 따른 코드 재사용 처리 방법의 전자 기기의 블록도이다. 전자 기기는 랩톱 컴퓨터, 데스크톱 컴퓨터, 운영 플랫폼, 개인 정보 단말기, 서버, 블레이드 서버, 대형 컴퓨터, 및 다른 적합한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 의미한다. 전자 기기는 개인 디지털 처리, 셀룰러폰, 스마트폰, 웨어러블 기기 및 다른 유사한 컴퓨팅 장치와 같은 다양한 형태의 이동 장치를 의미할 수도 있다. 본문에서 나타낸 부재, 이들의 연결과 관계, 및 이들의 기능은 단지 예시적인 것으로, 본문에서 설명 및/또는 요구된 본 발명의 구현을 한정하지 않는다.
도 5에 도시된 바와 같이, 상기 전자 기기는 하나 또는 다수의 프로세서(501), 메모리(502), 및 고속 인터페이스 및 저속 인터페이스를 포함하는, 각 부재를 연결하기 위한 인터페이스를 포함한다. 각 부재는 상이한 버스를 이용하여 서로 연결되고, 공통 메인보드에 장착될 수 있거나 필요에 따라 다른 방식으로 장착될 수 있다. 프로세서는, 메모리에 저장되거나 메모리에서 외부 입력/출력 장치(예를 들어, 인터페이스에 커플링된 표시 기기)에 GUI의 그래픽 정보를 표시하는 명령을 포함하는 전자 기기 내에서 실행되는 명령을 처리할 수 있다. 다른 실시 형태에서, 필요에 따라 다수의 프로세서 및/또는 다수의 버스를 다수의 메모리와 함께 사용할 수 있다. 마찬가지로, 다수의 전자 기기를 연결할 수 있고, 각 기기는 일부 필요한 동작(예를 들어, 서버 어레이, 한 그룹의 블레이드 서버, 또는 다중프로세서 시스템)을 제공한다. 도 5에서 하나의 프로세서(501)를 예로 든다.
메모리(502)는 본 개시에서 제공되는 비일시적 컴퓨터 판독 가능 저장 매체이다. 여기서, 상기 메모리에는 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되어, 상기 적어도 하나의 프로세서가 본 개시에서 제공되는 코드 재사용 처리 방법을 수행할 수 있도록 한다. 본 발명의 비일시적 컴퓨터 판독 가능 저장 매체에는 컴퓨터 명령이 저장되고, 상기 컴퓨터 명령은 컴퓨터가 본 개시에서 제공되는 코드 재사용 처리 방법을 수행한다.
메모리(502)는 비일시적 컴퓨터 판독 가능 저장 매체로서, 비일시적 소프트웨어 프로그램, 비일시적 컴퓨터 실행 가능한 프로그램, 및 본 발명의 실시예의 코드 재사용 처리 방법에 대응되는 프로그램 명령/모듈(예를 들어, 도 2에 도시된 요청 수신 모듈(201), 제1 확정 모듈(202), 제2 확정 모듈(203) 및 출력 모듈(204))과 같은 모듈을 저장할 수 있다. 프로세서(501)는 메모리(502)에 저장된 비일시적 소프트웨어 프로그램, 명령 및 모듈을 실행함으로써, 서버의 다양한 기능 애플리케이션 및 데이터 처리를 수행하는데, 즉 상기 방법 실시예의 코드 재사용 처리 방법을 구현한다.
메모리(502)는 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있고, 여기서, 프로그램 저장 영역은 운영 체제, 적어도 하나의 기능에 필요한 응용 프로그램을 저장할 수 있으며; 데이터 저장 영역은 코드 재사용 처리에 따른 전자 기기의 사용에 따라 구축된 데이터 등을 저장할 수 있다. 이 밖에, 메모리(502)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 적어도 하나의 자기 디스크 메모리, 플래시 메모리, 또는 다른 비일시적 고체 상태 메모리와 같은 비일시적 메모리를 더 포함할 수 있다. 일부 실시예에서, 메모리(502)는 프로세서(501)에 대해 원격으로 설치된 메모리를 선택적으로 포함할 수 있고, 이러한 원격 메모리는 네트워크를 통해 코드 재사용 처리의 전자 기기에 연결될 수 있다. 상기 네트워크의 구현예로 인터넷, 인트라넷, 블록체인 네트워크, 근거리 통신망, 이동 통신망 및 이들의 조합을 포함하지만 이에 한정되지 않는다.
코드 재사용 처리 방법의 전자 기기는 입력 장치(503) 및 출력 장치(504)를 더 포함할 수 있다. 프로세서(501), 메모리(502), 입력 장치(503) 및 출력 장치(504)는 버스 또는 다른 방식을 통해 연결될 수 있고, 도 5에서 버스를 통해 연결되는 것을 예로 든다.
입력 장치(503)는 입력된 디지털 또는 문자 정보를 수신할 수 있고, 코드 재사용 처리의 전자 기기의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 발생할 수 있으며, 상기 입력 장치는 예를 들어 터치스크린, 키패드, 마우스, 트랙 패널, 터치 패널, 지시 바, 하나 또는 다수의 마우스 버튼, 트랙 볼, 조이스틱 등 입력 장치이다. 출력 장치(504)는 표시 기기, 보조 조명 장치(예를 들어, LED) 및 촉각 피드백 장치(예를 들어, 진동 모터) 등을 포함할 수 있다. 상기 표시 기기는 액정 표시 장치(LCD), 발광 다이오드(LED) 표시 장치 및 플라스마 표시 장치를 포함할 수 있지만 이에 한정되지 않는다. 일부 실시 형태에서, 표시 기기는 터치스크린일 수 있다.
여기서 설명된 시스템 및 기술의 다양한 실시 형태는 디지털 전자 회로 시스템, 집적 회로 시스템, 전용 ASIC(전용 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합에서 구현될 수 있다. 이러한 다양한 실시 형태는 하나 또는 다수의 컴퓨터 프로그램에서의 구현을 포함할 수 있고, 상기 하나 또는 다수의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능 시스템에서 실행 및/또는 해석될 수 있으며, 상기 프로그램 가능 프로세서는 전용 또는 범용 프로그램 가능 프로세서일 수 있고, 저장 시스템, 적어도 하나의 입력 장치, 및 적어도 하나의 출력 장치로부터 데이터 및 명령을 수신할 수 있으며, 데이터 및 명령을 상기 저장 시스템, 상기 적어도 하나의 입력 장치, 및 상기 적어도 하나의 출력 장치에 전송할 수 있다.
이러한 컴퓨팅 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 또는 코드라고도 함)은 프로그램 가능 프로세서의 기계 명령을 포함하고, 하이레벨 프로세스 및/또는 객체에 대한 프로그래밍 언어, 및/또는 어셈블리/기계 언어를 이용하여 이러한 컴퓨팅 프로그램을 실행할 수 있다. 본문에서 사용된 바와 같이, 용어 "기계 판독 가능 매체” 및 "컴퓨터 판독 가능 매체”는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하기 위한 임의의 컴퓨터 프로그램 제품, 기기, 및/또는 장치(예를 들어, 자기 디스크, 광 디스크, 메모리, 프로그램 가능 로직 장치(PLD))를 의미하고, 기계 판독 가능한 신호인 기계 명령을 수신하는 기계 판독 가능 매체를 포함한다. 용어 "기계 판독 가능 신호”는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하기 위한 임의의 신호를 의미한다.
사용자와의 인터랙션을 제공하기 위하여, 컴퓨터에서 여기서 설명된 시스템 및 기술을 실시할 수 있고, 상기 컴퓨터는 사용자에게 정보를 표시하기 위한 표시 장치(예를 들어, CRT(음극선관) 또는 LCD(액정 표시 장치) 모니터); 및 키보드 및 지향 장치(예를 들어, 마우스 또는 트랙 볼)를 구비하며, 사용자는 상기 키보드 및 상기 지향 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 다른 타입의 장치는 또한 사용자와의 인터랙션을 제공할 수 있는데, 예를 들어, 사용자에게 제공된 피드백은 임의의 형태의 감지 피드백(예를 들어, 시각 피드백, 청각 피드백, 또는 촉각 피드백)일 수 있고; 임의의 형태(소리 입력, 음성 입력, 또는 촉각 입력)로 사용자로부터의 입력을 수신할 수 있다.
여기서 설명된 시스템 및 기술을 백그라운드 부재를 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버), 또는 미들웨어 부재를 포함하는 컴퓨팅 시스템(예를 들어, 응용 서버), 또는 프론트 엔드 부재를 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 웹 브라우저를 구비하는 사용자 컴퓨터이고, 사용자는 상기 그래픽 사용자 인터페이스 또는 웹 브라우저를 통해 여기서 설명된 시스템 및 기술의 실시 형태와 인터랙션할 수 있음), 또는 이러한 백그라운드 부재, 미들웨어 부재, 또는 프론트 엔드 부재의 임의의 조합을 포함하는 컴퓨팅 시스템에서 실시할 수 있다. 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)을 통해 시스템의 부재를 서로 연결시킬 수 있다. 통신 네트워크의 예시로 근거리 통신망(LAN), 광역 통신망(WAN), 인터넷을 포함한다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 멀리 떨어져 있고 일반적으로 통신 네트워크를 통해 서로 인터랙션한다. 대응되는 컴퓨터에서 실행되고 또한 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램을 통해 클라이언트 및 서버의 관계를 생성한다.
위에서 설명한 다양한 형태의 프로세스, 재배열, 추가 또는 삭제 단계를 사용할 수 있음을 이해해야 한다. 예를 들어, 본 발명에 기재된 각 단계는 동시에 수행될 수 있거나 순차적으로 수행될 수 있거나 상이한 순서로 수행될 수 있고, 본 개시에서 공개된 기술적 해결수단이 이루고자 하는 결과를 구현할 수만 있으면, 본문은 여기서 한정하지 않는다.
상기 구체적인 실시 형태는 본 발명의 보호 범위를 한정하지 않는다. 본 기술분야의 통상의 기술자는 설계 요구 및 다른 요소에 따라 다양한 수정, 조합, 서브 조합 및 대체를 진행할 수 있음을 이해해야 한다. 본 발명의 정신 및 원칙 내에서 진행한 임의의 수정, 등가적 대체 및 개선 등은 모두 본 발명의 보호 범위 내에 속해야 한다.

Claims (17)

  1. 전자 기기에 응용되는 코드 재사용 처리 방법에 있어서,
    타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하는 단계;
    상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하는 단계 - 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리임 - ;
    상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계 - 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타냄 - ; 및
    상기 클라이언트에 상기 참조 정보를 출력하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계는,
    상기 재사용 코드 라이브러리의 최고 한계 코드 라인수 및 실제 코드 라인수를 획득하는 단계 - 상기 최고 한계 코드 라인수는 상기 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수에 의해 확정됨 - ; 및
    상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계는,
    상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 많거나 같은 경우, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계를 포함하는 것을 특징으로 하는 방법.
  4. 제2항에 있어서,
    상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계는,
    상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 적은 경우, 상기 제1 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제2항에 있어서,
    상기 단위 시간 내에 타깃 인원이 상기 재사용 코드 라이브러리에 코드를 제출한 횟수가 여러 번인 경우, 상기 타깃 인원이 코드를 제출한 횟수는 1회인 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 제1 코드 라인수 및 상기 재사용 코드 라이브러리의 코드 라인수에 기반하여, 참조 정보를 확정하는 단계 이전에,
    상기 재사용 코드 라이브러리가 의존되어 사용된 횟수를 획득하는 단계를 더 포함하고,
    상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계는,
    상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수, 상기 재사용 코드 라이브러리가 의존되어 사용된 횟수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 단계를 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 재사용 코드 라이브러리가 상기 제1 코드 라이브러리에 의해 의존되어 사용된 횟수는 기설정된 횟수보다 많거나 같은 것을 특징으로 하는 방법.
  8. 전자 기기에 응용되는 코드 재사용 처리 장치로서,
    타깃 유닛의 클라이언트가 송신한 타깃 요청을 수신하는 요청 수신 모듈;
    상기 타깃 요청에 응답하여, 상기 타깃 유닛의 제1 코드 라인수 및 재사용 코드 라이브러리를 확정하는 제1 확정 모듈 - 상기 제1 코드 라인수는 타깃 단위 시간 내에 제출되는 1인당 코드 라인수이고, 상기 재사용 코드 라이브러리는 제1 코드 라이브러리에 의해 의존되어 사용되는 코드 라이브러리이며, 상기 제1 코드 라이브러리는 상기 재사용 코드 라이브러리를 제외한 코드 라이브러리임 - ;
    상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 제2 확정 모듈 - 상기 참조 정보는 상기 타깃 유닛이 타깃 시간 길이 내에 코드 재사용을 진행하여 절약 가능한 인력을 나타냄 - ; 및
    상기 클라이언트에 상기 참조 정보를 출력하는 출력 모듈을 포함하는 것을 특징으로 하는 코드 재사용 처리 장치.
  9. 제8항에 있어서,
    상기 제2 확정 모듈은,
    상기 재사용 코드 라이브러리의 최고 한계 코드 라인수 및 실제 코드 라인수를 획득하는 코드 라인수 획득 유닛 - 상기 최고 한계 코드 라인수는 상기 제1 코드 라인수, 코드 제출 인원수 및 코드 제출 횟수에 의해 확정됨 - ; 및
    상기 제1 코드 라인수, 상기 최고 한계 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 참조값 확정 유닛을 포함하는 것을 특징으로 하는 코드 재사용 처리 장치.
  10. 제9항에 있어서,
    상기 참조값 확정 유닛은 구체적으로,
    상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 많거나 같은 경우, 상기 제1 코드 라인수, 상기 최고 한계 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 것을 특징으로 하는 코드 재사용 처리 장치.
  11. 제9항에 있어서,
    상기 참조값 확정 유닛은,
    상기 실제 코드 라인수가 상기 최고 한계 코드 라인수보다 적은 경우, 상기 제1 코드 라인수, 상기 실제 코드 라인수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 것을 특징으로 하는 코드 재사용 처리 장치.
  12. 제8항에 있어서,
    상기 단위 시간 내에 타깃 인원이 상기 재사용 코드 라이브러리에 코드를 제출한 횟수가 여러 번인 경우, 상기 타깃 인원이 코드를 제출한 횟수는 1회인 것을 특징으로 하는 코드 재사용 처리 장치.
  13. 제8항에 있어서,
    상기 장치는,
    상기 재사용 코드 라이브러리가 의존되어 사용된 횟수를 획득하는 의존 횟수 획득 모듈을 더 포함하고,
    상기 제2 확정 모듈은 구체적으로,
    상기 제1 코드 라인수, 상기 재사용 코드 라이브러리의 코드 라인수, 상기 재사용 코드 라이브러리가 의존되어 사용된 횟수 및 기설정된 재사용 비율에 기반하여, 참조 정보를 확정하는 것을 특징으로 하는 코드 재사용 처리 장치.
  14. 제8항에 있어서,
    상기 재사용 코드 라이브러리가 상기 제1 코드 라이브러리에 의해 의존되어 사용된 횟수는 기설정된 횟수보다 많거나 같은 것을 특징으로 하는 코드 재사용 처리 장치.
  15. 전자 기기로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 통신 연결하는 메모리를 포함하고,
    상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되며, 상기 명령이 상기 적어도 하나의 프로세서에 의해 실행되어, 상기 적어도 하나의 프로세서가 제1항 내지 제7항 중 어느 한 항에 따른 방법을 수행할 수 있도록 하는 것을 특징으로 하는 전자 기기.
  16. 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체로서,
    상기 컴퓨터 명령은 상기 컴퓨터가 제1항 내지 제7항 중 어느 한 항에 따른 방법을 수행하도록 하는 것을 특징으로 하는 컴퓨터 명령이 저장된 비일시적 컴퓨터 판독 가능 저장 매체.
  17. 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램 중의 명령은 프로세서에 의해 실행될 경우, 청구항 제1항 내지 제7항 중 어느 한 항에 따른 방법을 구현하는 것을 특징으로 하는 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램.
KR1020210034297A 2020-05-07 2021-03-16 코드 재사용 처리 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램 KR102505002B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010379625.9 2020-05-07
CN202010379625.9A CN111596897B (zh) 2020-05-07 2020-05-07 代码复用的处理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
KR20210037628A true KR20210037628A (ko) 2021-04-06
KR102505002B1 KR102505002B1 (ko) 2023-03-02

Family

ID=72191044

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210034297A KR102505002B1 (ko) 2020-05-07 2021-03-16 코드 재사용 처리 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램

Country Status (4)

Country Link
US (1) US11520567B2 (ko)
JP (1) JP7135142B2 (ko)
KR (1) KR102505002B1 (ko)
CN (1) CN111596897B (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230393847A1 (en) * 2022-06-01 2023-12-07 At&T Intellectual Property I, L.P. Quantifying software code reuse

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070105167A (ko) * 2006-04-25 2007-10-30 삼성전자주식회사 임베디드 소프트웨어의 재사용율 측정 장치 및 방법
KR20170023022A (ko) * 2014-06-30 2017-03-02 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 코드 추천 기법
KR101780233B1 (ko) * 2016-04-26 2017-09-21 고려대학교 산학협력단 소프트웨어의 코드 클론 탐지 장치 및 방법
KR102104322B1 (ko) * 2018-12-13 2020-04-24 한화시스템 주식회사 소프트웨어 재사용을 위한 소스코드 비교 방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3905086B2 (ja) * 2002-02-18 2007-04-18 独立行政法人科学技術振興機構 ソフトウェア部品の重要性評価システム
JP2004206586A (ja) * 2002-12-26 2004-07-22 Toshiba Corp ソフトウェア部品流通支援方法、その方法を実現するためのソフトウェア部品流通支援システムおよびプログラム
GB0623525D0 (en) * 2006-11-25 2007-01-03 Ibm An apparatus and method for determining the reuse value of a service component
JP2010026669A (ja) * 2008-07-17 2010-02-04 Hitachi Ltd アプリケーション改造プロジェクト用工数見積もりシステムおよびその方法
US8479145B2 (en) * 2008-08-29 2013-07-02 Infosys Limited Method and system for determining a reuse factor
US9612831B2 (en) * 2010-11-23 2017-04-04 Virtusa Corporation System and method to measure and incentivize software reuse
US9268805B2 (en) * 2013-09-10 2016-02-23 International Business Machines Corporation Managing reusable artifacts using placeholders
US9864582B2 (en) * 2014-11-14 2018-01-09 Cavium, Inc. Code processor to build orthogonal execution blocks for programmable network devices
US11200031B2 (en) * 2017-07-06 2021-12-14 Mastercontrol Inc. Interface for building and updating processing modules in a manufacturing environment
CN108170427A (zh) * 2017-12-19 2018-06-15 中山大学 一种基于测试的网页构件抽取与复用方法
CN109345263A (zh) * 2018-08-02 2019-02-15 北京天元创新科技有限公司 预测客户满意度的方法和系统
CN109582301B (zh) * 2018-12-03 2022-01-28 深圳前海微众银行股份有限公司 基于任务调度系统的业务处理方法、装置、设备及介质
CN109840086A (zh) 2018-12-14 2019-06-04 深圳壹账通智能科技有限公司 程序代码获取方法及装置、计算机装置、及可读存储介质
CN110083749A (zh) 2019-04-11 2019-08-02 艾伯资讯(深圳)有限公司 用于软件快速开发的检索、复用、环境搭建的系统及方法
CN110554860B (zh) * 2019-06-27 2021-03-12 北京大学 一种软件项目自然语言编程接口nli的构造方法及代码生成方法
CN110286938B (zh) * 2019-07-03 2023-03-31 北京百度网讯科技有限公司 用于输出针对用户的评价信息的方法和装置
CN110413264A (zh) * 2019-07-30 2019-11-05 南京市晨枭软件技术有限公司 一种软件应用架构及其配置单元
CN110554868B (zh) * 2019-09-11 2020-07-31 北京航空航天大学 一种软件复用代码检测方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070105167A (ko) * 2006-04-25 2007-10-30 삼성전자주식회사 임베디드 소프트웨어의 재사용율 측정 장치 및 방법
KR20170023022A (ko) * 2014-06-30 2017-03-02 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 코드 추천 기법
KR101780233B1 (ko) * 2016-04-26 2017-09-21 고려대학교 산학협력단 소프트웨어의 코드 클론 탐지 장치 및 방법
KR102104322B1 (ko) * 2018-12-13 2020-04-24 한화시스템 주식회사 소프트웨어 재사용을 위한 소스코드 비교 방법

Also Published As

Publication number Publication date
JP2021103544A (ja) 2021-07-15
US20210200518A1 (en) 2021-07-01
KR102505002B1 (ko) 2023-03-02
CN111596897B (zh) 2023-04-28
US11520567B2 (en) 2022-12-06
CN111596897A (zh) 2020-08-28
JP7135142B2 (ja) 2022-09-12

Similar Documents

Publication Publication Date Title
CN110704398B (zh) 从MySQL到Oracle的数据库迁移方法、装置及计算机设备
EP4006731B1 (en) Method, apparatus, device, storage medium and computer program product for testing code
KR20210040332A (ko) 애플리케이션 구축 방법, 장치, 전자기기, 저장매체 및 컴퓨터 프로그램
CN111061868A (zh) 读法预测模型获取及读法预测方法、装置及存储介质
JP7200277B2 (ja) ワードスロットを識別するための方法及び装置、電子機器、記憶媒体並びにコンピュータプログラム
CN106164867A (zh) 数据的增量并行处理
CN110661665B (zh) 基于物联网云平台的告警方法、计算机存储介质及设备
JP2021099798A (ja) 構造化処理方法、装置、コンピュータ機器及び媒体
EP4145298A1 (en) Method and apparatus for snapshotting metadata
US10318621B2 (en) Collating and intelligently sequencing installation documentation
CN112860356A (zh) 一种api调用控制方法、装置、电子设备和存储介质
CN110752968A (zh) 性能基准测试方法、装置、电子设备及存储介质
KR20210037628A (ko) 코드 재사용 처리 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램
CN114358742A (zh) 一种工作流执行方法、装置、设备及存储介质
EP3822813A1 (en) Similarity processing method, apparatus, server and storage medium
US20210382918A1 (en) Method and apparatus for labeling data
CN113254405A (zh) 文件转换方法、装置、设备和介质
CN114217798A (zh) 数据库表单界面的代码生成方法和装置
CN114417070A (zh) 数据权限的收敛方法、装置、设备以及存储介质
CN111399806B (zh) 一种组件管理方法、装置、电子设备及存储介质
CN113296772A (zh) 页面配置方法、装置、计算机设备及可读存储介质
CN113377638B (zh) 性能测试工具的生成方法和装置
CN114036313B (zh) 一种族谱展示方法、装置及电子设备
US20220198301A1 (en) Method and apparatus for update processing of question answering system
US20160092824A1 (en) System and method for case management information entry

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right